From 2517aad44c243183a5fc02def0804a6bad36475a Mon Sep 17 00:00:00 2001 From: speakeasybot Date: Fri, 23 Oct 2026 18:02:54 +0000 Subject: [PATCH 1/2] =?UTF-8?q?##=20Go=20SDK=20Changes:=20*=20`OpenRouter.?= =?UTF-8?q?Interns.ListInterns()`:=20**Removed**=20(Breaking=20=E2=9A=A0?= =?UTF-8?q?=EF=B8=8F)=20*=20`OpenRouter.Interns.CreateIntern()`:=20**Remov?= =?UTF-8?q?ed**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Intern?= =?UTF-8?q?s.DeleteIntern()`:=20**Removed**=20(Breaking=20=E2=9A=A0?= =?UTF-8?q?=EF=B8=8F)=20*=20`OpenRouter.Interns.GetIntern()`:=20**Removed*?= =?UTF-8?q?*=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Interns.U?= =?UTF-8?q?pdateIntern()`:=20**Removed**=20(Breaking=20=E2=9A=A0=EF=B8=8F)?= =?UTF-8?q?=20*=20`OpenRouter.Interns.GetInternConnections()`:=20**Removed?= =?UTF-8?q?**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Interns.?= =?UTF-8?q?GetInternDaemon()`:=20**Removed**=20(Breaking=20=E2=9A=A0?= =?UTF-8?q?=EF=B8=8F)=20*=20`OpenRouter.Interns.GetInternDaemonAccess()`:?= =?UTF-8?q?=20**Removed**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRou?= =?UTF-8?q?ter.Interns.SignInternDaemonAccessRequest()`:=20**Removed**=20(?= =?UTF-8?q?Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Interns.SignIn?= =?UTF-8?q?ternDaemonRequest()`:=20**Removed**=20(Breaking=20=E2=9A=A0?= =?UTF-8?q?=EF=B8=8F)=20*=20`OpenRouter.Interns.GetInternIcon()`:=20**Remo?= =?UTF-8?q?ved**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Inter?= =?UTF-8?q?ns.ProvisionIntern()`:=20**Removed**=20(Breaking=20=E2=9A=A0?= =?UTF-8?q?=EF=B8=8F)=20*=20`OpenRouter.Interns.SuspendIntern()`:=20**Remo?= =?UTF-8?q?ved**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*=20`OpenRouter.Inter?= =?UTF-8?q?ns.Chat()`:=20**Removed**=20(Breaking=20=E2=9A=A0=EF=B8=8F)=20*?= =?UTF-8?q?=20`OpenRouter.Interns.Invoke()`:=20**Removed**=20(Breaking=20?= =?UTF-8?q?=E2=9A=A0=EF=B8=8F)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .speakeasy/gen.lock | 640 +- .speakeasy/gen.yaml | 2 +- .speakeasy/out.openapi.yaml | 17932 +++++++--------- .speakeasy/workflow.lock | 10 +- README.md | 18 - RELEASES.md | 12 +- chat.go | 14 - docs/models/components/aabenchmarkentry.mdx | 6 +- docs/models/components/account.mdx | 12 - docs/models/components/activityitem.mdx | 26 +- docs/models/components/activityresponse.mdx | 2 +- .../models/components/additionaltoolsitem.mdx | 8 +- .../components/additionaltoolsitemtool.mdx | 4 +- .../additionaltoolsitemtoolfunction.mdx | 18 +- docs/models/components/advisorreasoning.mdx | 4 +- .../components/advisorservertoolconfig.mdx | 16 +- .../advisorservertoolopenrouter.mdx | 4 +- docs/models/components/agent.mdx | 4 +- docs/models/components/agentmessageitem.mdx | 14 +- .../agentmessageitemcontentinputimage.mdx | 8 +- docs/models/components/alignment.mdx | 2 +- .../components/alignmentallowedcallrecord.mdx | 6 +- .../components/alignmentblockedcallrecord.mdx | 6 +- docs/models/components/alignmentchataudio.mdx | 4 +- docs/models/components/alignmentchatimage.mdx | 4 +- .../components/alignmentchatimageimageurl.mdx | 2 +- .../components/alignmentchatrejected.mdx | 12 +- .../components/alignmentchattoolcall.mdx | 6 +- .../alignmentchattoolcallfunction.mdx | 4 +- docs/models/components/alignmentplugin.mdx | 12 +- docs/models/components/alignmentrule.mdx | 4 +- .../models/components/alignmentrulerecord.mdx | 6 +- .../alignmentunavailablecallrecord.mdx | 6 +- docs/models/components/allowedtools.mdx | 4 +- docs/models/components/always.mdx | 2 +- .../components/annotationaddedevent.mdx | 14 +- docs/models/components/annotationfile.mdx | 4 +- .../components/annotationurlcitation.mdx | 4 +- .../annotationwebsearchcitation.mdx | 4 +- .../anthropicadvisormessageusageiteration.mdx | 14 +- .../components/anthropicadvisortoolresult.mdx | 6 +- .../components/anthropicbase64imagesource.mdx | 6 +- .../components/anthropicbase64pdfsource.mdx | 6 +- .../anthropicbashcodeexecutionoutput.mdx | 4 +- .../anthropicbashcodeexecutionresult.mdx | 10 +- .../anthropicbashcodeexecutiontoolresult.mdx | 6 +- ...hropicbashcodeexecutiontoolresulterror.mdx | 4 +- .../anthropiccachecontroldirective.mdx | 4 +- .../components/anthropiccachecreation.mdx | 4 +- .../anthropiccitationcharlocation.mdx | 14 +- .../anthropiccitationcharlocationparam.mdx | 12 +- .../anthropiccitationcontentblocklocation.mdx | 14 +- ...ropiccitationcontentblocklocationparam.mdx | 12 +- .../anthropiccitationpagelocation.mdx | 14 +- .../anthropiccitationpagelocationparam.mdx | 12 +- .../components/anthropiccitationsconfig.mdx | 2 +- .../anthropiccitationsearchresultlocation.mdx | 14 +- ...ropiccitationsearchresultlocationparam.mdx | 14 +- ...thropiccitationwebsearchresultlocation.mdx | 10 +- ...iccitationwebsearchresultlocationparam.mdx | 10 +- .../anthropiccodeexecution20250825caller.mdx | 4 +- .../anthropiccodeexecution20260120caller.mdx | 4 +- .../anthropiccodeexecutionoutput.mdx | 4 +- .../anthropiccodeexecutionresult.mdx | 10 +- .../anthropiccodeexecutiontoolresult.mdx | 6 +- .../anthropiccodeexecutiontoolresulterror.mdx | 4 +- .../components/anthropiccompactionblock.mdx | 6 +- .../anthropiccompactionusageiteration.mdx | 12 +- docs/models/components/anthropiccontainer.mdx | 6 +- .../components/anthropiccontainerskill.mdx | 6 +- .../components/anthropiccontainerupload.mdx | 4 +- .../components/anthropicdirectcaller.mdx | 2 +- .../components/anthropicdocumentblock.mdx | 8 +- .../anthropicdocumentblockparam.mdx | 12 +- .../anthropicdocumentblockparamcitations.mdx | 2 +- .../anthropicencryptedcodeexecutionresult.mdx | 10 +- docs/models/components/anthropicfile.mdx | 16 +- .../components/anthropicfiledeleted.mdx | 6 +- .../anthropicfiledocumentsource.mdx | 4 +- docs/models/components/anthropicfilelist.mdx | 10 +- .../components/anthropicimageblockparam.mdx | 6 +- .../anthropicinputtokensclearatleast.mdx | 4 +- .../anthropicinputtokenstrigger.mdx | 4 +- .../anthropicinputtransformation.mdx | 8 +- .../anthropiciterationcachecreation.mdx | 4 +- .../anthropicmessageoutputconfig.mdx | 2 +- .../anthropicmessageusageiteration.mdx | 14 +- .../anthropicoutputtokensdetails.mdx | 2 +- .../components/anthropicplaintextsource.mdx | 6 +- .../anthropicredactedthinkingblock.mdx | 4 +- .../anthropicrefusalstopdetails.mdx | 6 +- docs/models/components/anthropicsafeguard.mdx | 6 +- .../anthropicsearchresultblockparam.mdx | 12 +- ...thropicsearchresultblockparamcitations.mdx | 2 +- .../components/anthropicservertoolusage.mdx | 4 +- docs/models/components/anthropictextblock.mdx | 6 +- .../components/anthropictextblockparam.mdx | 8 +- ...pictexteditorcodeexecutioncreateresult.mdx | 4 +- ...exteditorcodeexecutionstrreplaceresult.mdx | 12 +- ...ropictexteditorcodeexecutiontoolresult.mdx | 6 +- ...texteditorcodeexecutiontoolresulterror.mdx | 6 +- ...ropictexteditorcodeexecutionviewresult.mdx | 12 +- .../components/anthropicthinkingblock.mdx | 6 +- .../anthropicthinkingblockbinding.mdx | 4 +- .../components/anthropicthinkingturns.mdx | 4 +- .../components/anthropictoolreference.mdx | 4 +- .../components/anthropictoolsearchresult.mdx | 4 +- .../anthropictoolsearchresulterror.mdx | 6 +- .../anthropictoolsearchtoolbm25.mdx | 12 +- .../anthropictoolsearchtoolregex.mdx | 12 +- .../anthropictoolsearchtoolresult.mdx | 6 +- .../components/anthropictooluseblock.mdx | 10 +- .../components/anthropictooluseskeep.mdx | 4 +- .../components/anthropictoolusestrigger.mdx | 4 +- .../anthropicunknownusageiteration.mdx | 12 +- .../components/anthropicurlimagesource.mdx | 4 +- .../components/anthropicurlpdfsource.mdx | 4 +- .../components/anthropicwebfetchblock.mdx | 8 +- .../anthropicwebfetchtoolresult.mdx | 8 +- .../anthropicwebfetchtoolresulterror.mdx | 4 +- .../components/anthropicwebsearchresult.mdx | 10 +- .../anthropicwebsearchresultblockparam.mdx | 10 +- .../anthropicwebsearchtoolresult.mdx | 8 +- .../anthropicwebsearchtoolresulterror.mdx | 4 +- .../anthropicwebsearchtooluserlocation.mdx | 10 +- docs/models/components/applypatchcallitem.mdx | 10 +- .../applypatchcalloperationdiffdeltaevent.mdx | 10 +- .../applypatchcalloperationdiffdoneevent.mdx | 10 +- .../components/applypatchcalloutputitem.mdx | 10 +- .../applypatchcreatefileoperation.mdx | 6 +- .../applypatchdeletefileoperation.mdx | 4 +- .../components/applypatchservertool.mdx | 2 +- .../components/applypatchservertoolconfig.mdx | 2 +- .../applypatchservertoolopenrouter.mdx | 4 +- .../applypatchupdatefileoperation.mdx | 6 +- docs/models/components/apprankingsitem.mdx | 10 +- .../models/components/apprankingsresponse.mdx | 4 +- docs/models/components/architecture.mdx | 10 +- docs/models/components/armorautomode.mdx | 8 +- docs/models/components/armorcontext.mdx | 6 +- .../components/armorenvironmententry.mdx | 4 +- docs/models/components/armorplugin.mdx | 16 +- docs/models/components/armorrule.mdx | 8 +- .../components/armorsafeguardresult.mdx | 4 +- .../components/armorsafeguardresultstatus.mdx | 4 +- docs/models/components/audiourl.mdx | 2 +- .../components/autobetarouterplugin.mdx | 12 +- docs/models/components/autorouterplugin.mdx | 14 +- .../badgatewayresponseerrordata.mdx | 6 +- .../badrequestresponseerrordata.mdx | 6 +- docs/models/components/baseinputsmessage.mdx | 8 +- .../models/components/basereasoningconfig.mdx | 8 +- docs/models/components/bashservertool.mdx | 4 +- .../components/bashservertoolconfig.mdx | 4 +- docs/models/components/batchdeletedobject.mdx | 6 +- .../components/batchdeletiontargets.mdx | 4 +- .../components/batcherrorresponseerror.mdx | 4 +- docs/models/components/batchlistitem.mdx | 28 +- .../batchlistitemcompletiontokensdetails.mdx | 6 +- docs/models/components/batchlistitemerror.mdx | 2 +- .../batchlistitemprompttokensdetails.mdx | 10 +- .../components/batchlistitemrequestcounts.mdx | 6 +- .../components/batchlistitemservertooluse.mdx | 6 +- docs/models/components/batchlistitemusage.mdx | 26 +- docs/models/components/batchlistresponse.mdx | 10 +- docs/models/components/batchobject.mdx | 28 +- .../batchobjectcompletiontokensdetails.mdx | 6 +- docs/models/components/batchobjectdata.mdx | 6 +- docs/models/components/batchobjectdebug.mdx | 6 +- docs/models/components/batchobjecterror.mdx | 2 +- docs/models/components/batchobjectfile.mdx | 6 +- .../models/components/batchobjectfunction.mdx | 4 +- .../models/components/batchobjectimageurl.mdx | 2 +- .../batchobjectprompttokensdetails.mdx | 10 +- .../components/batchobjectrequestcounts.mdx | 6 +- .../models/components/batchobjectresponse.mdx | 6 +- .../components/batchobjectservertooluse.mdx | 6 +- .../batchobjectservertoolusedetails.mdx | 6 +- docs/models/components/batchobjecttimings.mdx | 6 +- .../components/batchobjecturlcitation.mdx | 10 +- docs/models/components/batchobjectusage.mdx | 26 +- ...equiredresponsecompletiontokensdetails.mdx | 6 +- .../batchpaymentrequiredresponseerror.mdx | 4 +- ...entrequiredresponseprompttokensdetails.mdx | 10 +- ...chpaymentrequiredresponserequestcounts.mdx | 6 +- ...chpaymentrequiredresponseservertooluse.mdx | 6 +- .../batchpaymentrequiredresponseusage.mdx | 26 +- .../components/batchproviderpreferences.mdx | 4 +- docs/models/components/batchsubmitbody.mdx | 12 +- docs/models/components/bodychatcompletion.mdx | 26 +- .../bodycompletiontokensdetails.mdx | 6 +- docs/models/components/bodylist.mdx | 10 +- docs/models/components/bodymessage.mdx | 22 +- .../components/bodyprompttokensdetails1.mdx | 10 +- .../components/bodyprompttokensdetails2.mdx | 10 +- docs/models/components/bodyservertooluse.mdx | 6 +- docs/models/components/bodyusage1.mdx | 14 +- docs/models/components/bodyusage2.mdx | 22 +- docs/models/components/bodyusage3.mdx | 12 +- docs/models/components/booleancapability.mdx | 2 +- docs/models/components/box.mdx | 8 +- .../bulkaddworkspacemembersrequest.mdx | 2 +- .../bulkaddworkspacemembersresponse.mdx | 4 +- .../components/bulkassignkeysrequest.mdx | 2 +- .../components/bulkassignkeysresponse.mdx | 2 +- .../components/bulkassignmembersrequest.mdx | 2 +- .../components/bulkassignmembersresponse.mdx | 2 +- .../bulkremoveworkspacemembersrequest.mdx | 2 +- .../bulkremoveworkspacemembersresponse.mdx | 2 +- .../components/bulkunassignkeysrequest.mdx | 2 +- .../components/bulkunassignkeysresponse.mdx | 2 +- .../components/bulkunassignmembersrequest.mdx | 2 +- .../bulkunassignmembersresponse.mdx | 2 +- docs/models/components/byokkey.mdx | 32 +- .../models/components/chatassistantimages.mdx | 2 +- .../chatassistantimagesimageurl.mdx | 2 +- .../components/chatassistantmessage.mdx | 20 +- docs/models/components/chataudiooutput.mdx | 8 +- docs/models/components/chatchoice.mdx | 8 +- docs/models/components/chatcontentaudio.mdx | 4 +- .../components/chatcontentaudioinputaudio.mdx | 4 +- .../components/chatcontentcachecontrol.mdx | 4 +- docs/models/components/chatcontentfile.mdx | 4 +- .../models/components/chatcontentfilefile.mdx | 6 +- docs/models/components/chatcontentimage.mdx | 4 +- .../components/chatcontentimageimageurl.mdx | 4 +- docs/models/components/chatcontenttext.mdx | 8 +- docs/models/components/chatcontentvideo.mdx | 4 +- .../components/chatcontentvideoinput.mdx | 4 +- docs/models/components/chatdebugoptions.mdx | 2 +- .../components/chatdevelopermessage.mdx | 8 +- ...hatdevelopermessageconfigurationupdate.mdx | 2 +- .../components/chatdynamicservertool.mdx | 4 +- .../components/chatformatgrammarconfig.mdx | 4 +- .../components/chatformatjsonobjectconfig.mdx | 2 +- .../components/chatformatjsonschemaconfig.mdx | 4 +- .../components/chatformatpythonconfig.mdx | 2 +- .../components/chatformattextconfig.mdx | 2 +- .../components/chatfunctiontoolfunction.mdx | 8 +- .../chatfunctiontoolfunctionfunction.mdx | 10 +- .../components/chatjsonschemaconfig.mdx | 8 +- .../models/components/chatnamedtoolchoice.mdx | 4 +- .../chatnamedtoolchoicefunction.mdx | 2 +- docs/models/components/chatrequest.mdx | 84 +- .../components/chatrequestreasoning.mdx | 4 +- docs/models/components/chatresult.mdx | 22 +- .../components/chatsearchmodelsservertool.mdx | 4 +- .../components/chatservertoolchoice.mdx | 2 +- docs/models/components/chatstreamchoice.mdx | 8 +- docs/models/components/chatstreamchunk.mdx | 24 +- .../components/chatstreamchunkerror.mdx | 6 +- .../components/chatstreamchunkmetadata.mdx | 4 +- docs/models/components/chatstreamdelta.mdx | 14 +- .../components/chatstreamingresponse.mdx | 2 +- docs/models/components/chatstreamoptions.mdx | 2 +- docs/models/components/chatstreamtoolcall.mdx | 8 +- .../components/chatstreamtoolcallfunction.mdx | 4 +- docs/models/components/chatsystemmessage.mdx | 8 +- .../chatsystemmessageconfigurationupdate.mdx | 2 +- docs/models/components/chattokenlogprob.mdx | 8 +- docs/models/components/chattokenlogprobs.mdx | 4 +- .../components/chattokenlogprobtoplogprob.mdx | 6 +- docs/models/components/chattoolcall.mdx | 6 +- .../components/chattoolcallfunction.mdx | 4 +- docs/models/components/chattoolmessage.mdx | 6 +- docs/models/components/chatusage.mdx | 18 +- .../chatusagecompletiontokensdetails.mdx | 8 +- .../chatusageprompttokensdetails.mdx | 8 +- docs/models/components/chatusermessage.mdx | 6 +- .../components/chatwebsearchshorthand.mdx | 26 +- docs/models/components/choice.mdx | 10 +- .../clientclosedrequestresponseerrordata.mdx | 6 +- docs/models/components/code.mdx | 30 - .../codeinterpretercallcodedeltaevent.mdx | 10 +- .../codeinterpretercallcodedoneevent.mdx | 10 +- .../codeinterpretercallcompletedevent.mdx | 8 +- .../codeinterpretercallinprogressevent.mdx | 8 +- .../codeinterpretercallinterpretingevent.mdx | 8 +- .../components/codeinterpreterfileoutput.mdx | 20 +- .../components/codeinterpreterimageoutput.mdx | 4 +- .../components/codeinterpreterlogsoutput.mdx | 4 +- .../components/codeinterpreterservertool.mdx | 4 +- .../models/components/codexlocalshelltool.mdx | 2 +- docs/models/components/compactionitem.mdx | 8 +- docs/models/components/compoundfilter.mdx | 4 +- .../components/computeruseservertool.mdx | 8 +- .../components/configurationupdateitem.mdx | 6 +- .../configurationupdatereasoning.mdx | 2 +- .../components/conflictresponseerrordata.mdx | 6 +- docs/models/components/containerauto.mdx | 6 +- .../components/containerautoenvironment.mdx | 6 +- docs/models/components/containerfile.mdx | 14 +- .../components/containerfilelistresponse.mdx | 10 +- .../containernetworkpolicyallowlist.mdx | 4 +- .../containernetworkpolicydisabled.mdx | 2 +- .../containerreferenceenvironment.mdx | 8 +- docs/models/components/contentcompaction.mdx | 8 +- .../components/contentencryptedcontent.mdx | 6 +- .../components/contentfilterbuiltinentry.mdx | 8 +- .../contentfilterbuiltinentryinput.mdx | 8 +- docs/models/components/contentfilterentry.mdx | 6 +- docs/models/components/contentimageurl.mdx | 4 +- .../components/contentimageurlimageurl.mdx | 2 +- .../components/contentpartaddedevent.mdx | 12 +- docs/models/components/contentpartaudio.mdx | 4 +- .../components/contentpartdoneevent.mdx | 12 +- docs/models/components/contentpartimage.mdx | 4 +- .../components/contentpartimageimageurl.mdx | 2 +- .../components/contentpartinputaudio.mdx | 4 +- .../components/contentpartinputfile.mdx | 4 +- .../components/contentpartinputvideo.mdx | 4 +- docs/models/components/contentpartvideo.mdx | 4 +- .../components/contentredactedthinking.mdx | 4 +- .../components/contentservertooluse.mdx | 10 +- docs/models/components/contenttext.mdx | 4 +- docs/models/components/contentthinking.mdx | 6 +- .../components/contenttoolreference.mdx | 4 +- docs/models/components/contenttoolresult.mdx | 10 +- docs/models/components/contenttooluse.mdx | 10 +- docs/models/components/contenttoplogprob.mdx | 6 +- .../components/contentwebsearchtoolresult.mdx | 8 +- .../contentwebsearchtoolresulterror.mdx | 4 +- .../components/contextcompactionitem.mdx | 8 +- .../components/contextcompressionplugin.mdx | 6 +- docs/models/components/contextmanagement.mdx | 2 +- docs/models/components/contradiction.mdx | 4 +- docs/models/components/costdetails.mdx | 8 +- .../components/createbyokkeyrequest.mdx | 26 +- .../components/createbyokkeyresponse.mdx | 2 +- .../components/createexternaluserrequest.mdx | 2 +- .../components/createguardrailrequest.mdx | 48 +- .../components/createguardrailresponse.mdx | 2 +- .../models/components/createinternrequest.mdx | 17 - .../createobservabilitydestinationrequest.mdx | 28 +- ...createobservabilitydestinationresponse.mdx | 2 +- .../createpresetfrominferenceresponse.mdx | 2 +- .../createprivateendpointrequest.mdx | 16 +- ...teendpointvalidationfailedresponsedata.mdx | 4 +- ...eendpointvalidationfailedresponseerror.mdx | 4 +- .../createscimgroupmappingrequest.mdx | 6 +- .../createscimgroupmappingresponse.mdx | 2 +- .../components/createscimsyncjobresponse.mdx | 2 +- .../components/createworkspacerequest.mdx | 24 +- .../components/createworkspaceresponse.mdx | 2 +- docs/models/components/customtool.mdx | 12 +- .../customtoolcallinputdeltaevent.mdx | 10 +- .../customtoolcallinputdoneevent.mdx | 10 +- docs/models/components/customtoolcallitem.mdx | 16 +- .../components/customtoolcalloutputitem.mdx | 8 +- ...stomtoolcalloutputitemoutputinputimage.mdx | 8 +- docs/models/components/dabenchmarkentry.mdx | 10 +- docs/models/components/datetimeservertool.mdx | 4 +- .../components/datetimeservertoolconfig.mdx | 2 +- docs/models/components/debugevent.mdx | 6 +- docs/models/components/debugeventdebug.mdx | 4 +- docs/models/components/debugeventtimings.mdx | 6 +- docs/models/components/decisions.mdx | 6 +- docs/models/components/decisionsboxanswer.mdx | 6 +- .../components/decisionsboxquestion.mdx | 4 +- .../components/decisionschoiceanswer.mdx | 8 +- .../components/decisionschoicequestion.mdx | 6 +- .../models/components/decisionsnoulanswer.mdx | 4 +- .../components/decisionsnoulquestion.mdx | 6 +- .../decisionsnoulquestioncriteria.mdx | 4 +- docs/models/components/decisionsrequest.mdx | 14 +- docs/models/components/decisionsresponse.mdx | 10 +- .../components/decisionsresponseusage.mdx | 6 +- .../components/decisionsscoreanswer.mdx | 10 +- .../components/decisionsscorequestion.mdx | 6 +- docs/models/components/defaultparameters.mdx | 12 +- docs/models/components/deferredbm25search.mdx | 4 +- .../components/deferredcustomsearch.mdx | 8 +- .../models/components/deferredregexsearch.mdx | 4 +- .../components/deferredtoolscontrol.mdx | 8 +- .../components/deletebyokkeyresponse.mdx | 2 +- .../components/deleteguardrailresponse.mdx | 2 +- .../models/components/deleteinternrequest.mdx | 12 - .../components/deleteinternresponse.mdx | 9 - ...deleteobservabilitydestinationresponse.mdx | 2 +- .../deleteprivateendpointresponse.mdx | 2 +- .../deleteprivateendpointresponsedata.mdx | 2 +- .../deletescimgroupmappingresponse.mdx | 2 +- .../deleteworkspacebudgetresponse.mdx | 2 +- .../components/deleteworkspaceresponse.mdx | 2 +- docs/models/components/easyinputmessage.mdx | 8 +- .../easyinputmessagecontentinputimage.mdx | 8 +- .../edgenetworktimeoutresponseerrordata.mdx | 6 +- .../components/editclearthinking20251015.mdx | 4 +- .../components/editcleartooluses20250919.mdx | 12 +- .../models/components/editcompact20260112.mdx | 8 +- docs/models/components/embeddings.mdx | 6 +- docs/models/components/endpointinfo.mdx | 6 +- docs/models/components/endpointsmetadata.mdx | 4 +- docs/models/components/enumcapability.mdx | 4 +- docs/models/components/errorevent.mdx | 10 +- docs/models/components/externaluser.mdx | 8 +- .../components/externaluserresponse.mdx | 2 +- docs/models/components/failedmodel.mdx | 6 +- docs/models/components/filecitation.mdx | 8 +- docs/models/components/fileparserplugin.mdx | 6 +- docs/models/components/filepath.mdx | 6 +- .../components/filesearchservertool.mdx | 10 +- docs/models/components/filesservertool.mdx | 4 +- docs/models/components/filters.mdx | 6 +- .../components/forbiddenresponseerrordata.mdx | 6 +- docs/models/components/formatgrammar.mdx | 6 +- .../components/formatjsonobjectconfig.mdx | 2 +- .../components/formatjsonschemaconfig.mdx | 10 +- docs/models/components/formattext.mdx | 2 +- docs/models/components/formattextconfig.mdx | 2 +- docs/models/components/frameimage.mdx | 6 +- docs/models/components/frameimageimageurl.mdx | 2 +- .../components/freemodeldailyrequests.mdx | 6 +- .../components/functioncallargsdeltaevent.mdx | 10 +- .../components/functioncallargsdoneevent.mdx | 12 +- docs/models/components/functioncallitem.mdx | 20 +- .../functioncallitemsubagentitem.mdx | 4 +- .../components/functioncalloutputitem.mdx | 10 +- ...functioncalloutputitemoutputinputimage.mdx | 8 +- .../components/fusionanalysisresult.mdx | 10 +- .../fusioncallanalysiscompletedevent.mdx | 10 +- .../fusioncallanalysisinprogressevent.mdx | 12 +- .../components/fusioncallcompletedevent.mdx | 8 +- .../components/fusioncallinprogressevent.mdx | 8 +- .../components/fusioncallpaneladdedevent.mdx | 10 +- .../fusioncallpanelcompletedevent.mdx | 12 +- .../components/fusioncallpaneldeltaevent.mdx | 12 +- .../components/fusioncallpanelfailedevent.mdx | 14 +- .../fusioncallpanelreasoningdeltaevent.mdx | 12 +- docs/models/components/fusionplugin.mdx | 14 +- docs/models/components/fusionplugintool.mdx | 4 +- .../components/fusionservertoolconfig.mdx | 16 +- .../fusionservertoolconfigreasoning.mdx | 4 +- .../components/fusionservertoolconfigtool.mdx | 4 +- .../components/fusionservertoolopenrouter.mdx | 4 +- docs/models/components/fusionsource.mdx | 4 +- .../gatewaytimeoutresponseerrordata.mdx | 6 +- .../components/generationcontentdata.mdx | 6 +- .../generationcontentdataoutput.mdx | 4 +- .../components/generationcontenterror.mdx | 10 +- .../generationcontenterrorattempt.mdx | 8 +- .../components/generationcontentresponse.mdx | 2 +- docs/models/components/generationresponse.mdx | 2 +- .../components/generationresponsedata.mdx | 90 +- docs/models/components/getbyokkeyresponse.mdx | 2 +- .../components/getguardrailresponse.mdx | 2 +- .../getobservabilitydestinationresponse.mdx | 2 +- docs/models/components/getpresetresponse.mdx | 2 +- .../components/getpresetversionresponse.mdx | 2 +- .../getscimgroupmappingresponse.mdx | 2 +- .../components/getscimsyncjobresponse.mdx | 2 +- docs/models/components/gettoolresponse.mdx | 2 +- .../components/getworkspacebudgetresponse.mdx | 4 +- .../components/getworkspaceresponse.mdx | 2 +- .../components/goneresponseerrordata.mdx | 6 +- docs/models/components/guardrail.mdx | 54 +- docs/models/components/image.mdx | 4 +- docs/models/components/imageendpoint.mdx | 14 +- .../components/imagegencallcompletedevent.mdx | 8 +- .../imagegencallgeneratingevent.mdx | 8 +- .../imagegencallinprogressevent.mdx | 8 +- .../imagegencallpartialimageevent.mdx | 12 +- .../components/imagegencompletedevent.mdx | 10 +- docs/models/components/imagegeneration.mdx | 6 +- .../imagegenerationproviderpreferences.mdx | 12 +- ...gegenerationproviderpreferencesoptions.mdx | 296 +- .../components/imagegenerationrequest.mdx | 34 +- .../components/imagegenerationresponse.mdx | 6 +- .../imagegenerationresponsedata.mdx | 4 +- .../components/imagegenerationservertool.mdx | 22 +- .../imagegenerationservertoolconfig.mdx | 4 +- .../imagegenerationservertoolopenrouter.mdx | 4 +- .../components/imagegenerationusage.mdx | 26 +- ...generationusagecompletiontokensdetails.mdx | 6 +- ...magegenerationusageprompttokensdetails.mdx | 10 +- .../imagegenerationusageservertooluse.mdx | 6 +- .../components/imagegenpartialimageevent.mdx | 6 +- .../components/imagegenstreamerrorevent.mdx | 4 +- .../imagegenstreamerroreventerror.mdx | 8 +- .../components/imagegentextchunkevent.mdx | 6 +- .../components/imagemodelarchitecture.mdx | 4 +- .../imagemodelendpointsresponse.mdx | 4 +- docs/models/components/imagemodellistitem.mdx | 16 +- .../components/imagemodelslistresponse.mdx | 2 +- docs/models/components/imagepricingentry.mdx | 8 +- .../components/imagestreamingresponse.mdx | 2 +- docs/models/components/incompletedetails.mdx | 2 +- docs/models/components/input1.mdx | 2 +- docs/models/components/input2.mdx | 2 +- docs/models/components/inputaudio.mdx | 4 +- .../components/inputaudioinputaudio.mdx | 4 +- docs/models/components/inputfile.mdx | 10 +- docs/models/components/inputimage.mdx | 8 +- docs/models/components/inputimagemask.mdx | 4 +- docs/models/components/inputmessageitem.mdx | 8 +- .../inputmessageitemcontentinputimage.mdx | 8 +- docs/models/components/inputschema.mdx | 8 +- docs/models/components/inputsmessage.mdx | 12 +- docs/models/components/inputsreasoning.mdx | 16 +- docs/models/components/inputtext.mdx | 6 +- docs/models/components/inputtokensdetails.mdx | 4 +- docs/models/components/inputvideo.mdx | 6 +- docs/models/components/intern.mdx | 28 - .../internalserverresponseerrordata.mdx | 6 +- docs/models/components/internapprovalmode.mdx | 26 - .../components/internchatassistantmessage.mdx | 14 - .../internchatassistantmessagerole.mdx | 20 - docs/models/components/internchatchoice.mdx | 14 - .../internchatchoicefinishreason.mdx | 27 - .../components/internchatcompletionchunk.mdx | 19 - .../internchatcompletionchunkobject.mdx | 20 - .../internchatcompletionrequest.mdx | 16 - docs/models/components/internchatdelta.mdx | 15 - .../models/components/internchatdeltarole.mdx | 20 - .../components/internchatdevelopermessage.mdx | 13 - .../internchatdevelopermessagerole.mdx | 20 - .../components/internchatechoedtoolcall.mdx | 13 - .../internchatechoedtoolcallfunction.mdx | 13 - docs/models/components/internchaterror.mdx | 14 - .../components/internchaterrormetadata.mdx | 13 - .../internchaterrormetadatareason.mdx | 40 - docs/models/components/internchatmessage.mdx | 57 - .../components/internchatmessagecontent.mdx | 33 - .../internchatprompttokensdetails.mdx | 12 - .../components/internchatsteeredresponse.mdx | 13 - .../internchatsteeredresponsestatus.mdx | 22 - .../components/internchatstreamerror.mdx | 14 - .../internchatstreamingresponse.mdx | 12 - .../components/internchatsystemmessage.mdx | 13 - .../internchatsystemmessagerole.mdx | 20 - docs/models/components/internchattextpart.mdx | 13 - .../components/internchattextparttype.mdx | 20 - docs/models/components/internchattoolcall.mdx | 15 - .../components/internchattoolcallfunction.mdx | 13 - .../internchattoolcallfunctionname.mdx | 20 - .../components/internchattoolcalltype.mdx | 20 - .../components/internchattoolmessage.mdx | 14 - .../components/internchattoolmessagerole.mdx | 20 - docs/models/components/internchatusage.mdx | 16 - .../components/internchatusermessage.mdx | 13 - .../components/internchatusermessagerole.mdx | 20 - docs/models/components/internconnection.mdx | 19 - .../components/internconnectionlist.mdx | 9 - .../components/internconnectionscope.mdx | 27 - .../components/internconnectionstatus.mdx | 10 - docs/models/components/interndaemonaccess.mdx | 14 - .../interninvokeacceptedresponse.mdx | 13 - .../interninvokeacceptedresponsestatus.mdx | 26 - .../models/components/interninvokerequest.mdx | 13 - .../components/internlifecycleerrorerror.mdx | 11 - .../internlifecycleerrormetadata.mdx | 10 - docs/models/components/internlistresponse.mdx | 14 - docs/models/components/internstatus.mdx | 32 - docs/models/components/itemreferenceitem.mdx | 4 +- docs/models/components/jevrouterplugin.mdx | 10 +- docs/models/components/keepall.mdx | 2 +- docs/models/components/key.mdx | 14 +- docs/models/components/keyassignment.mdx | 14 +- docs/models/components/keybudget.mdx | 18 +- docs/models/components/kind.mdx | 26 - .../components/legacychatcontentvideo.mdx | 6 +- .../legacychatcontentvideoinput.mdx | 4 +- .../components/legacywebsearchservertool.mdx | 18 +- .../components/listbyokkeysresponse.mdx | 4 +- .../components/listendpointsresponse.mdx | 12 +- .../components/listexternalusersresponse.mdx | 4 +- .../components/listguardrailsresponse.mdx | 4 +- .../components/listkeyassignmentsresponse.mdx | 4 +- .../listmemberassignmentsresponse.mdx | 4 +- .../listobservabilitydestinationsresponse.mdx | 4 +- .../models/components/listpresetsresponse.mdx | 4 +- .../components/listpresetversionsresponse.mdx | 4 +- .../listprivateendpointsresponse.mdx | 2 +- .../listscimgroupmappingsresponse.mdx | 4 +- .../components/listscimgroupsresponse.mdx | 4 +- docs/models/components/listtoolsresponse.mdx | 6 +- .../components/listtoolsresponselinks.mdx | 2 +- .../listworkspacebudgetsresponse.mdx | 4 +- .../listworkspacemembersresponse.mdx | 4 +- .../components/listworkspacesresponse.mdx | 4 +- docs/models/components/localshellcallitem.mdx | 10 +- .../components/localshellcallitemaction.mdx | 12 +- .../components/localshellcalloutputitem.mdx | 8 +- docs/models/components/logprob.mdx | 8 +- docs/models/components/logprobs.mdx | 4 +- docs/models/components/logprobscontent.mdx | 8 +- .../components/managedprivateendpoint.mdx | 18 +- .../managedprivateendpointresponse.mdx | 2 +- docs/models/components/match.mdx | 6 +- docs/models/components/maxprice.mdx | 10 +- .../components/mcpapprovalrequestitem.mdx | 10 +- .../components/mcpapprovalresponseitem.mdx | 10 +- docs/models/components/mcpcallitem.mdx | 14 +- docs/models/components/mcphttperror.mdx | 6 +- docs/models/components/mcplisttoolsitem.mdx | 10 +- .../components/mcplisttoolsitemtool.mdx | 8 +- docs/models/components/mcpprotocolerror.mdx | 6 +- docs/models/components/mcpservertool.mdx | 18 +- .../components/mcptoolexecutionerror.mdx | 4 +- docs/models/components/memberassignment.mdx | 12 +- docs/models/components/message.mdx | 16 +- .../messagesadvisortoolresultblock.mdx | 6 +- .../messagesbashtoolresultblock.mdx | 10 +- .../messagesbashtoolresultblockfile.mdx | 12 +- .../components/messagesfallbackparam.mdx | 4 +- .../components/messagesmessageparam.mdx | 8 +- .../components/messagesoutputconfig.mdx | 6 +- .../components/messagesoutputconfigformat.mdx | 4 +- docs/models/components/messagesrequest.mdx | 56 +- .../components/messagesrequestmetadata.mdx | 2 +- .../models/components/messagesrequesttool.mdx | 4 +- .../messagessearchmodelsservertool.mdx | 4 +- .../messagesshelltoolresultblock.mdx | 10 +- .../messagesshelltoolresultblockfile.mdx | 12 +- .../components/messagestooladditionblock.mdx | 6 +- ...stooladditionblocktoolmcptoolreference.mdx | 6 +- ...oladditionblocktoolmcptoolsetreference.mdx | 4 +- ...agestooladditionblocktooltoolreference.mdx | 4 +- .../components/messagestoolremovalblock.mdx | 6 +- ...estoolremovalblocktoolmcptoolreference.mdx | 6 +- ...oolremovalblocktoolmcptoolsetreference.mdx | 4 +- ...sagestoolremovalblocktooltoolreference.mdx | 4 +- docs/models/components/mismatchbehavior.mdx | 2 +- docs/models/components/model.mdx | 40 +- docs/models/components/modelaliastarget.mdx | 4 +- docs/models/components/modelarchitecture.mdx | 10 +- docs/models/components/modelbenchmarks.mdx | 4 +- docs/models/components/modellinks.mdx | 2 +- docs/models/components/modelreasoning.mdx | 10 +- docs/models/components/modelresponse.mdx | 2 +- .../models/components/modelscountresponse.mdx | 2 +- .../components/modelscountresponsedata.mdx | 2 +- docs/models/components/modelslistresponse.mdx | 6 +- .../components/modelslistresponselinks.mdx | 2 +- docs/models/components/moderationplugin.mdx | 2 +- docs/models/components/multimodalmedia.mdx | 4 +- .../components/namespacefunctiontool.mdx | 18 +- docs/models/components/namespacetool.mdx | 8 +- docs/models/components/nativesupport.mdx | 6 +- docs/models/components/nativetools.mdx | 2 +- docs/models/components/never.mdx | 2 +- .../components/notfoundresponseerrordata.mdx | 6 +- docs/models/components/oauthjwks.mdx | 2 +- .../observabilityarizedestination.mdx | 34 +- .../observabilityarizedestinationconfig.mdx | 10 +- .../observabilitybraintrustdestination.mdx | 34 +- ...servabilitybraintrustdestinationconfig.mdx | 8 +- .../observabilityclickhousedestination.mdx | 34 +- ...servabilityclickhousedestinationconfig.mdx | 14 +- .../observabilitydatadogdestination.mdx | 34 +- .../observabilitydatadogdestinationconfig.mdx | 8 +- .../observabilityfilterrulegroup.mdx | 4 +- .../observabilityfilterrulesconfig.mdx | 4 +- ...observabilityfilterrulesconfignullable.mdx | 4 +- .../observabilitygrafanadestination.mdx | 34 +- .../observabilitygrafanadestinationconfig.mdx | 8 +- .../observabilitylangfusedestination.mdx | 34 +- ...observabilitylangfusedestinationconfig.mdx | 8 +- .../observabilitylangsmithdestination.mdx | 34 +- ...bservabilitylangsmithdestinationconfig.mdx | 10 +- .../observabilitynewrelicdestination.mdx | 34 +- ...observabilitynewrelicdestinationconfig.mdx | 6 +- .../observabilityopikdestination.mdx | 34 +- .../observabilityopikdestinationconfig.mdx | 8 +- .../observabilityotelcollectordestination.mdx | 34 +- ...vabilityotelcollectordestinationconfig.mdx | 4 +- .../observabilityposthogdestination.mdx | 34 +- .../observabilityposthogdestinationconfig.mdx | 6 +- .../observabilityrampdestination.mdx | 34 +- .../observabilityrampdestinationconfig.mdx | 6 +- .../components/observabilitys3destination.mdx | 34 +- .../observabilitys3destinationconfig.mdx | 18 +- .../observabilitysentrydestination.mdx | 34 +- .../observabilitysentrydestinationconfig.mdx | 6 +- .../observabilitysnowflakedestination.mdx | 34 +- ...bservabilitysnowflakedestinationconfig.mdx | 16 +- .../observabilityweavedestination.mdx | 34 +- .../observabilityweavedestinationconfig.mdx | 10 +- .../observabilitywebhookdestination.mdx | 34 +- .../observabilitywebhookdestinationconfig.mdx | 6 +- docs/models/components/offreason.mdx | 26 - docs/models/components/openaifile.mdx | 16 +- docs/models/components/openaifiledeleted.mdx | 8 +- docs/models/components/openaifilelist.mdx | 12 +- .../openairesponsecustomtoolcall.mdx | 14 +- .../openairesponsecustomtoolcalloutput.mdx | 8 +- .../openairesponsefunctiontoolcall.mdx | 20 +- .../openairesponsefunctiontoolcalloutput.mdx | 10 +- ...airesponsefunctiontoolcallsubagentitem.mdx | 4 +- .../openairesponseinputmessageitem.mdx | 8 +- .../openairesponsesrefusalcontent.mdx | 4 +- .../components/openairesponsestoolchoice.mdx | 2 +- .../openairesponsestoolchoiceapplypatch.mdx | 2 +- .../openairesponsestoolchoicefunction.mdx | 4 +- .../openairesponsestoolchoiceshell.mdx | 2 +- .../components/openresponsescreatedevent.mdx | 6 +- .../components/openresponseserrorfield.mdx | 6 +- .../components/openresponseserrormetadata.mdx | 2 +- .../openresponseserrormetadataalignment.mdx | 4 +- .../openresponsesinprogressevent.mdx | 6 +- .../models/components/openresponsesresult.mdx | 78 +- .../openresponsesresulttoolfunction.mdx | 18 +- docs/models/components/openrouterfile.mdx | 16 +- .../components/openrouterfiledeleted.mdx | 6 +- docs/models/components/openrouterfilelist.mdx | 12 +- docs/models/components/openroutermetadata.mdx | 22 +- .../openrouterwebsearchservertool.mdx | 4 +- .../components/oranthropicbashtoolresult.mdx | 10 +- .../oranthropicbashtoolresultfile.mdx | 12 +- .../oranthropicservertooluseblock.mdx | 10 +- .../components/oranthropicshelltoolresult.mdx | 10 +- .../oranthropicshelltoolresultfile.mdx | 12 +- .../oranthropictoolsearchresult.mdx | 6 +- .../oranthropictoolsearchresultparam.mdx | 6 +- .../components/organizationsettings.mdx | 4 +- docs/models/components/outcomeexit.mdx | 6 +- docs/models/components/outcometimeout.mdx | 4 +- .../outputadvisorservertoolitem.mdx | 16 +- .../components/outputapplypatchcallitem.mdx | 10 +- .../outputapplypatchservertoolitem.mdx | 12 +- .../components/outputarmorblockeditem.mdx | 18 +- .../components/outputbashservertoolitem.mdx | 24 +- .../outputbashservertoolitemfile.mdx | 12 +- .../outputbrowseruseservertoolitem.mdx | 10 +- .../outputcodeinterpretercallitem.mdx | 14 +- .../outputcodeinterpreterservertoolitem.mdx | 16 +- .../components/outputcomputercallitem.mdx | 12 +- .../components/outputcustomtoolcallitem.mdx | 16 +- docs/models/components/outputdatetimeitem.mdx | 12 +- .../components/outputfilesearchcallitem.mdx | 8 +- .../outputfilesearchservertoolitem.mdx | 8 +- .../components/outputfilesservertoolitem.mdx | 20 +- .../components/outputfunctioncallitem.mdx | 20 +- .../outputfunctioncallitemsubagentitem.mdx | 4 +- .../components/outputfusionservertoolitem.mdx | 18 +- .../outputfusionservertoolitemresponse.mdx | 4 +- .../outputimagegenerationcallitem.mdx | 10 +- .../outputimagegenerationservertoolitem.mdx | 18 +- .../components/outputitemapplypatchcall.mdx | 12 +- .../outputitemcodeinterpretercall.mdx | 14 +- .../components/outputitemcustomtoolcall.mdx | 16 +- .../components/outputitemfilesearchcall.mdx | 8 +- .../components/outputitemfunctioncall.mdx | 16 +- .../outputitemimagegenerationcall.mdx | 8 +- .../models/components/outputitemreasoning.mdx | 12 +- .../components/outputitemwebsearchcall.mdx | 10 +- ...utputitemwebsearchcallactionfindinpage.mdx | 6 +- .../outputitemwebsearchcallactionopenpage.mdx | 4 +- .../outputitemwebsearchcallactionsearch.mdx | 8 +- .../components/outputmcpservertoolitem.mdx | 10 +- .../components/outputmemoryservertoolitem.mdx | 12 +- docs/models/components/outputmessage.mdx | 12 +- docs/models/components/outputmessageitem.mdx | 12 +- .../models/components/outputreasoningitem.mdx | 16 +- .../outputsearchmodelsservertoolitem.mdx | 12 +- .../models/components/outputshellcallitem.mdx | 12 +- .../components/outputshellcallitemaction.mdx | 6 +- .../components/outputshellcalloutputitem.mdx | 18 +- .../outputshellcalloutputitemfile.mdx | 12 +- .../components/outputshellservertoolitem.mdx | 20 +- .../outputshellservertoolitemaction.mdx | 6 +- .../outputshellservertoolitemfile.mdx | 12 +- .../outputsubagentservertoolitem.mdx | 22 +- .../outputtexteditorservertoolitem.mdx | 10 +- .../models/components/outputtokensdetails.mdx | 2 +- .../components/outputtoolsearchcallitem.mdx | 12 +- .../outputtoolsearchservertoolitem.mdx | 12 +- .../outputwebfetchservertoolitem.mdx | 16 +- .../components/outputwebsearchcallitem.mdx | 10 +- ...utputwebsearchcallitemactionfindinpage.mdx | 6 +- .../outputwebsearchcallitemactionopenpage.mdx | 4 +- .../outputwebsearchcallitemactionsearch.mdx | 8 +- .../outputwebsearchservertoolitem.mdx | 10 +- .../outputwebsearchservertoolitemaction.mdx | 6 +- .../outputwebsearchservertoolitemsource.mdx | 4 +- docs/models/components/paretorouterplugin.mdx | 10 +- docs/models/components/partialcoverage.mdx | 4 +- .../payloadtoolargeresponseerrordata.mdx | 6 +- .../paymentrequiredresponseerrordata.mdx | 6 +- docs/models/components/pdfparseroptions.mdx | 2 +- docs/models/components/pendingsafetycheck.mdx | 6 +- .../components/percentilelatencycutoffs.mdx | 8 +- docs/models/components/percentilestats.mdx | 8 +- .../percentilethroughputcutoffs.mdx | 8 +- .../components/perflast30mbyworkload.mdx | 18 +- docs/models/components/perrequestlimits.mdx | 4 +- docs/models/components/pipelinestage.mdx | 14 +- docs/models/components/prediction.mdx | 4 +- .../components/predictioncontenttext.mdx | 4 +- docs/models/components/preset.mdx | 22 +- .../components/presetdesignatedversion.mdx | 16 +- .../presetwithdesignatedversion.mdx | 24 +- .../preview20250311websearchservertool.mdx | 18 +- .../components/previewwebsearchservertool.mdx | 18 +- .../previewwebsearchuserlocation.mdx | 10 +- docs/models/components/pricing.mdx | 32 +- docs/models/components/pricingoverride.mdx | 22 +- docs/models/components/privateendpoint.mdx | 24 +- .../components/privateendpointactivation.mdx | 2 +- .../components/privateendpointcheck.mdx | 12 +- .../components/privateendpointpricing.mdx | 8 +- .../components/privateendpointresponse.mdx | 2 +- .../components/privateendpointsummary.mdx | 14 +- .../components/privateendpointvalidation.mdx | 4 +- .../privateendpointvalidationnullable.mdx | 4 +- .../privateendpointvalidationresponse.mdx | 2 +- docs/models/components/progress.mdx | 14 - .../components/promptcachebreakpoint.mdx | 4 +- docs/models/components/promptcacheoptions.mdx | 4 +- docs/models/components/provideroptions.mdx | 296 +- .../provideroverloadedresponseerrordata.mdx | 6 +- .../models/components/providerpreferences.mdx | 28 +- docs/models/components/providerresponse.mdx | 16 +- docs/models/components/providersortconfig.mdx | 4 +- .../components/provisioninternresponse.mdx | 9 - docs/models/components/publicendpoint.mdx | 52 +- docs/models/components/publicpricing.mdx | 32 +- docs/models/components/rangecapability.mdx | 6 +- docs/models/components/rankingoptions.mdx | 4 +- docs/models/components/rankingsdailyitem.mdx | 6 +- docs/models/components/rankingsdailymeta.mdx | 8 +- .../components/rankingsdailyresponse.mdx | 4 +- docs/models/components/reasoningconfig.mdx | 12 +- .../models/components/reasoningdeltaevent.mdx | 12 +- .../components/reasoningdetailencrypted.mdx | 10 +- .../reasoningdetailservertoolcall.mdx | 16 +- .../components/reasoningdetailsummary.mdx | 10 +- .../models/components/reasoningdetailtext.mdx | 12 +- docs/models/components/reasoningdoneevent.mdx | 12 +- docs/models/components/reasoningitem.mdx | 16 +- .../reasoningsummarypartaddedevent.mdx | 12 +- .../reasoningsummarypartdoneevent.mdx | 12 +- .../components/reasoningsummarytext.mdx | 4 +- .../reasoningsummarytextdeltaevent.mdx | 12 +- .../reasoningsummarytextdoneevent.mdx | 12 +- .../components/reasoningtextcontent.mdx | 4 +- docs/models/components/refusal.mdx | 8 +- docs/models/components/refusaldeltaevent.mdx | 12 +- docs/models/components/refusaldoneevent.mdx | 12 +- docs/models/components/refusaltoplogprob.mdx | 6 +- docs/models/components/request.mdx | 4 +- .../requesttimeoutresponseerrordata.mdx | 6 +- docs/models/components/requireapproval.mdx | 4 +- docs/models/components/rerank.mdx | 6 +- .../components/responsehealingplugin.mdx | 4 +- docs/models/components/responseoutputtext.mdx | 8 +- .../responseoutputtexttoplogprob.mdx | 6 +- docs/models/components/responsesrequest.mdx | 82 +- .../responsesrequesttoolfunction.mdx | 18 +- .../components/responsesstreamingresponse.mdx | 2 +- docs/models/components/result.mdx | 8 +- docs/models/components/resulterror.mdx | 8 +- docs/models/components/route.mdx | 13 - docs/models/components/routerattempt.mdx | 6 +- docs/models/components/routerparams.mdx | 8 +- docs/models/components/rule.mdx | 6 +- docs/models/components/scimgroup.mdx | 12 +- docs/models/components/scimgroupmapping.mdx | 14 +- docs/models/components/scimsyncjob.mdx | 16 +- .../searchmodelsservertoolconfig.mdx | 2 +- .../searchmodelsservertoolopenrouter.mdx | 4 +- docs/models/components/security.mdx | 2 +- docs/models/components/server.mdx | 12 - docs/models/components/servertool.mdx | 30 +- docs/models/components/servertooldetails.mdx | 30 +- docs/models/components/servertoolengine.mdx | 18 +- .../models/components/servertoolinputname.mdx | 6 +- .../components/servertoolnativemodel.mdx | 4 +- .../components/servertoolnativesupport.mdx | 4 +- .../components/servertooloutputname.mdx | 6 +- docs/models/components/servertoolprice.mdx | 8 +- .../components/servertoolusedetails.mdx | 6 +- .../serviceunavailableresponseerrordata.mdx | 6 +- docs/models/components/sessioncostitem.mdx | 10 +- docs/models/components/sessioncostmeta.mdx | 8 +- .../models/components/sessioncostresponse.mdx | 4 +- docs/models/components/shellcallitem.mdx | 14 +- .../models/components/shellcallitemaction.mdx | 6 +- .../components/shellcalloutputcontent.mdx | 8 +- .../models/components/shellcalloutputitem.mdx | 18 +- .../components/shellcalloutputitemfile.mdx | 12 +- docs/models/components/shellservertool.mdx | 2 +- .../components/shellservertoolconfig.mdx | 4 +- .../components/shellservertoolopenrouter.mdx | 4 +- .../components/signinterndaemonrequest.mdx | 10 - .../signinterndaemonrequestmethod.mdx | 22 - .../components/signinterndaemonresponse.mdx | 16 - docs/models/components/sourcecontent.mdx | 4 +- .../components/speechinputreferenceaudio.mdx | 4 +- .../speechinputreferenceaudioinput.mdx | 6 +- .../components/speechinputreferenceimage.mdx | 4 +- .../speechinputreferenceimageinput.mdx | 2 +- .../components/speechinputreferencetext.mdx | 4 +- docs/models/components/speechrequest.mdx | 22 +- .../components/speechrequestprovider.mdx | 6 +- docs/models/components/speechturn.mdx | 6 +- docs/models/components/stance.mdx | 4 +- docs/models/components/stateenum.mdx | 26 - .../stopservertoolswhenfinishreasonis.mdx | 4 +- .../stopservertoolswhenhastoolcall.mdx | 4 +- .../components/stopservertoolswhenmaxcost.mdx | 4 +- .../stopservertoolswhenmaxtokensused.mdx | 4 +- .../stopservertoolswhenstepcountis.mdx | 4 +- .../components/storedprompttemplate.mdx | 4 +- .../streameventsresponsecompleted.mdx | 6 +- .../components/streameventsresponsefailed.mdx | 6 +- .../streameventsresponseincomplete.mdx | 6 +- .../streameventsresponseoutputitemadded.mdx | 8 +- .../streameventsresponseoutputitemdone.mdx | 8 +- docs/models/components/streamlogprob.mdx | 8 +- .../components/streamlogprobtoplogprob.mdx | 6 +- docs/models/components/stt.mdx | 6 +- docs/models/components/sttentity.mdx | 8 +- .../models/components/sttinlineinputaudio.mdx | 4 +- docs/models/components/sttrequest.mdx | 24 +- docs/models/components/sttrequestprovider.mdx | 6 +- docs/models/components/sttresponse.mdx | 20 +- docs/models/components/sttsegment.mdx | 26 +- docs/models/components/stturlinputaudio.mdx | 4 +- docs/models/components/sttusage.mdx | 10 +- docs/models/components/sttword.mdx | 16 +- docs/models/components/subagentnestedtool.mdx | 6 +- docs/models/components/subagentreasoning.mdx | 4 +- .../components/subagentservertoolconfig.mdx | 20 +- .../subagentservertoolopenrouter.mdx | 4 +- .../submitgenerationfeedbackrequest.mdx | 6 +- .../submitgenerationfeedbackresponse.mdx | 2 +- .../submitgenerationfeedbackresponsedata.mdx | 2 +- .../components/suspendinternresponse.mdx | 9 - .../components/switchyardrouterplugin.mdx | 6 +- docs/models/components/taskbudget.mdx | 6 +- .../components/taskclassificationitem.mdx | 16 +- .../taskclassificationmacrocategory.mdx | 8 +- .../components/taskclassificationmodel.mdx | 6 +- .../components/taskclassificationresponse.mdx | 2 +- .../taskclassificationresponsedata.mdx | 8 +- docs/models/components/textdeltaevent.mdx | 14 +- docs/models/components/textdoneevent.mdx | 14 +- docs/models/components/textextendedconfig.mdx | 4 +- docs/models/components/textgeneration.mdx | 6 +- docs/models/components/thinkingadaptive.mdx | 6 +- .../components/thinkingbetweentools.mdx | 2 +- docs/models/components/thinkingdisabled.mdx | 2 +- docs/models/components/thinkingenabled.mdx | 8 +- .../components/tokenexchangerequest.mdx | 12 +- .../components/tokenexchangeresponse.mdx | 10 +- .../models/components/tooladvisor20260301.mdx | 16 +- docs/models/components/toolbash20250124.mdx | 6 +- docs/models/components/toolcall.mdx | 8 +- docs/models/components/toolchoiceallowed.mdx | 6 +- docs/models/components/toolchoiceany.mdx | 4 +- docs/models/components/toolchoiceauto.mdx | 4 +- docs/models/components/toolchoicenone.mdx | 2 +- docs/models/components/toolchoicesupport.mdx | 8 +- docs/models/components/toolchoicetool.mdx | 6 +- docs/models/components/toolcustom.mdx | 14 +- docs/models/components/toolsearchcallitem.mdx | 12 +- .../components/toolsearchoutputitem.mdx | 12 +- .../components/toolsearchoutputitemtool.mdx | 4 +- .../toolsearchoutputitemtoolfunction.mdx | 18 +- .../components/toolsearchservertool.mdx | 4 +- .../components/toolsearchservertoolconfig.mdx | 2 +- .../components/tooltexteditor20250124.mdx | 6 +- docs/models/components/toolusesevaluated.mdx | 6 +- docs/models/components/toolusesskipped.mdx | 2 +- .../models/components/toolusesunavailable.mdx | 4 +- .../components/toolwebsearch20250305.mdx | 14 +- .../components/toolwebsearch20260209.mdx | 16 +- .../toomanyrequestsresponseerrordata.mdx | 6 +- docs/models/components/topproviderinfo.mdx | 6 +- docs/models/components/tournamentstats.mdx | 10 +- docs/models/components/traceconfig.mdx | 12 +- docs/models/components/triggerinputtokens.mdx | 4 +- docs/models/components/tts.mdx | 6 +- .../unauthorizedresponseerrordata.mdx | 6 +- .../components/unifiedbenchmarkpricing.mdx | 4 +- .../components/unifiedbenchmarksaaitem.mdx | 14 +- .../components/unifiedbenchmarksdaitem.mdx | 20 +- .../components/unifiedbenchmarksmeta.mdx | 14 +- .../components/unifiedbenchmarksoritem.mdx | 18 +- .../components/unifiedbenchmarksresponse.mdx | 4 +- .../unifiedbenchmarkssearchitem.mdx | 26 +- .../unifiedbenchmarkssearchrunconfig.mdx | 6 +- docs/models/components/uniqueinsight.mdx | 4 +- docs/models/components/unknown.mdx | 6 +- .../unprocessableentityresponseerrordata.mdx | 6 +- .../components/updatebyokkeyrequest.mdx | 22 +- .../components/updatebyokkeyresponse.mdx | 2 +- .../components/updateexternaluserrequest.mdx | 2 +- .../components/updateguardrailrequest.mdx | 46 +- .../components/updateguardrailresponse.mdx | 2 +- .../models/components/updateinternrequest.mdx | 15 - .../updateobservabilitydestinationrequest.mdx | 24 +- ...updateobservabilitydestinationresponse.mdx | 2 +- .../updateorganizationsettingsrequest.mdx | 2 +- .../updateprivateendpointpricingrequest.mdx | 2 +- .../updateprivateendpointrequest.mdx | 8 +- .../updatescimgroupmappingrequest.mdx | 2 +- .../updatescimgroupmappingresponse.mdx | 2 +- .../components/updateworkspacerequest.mdx | 24 +- .../components/updateworkspaceresponse.mdx | 2 +- docs/models/components/upscalefactor.mdx | 4 +- .../upsertworkspacebudgetrequest.mdx | 4 +- .../upsertworkspacebudgetresponse.mdx | 4 +- docs/models/components/upstream.mdx | 4 +- docs/models/components/urlcitation.mdx | 12 +- docs/models/components/usage.mdx | 18 +- docs/models/components/usagecostdetails.mdx | 8 +- docs/models/components/userlocation.mdx | 10 +- .../validateprivateendpointrequest.mdx | 2 +- .../components/vaulteffectivesecret.mdx | 10 +- .../vaulteffectivesecretlistresponse.mdx | 4 +- docs/models/components/vaultsecret.mdx | 8 +- .../components/vaultsecretcopyrequest.mdx | 2 +- .../components/vaultsecretcopyresponse.mdx | 2 +- .../components/vaultsecretlistresponse.mdx | 4 +- .../models/components/vaultsecretresponse.mdx | 2 +- .../components/vaultsecretwriterequest.mdx | 4 +- docs/models/components/videogeneration.mdx | 6 +- .../components/videogenerationrequest.mdx | 36 +- .../videogenerationrequestoptions.mdx | 296 +- .../videogenerationrequestprovider.mdx | 2 +- .../components/videogenerationresponse.mdx | 18 +- .../components/videogenerationusage.mdx | 4 +- docs/models/components/videomodel.mdx | 34 +- .../components/videomodelslistresponse.mdx | 2 +- docs/models/components/videourl.mdx | 2 +- docs/models/components/viewer.mdx | 9 - docs/models/components/webfetchplugin.mdx | 10 +- docs/models/components/webfetchservertool.mdx | 4 +- .../components/webfetchservertoolconfig.mdx | 10 +- .../websearchcallcompletedevent.mdx | 8 +- .../websearchcallinprogressevent.mdx | 8 +- .../websearchcallsearchingevent.mdx | 8 +- docs/models/components/websearchcitation.mdx | 8 +- docs/models/components/websearchconfig.mdx | 22 +- .../components/websearchdomainfilter.mdx | 6 +- docs/models/components/websearchplugin.mdx | 22 +- .../models/components/websearchservertool.mdx | 18 +- .../components/websearchservertoolconfig.mdx | 22 +- .../websearchservertoolopenrouter.mdx | 4 +- docs/models/components/websearchsource.mdx | 4 +- .../components/websearchuserlocation.mdx | 10 +- .../websearchuserlocationservertool.mdx | 10 +- docs/models/components/workspace.mdx | 36 +- docs/models/components/workspacebudget.mdx | 12 +- docs/models/components/workspacemember.mdx | 10 +- docs/models/components/xsearchoptions.mdx | 12 +- .../activateprivateendpointrequest.mdx | 2 +- .../bulkaddworkspacemembersrequest.mdx | 4 +- .../bulkassignkeystoguardrailrequest.mdx | 4 +- .../bulkassignmemberstoguardrailrequest.mdx | 4 +- .../bulkremoveworkspacemembersrequest.mdx | 4 +- .../bulkunassignkeysfromguardrailrequest.mdx | 4 +- ...ulkunassignmembersfromguardrailrequest.mdx | 4 +- .../operations/classifierdimensions.mdx | 6 +- docs/models/operations/classifierfilters.mdx | 4 +- .../operations/classifierfiltersfilter.mdx | 6 +- docs/models/operations/contentimageurl.mdx | 4 +- docs/models/operations/contenttext.mdx | 4 +- .../copyvaultsecretstointernrequest.mdx | 4 +- ...createaudiotranscriptionsmultipartfile.mdx | 4 +- ...ateaudiotranscriptionsmultipartrequest.mdx | 26 +- .../operations/createauthkeyscodedata.mdx | 6 +- .../operations/createauthkeyscoderequest.mdx | 16 +- .../operations/createauthkeyscoderesponse.mdx | 2 +- .../operations/createembeddingsdata.mdx | 6 +- .../operations/createembeddingsrequest.mdx | 18 +- .../createembeddingsresponsebody.mdx | 10 +- .../operations/createembeddingsusage.mdx | 12 +- .../createinternchatcompletionrequest.mdx | 10 - .../createinternchatcompletionresponse.mdx | 10 - ...eateinternchatcompletionresponseresult.mdx | 30 - .../models/operations/createinternrequest.mdx | 10 - docs/models/operations/createkeysdata.mdx | 46 +- docs/models/operations/createkeysrequest.mdx | 16 +- docs/models/operations/createkeysresponse.mdx | 4 +- .../createpresetschatcompletionsrequest.mdx | 4 +- .../createpresetsmessagesrequest.mdx | 4 +- .../createpresetsresponsesrequest.mdx | 4 +- .../createprivateendpointrequest.mdx | 4 +- .../models/operations/creatererankrequest.mdx | 16 +- .../operations/creatererankresponsebody.mdx | 10 +- docs/models/operations/creatererankusage.mdx | 6 +- .../operations/createresponsesrequest.mdx | 4 +- .../operations/createscimsyncjobresponse.mdx | 4 +- docs/models/operations/deletebatchrequest.mdx | 2 +- .../operations/deletebyokkeyrequest.mdx | 2 +- .../operations/deleteexternaluserrequest.mdx | 2 +- docs/models/operations/deletefilerequest.mdx | 6 +- .../operations/deleteguardrailrequest.mdx | 2 +- .../models/operations/deleteinternrequest.mdx | 10 - .../deleteinternvaultsecretrequest.mdx | 4 +- docs/models/operations/deletekeysrequest.mdx | 2 +- docs/models/operations/deletekeysresponse.mdx | 2 +- .../deleteobservabilitydestinationrequest.mdx | 2 +- .../deleteprivateendpointrequest.mdx | 4 +- .../deletescimgroupmappingrequest.mdx | 4 +- .../operations/deletevaultsecretrequest.mdx | 2 +- .../deleteworkspacebudgetrequest.mdx | 4 +- .../operations/deleteworkspacerequest.mdx | 4 +- docs/models/operations/dimension.mdx | 4 +- .../disableprivateendpointrequest.mdx | 2 +- docs/models/operations/documentrequest.mdx | 4 +- docs/models/operations/documentresponse.mdx | 4 +- .../downloadcontainerfilecontentrequest.mdx | 4 +- .../operations/downloadfilecontentrequest.mdx | 6 +- .../enableprivateendpointrequest.mdx | 2 +- .../exchangeauthcodeforapikeyrequest.mdx | 6 +- .../exchangeauthcodeforapikeyresponse.mdx | 4 +- docs/models/operations/external.mdx | 4 +- docs/models/operations/filter.mdx | 8 +- .../operations/getanalyticsmetadata.mdx | 8 +- .../operations/getanalyticsmetaresponse.mdx | 2 +- .../operations/getapprankingsrequest.mdx | 14 +- .../operations/getapprankingsresponse.mdx | 2 +- docs/models/operations/getbatchesrequest.mdx | 2 +- .../operations/getbenchmarksrequest.mdx | 18 +- docs/models/operations/getbyokkeyrequest.mdx | 2 +- .../operations/getcontainerfilerequest.mdx | 4 +- docs/models/operations/getcreditsdata.mdx | 4 +- docs/models/operations/getcreditsresponse.mdx | 2 +- docs/models/operations/getcurrentkeydata.mdx | 50 +- .../operations/getcurrentkeyresponse.mdx | 2 +- .../operations/getexternaluserrequest.mdx | 2 +- .../operations/getfilemetadatarequest.mdx | 6 +- .../operations/getgenerationrequest.mdx | 2 +- .../models/operations/getguardrailrequest.mdx | 2 +- .../getinternconnectionsrequest.mdx | 9 - .../getinterndaemonaccessrequest.mdx | 9 - .../operations/getinterndaemonrequest.mdx | 9 - .../operations/getinterniconrequest.mdx | 10 - docs/models/operations/getinternrequest.mdx | 9 - docs/models/operations/getkeydata.mdx | 46 +- docs/models/operations/getkeyrequest.mdx | 2 +- docs/models/operations/getkeyresponse.mdx | 2 +- docs/models/operations/getmodelrequest.mdx | 4 +- docs/models/operations/getmodelsrequest.mdx | 58 +- docs/models/operations/getmodelsresponse.mdx | 2 +- .../getobservabilitydestinationrequest.mdx | 2 +- .../getorganizationsettingsresponse.mdx | 2 +- docs/models/operations/getpresetrequest.mdx | 2 +- .../operations/getpresetversionrequest.mdx | 4 +- .../operations/getprivateendpointrequest.mdx | 2 +- .../operations/getrankingsdailyrequest.mdx | 14 +- .../operations/getscimgroupmappingrequest.mdx | 2 +- .../operations/getscimsyncjobrequest.mdx | 2 +- .../operations/getsessioncostrequest.mdx | 10 +- .../operations/getsessioncostresponse.mdx | 2 +- .../gettaskclassificationsrequest.mdx | 2 +- docs/models/operations/gettoolrequest.mdx | 2 +- docs/models/operations/gettoolresponse.mdx | 4 +- docs/models/operations/gettoolsecurity.mdx | 2 +- .../operations/getuseractivityrequest.mdx | 10 +- docs/models/operations/getvideosrequest.mdx | 2 +- .../operations/getworkspacebudgetrequest.mdx | 4 +- .../models/operations/getworkspacerequest.mdx | 2 +- docs/models/operations/granularity.mdx | 4 +- docs/models/operations/imageurl.mdx | 2 +- docs/models/operations/input.mdx | 2 +- .../models/operations/invokeinternrequest.mdx | 10 - .../operations/invokeinternresponse.mdx | 10 - docs/models/operations/listbatchesrequest.mdx | 10 +- .../models/operations/listbatchesresponse.mdx | 2 +- .../models/operations/listbyokkeysrequest.mdx | 8 +- .../operations/listbyokkeysresponse.mdx | 2 +- .../operations/listcontainerfilesrequest.mdx | 6 +- docs/models/operations/listdata.mdx | 46 +- .../listembeddingsmodelsrequest.mdx | 4 +- .../listembeddingsmodelsresponse.mdx | 2 +- .../operations/listendpointsrequest.mdx | 4 +- .../operations/listendpointsresponse.mdx | 2 +- .../operations/listendpointszdrresponse.mdx | 2 +- .../operations/listexternalusersrequest.mdx | 8 +- .../operations/listexternalusersresponse.mdx | 2 +- docs/models/operations/listfilesrequest.mdx | 16 +- docs/models/operations/listfilesresponse.mdx | 2 +- .../listgenerationcontentrequest.mdx | 2 +- .../listguardrailkeyassignmentsrequest.mdx | 6 +- .../listguardrailkeyassignmentsresponse.mdx | 2 +- .../listguardrailmemberassignmentsrequest.mdx | 6 +- ...listguardrailmemberassignmentsresponse.mdx | 2 +- .../operations/listguardrailsrequest.mdx | 6 +- .../operations/listguardrailsresponse.mdx | 2 +- .../listimagemodelendpointsrequest.mdx | 4 +- .../operations/listinternconnectionsdata.mdx | 2 +- .../listinternconnectionsrequest.mdx | 2 +- .../listinternconnectionsresponse.mdx | 2 +- ...listinterneffectivevaultsecretsrequest.mdx | 6 +- docs/models/operations/listinternsrequest.mdx | 12 - .../listinternvaultsecretsrequest.mdx | 6 +- .../operations/listkeyassignmentsrequest.mdx | 4 +- .../operations/listkeyassignmentsresponse.mdx | 2 +- .../listmemberassignmentsrequest.mdx | 4 +- .../listmemberassignmentsresponse.mdx | 2 +- .../operations/listmodelscountrequest.mdx | 2 +- .../operations/listmodelsuserrequest.mdx | 8 +- .../operations/listmodelsuserresponse.mdx | 2 +- .../operations/listmodelsusersecurity.mdx | 2 +- .../listobservabilitydestinationsrequest.mdx | 6 +- .../listobservabilitydestinationsresponse.mdx | 2 +- .../listorganizationmembersdata.mdx | 10 +- .../listorganizationmembersrequest.mdx | 4 +- .../listorganizationmembersresponse.mdx | 2 +- .../listorganizationmembersresponsebody.mdx | 4 +- docs/models/operations/listpresetsrequest.mdx | 4 +- .../models/operations/listpresetsresponse.mdx | 2 +- .../operations/listpresetversionsrequest.mdx | 6 +- .../operations/listpresetversionsresponse.mdx | 2 +- docs/models/operations/listprovidersdata.mdx | 14 +- .../operations/listprovidersresponse.mdx | 2 +- docs/models/operations/listrequest.mdx | 8 +- docs/models/operations/listresponse.mdx | 2 +- .../listscimgroupmappingsrequest.mdx | 4 +- .../listscimgroupmappingsresponse.mdx | 2 +- .../operations/listscimgroupsrequest.mdx | 8 +- .../operations/listscimgroupsresponse.mdx | 2 +- docs/models/operations/listtoolsrequest.mdx | 6 +- docs/models/operations/listtoolssecurity.mdx | 2 +- .../operations/listvaultsecretsrequest.mdx | 4 +- .../operations/listvideoscontentrequest.mdx | 4 +- .../listworkspacebudgetsrequest.mdx | 2 +- .../listworkspacemembersrequest.mdx | 6 +- .../listworkspacemembersresponse.mdx | 2 +- .../operations/listworkspacesrequest.mdx | 4 +- .../operations/listworkspacesresponse.mdx | 2 +- docs/models/operations/metadata.mdx | 6 +- docs/models/operations/metric.mdx | 8 +- docs/models/operations/operator.mdx | 4 +- docs/models/operations/orderby.mdx | 4 +- .../promotecontainerfilerequest.mdx | 4 +- .../models/operations/prompttokensdetails.mdx | 10 +- .../operations/provisioninternrequest.mdx | 9 - .../models/operations/queryanalyticsdata2.mdx | 8 +- .../operations/queryanalyticsrequest.mdx | 20 +- .../operations/queryanalyticsresponse.mdx | 2 +- docs/models/operations/ratelimit.mdx | 8 +- docs/models/operations/result.mdx | 6 +- .../sendchatcompletionrequestrequest.mdx | 4 +- .../signinterndaemonaccessrequestrequest.mdx | 10 - .../signinterndaemonaccessrequestresponse.mdx | 10 - .../signinterndaemonrequestrequest.mdx | 10 - .../signinterndaemonrequestresponse.mdx | 10 - docs/models/operations/status.mdx | 30 - .../storeinternvaultsecretrequest.mdx | 6 +- .../operations/storevaultsecretrequest.mdx | 4 +- .../operations/suspendinternrequest.mdx | 9 - docs/models/operations/timerange.mdx | 4 +- .../operations/updatebyokkeyrequest.mdx | 4 +- .../operations/updateexternaluserrequest.mdx | 4 +- .../operations/updateguardrailrequest.mdx | 4 +- .../models/operations/updateinternrequest.mdx | 10 - docs/models/operations/updatekeysdata.mdx | 46 +- docs/models/operations/updatekeysrequest.mdx | 4 +- .../operations/updatekeysrequestbody.mdx | 12 +- docs/models/operations/updatekeysresponse.mdx | 2 +- .../updateobservabilitydestinationrequest.mdx | 4 +- .../updateorganizationsettingsresponse.mdx | 2 +- .../updateprivateendpointpricingrequest.mdx | 4 +- .../updateprivateendpointrequest.mdx | 4 +- .../updatescimgroupmappingrequest.mdx | 4 +- .../operations/updateworkspacerequest.mdx | 4 +- docs/models/operations/uploadfilefile.mdx | 4 +- docs/models/operations/uploadfilerequest.mdx | 6 +- .../operations/uploadfilerequestbody.mdx | 2 +- .../upsertworkspacebudgetrequest.mdx | 6 +- .../validateprivateendpointrequest.mdx | 4 +- .../sdkerrors/badgatewayresponseerror.mdx | 6 +- .../sdkerrors/badrequestresponseerror.mdx | 6 +- docs/models/sdkerrors/batcherrorresponse.mdx | 2 +- .../batchpaymentrequiredresponseerror.mdx | 28 +- .../clientclosedrequestresponseerror.mdx | 6 +- .../sdkerrors/conflictresponseerror.mdx | 6 +- ...eendpointvalidationfailedresponseerror.mdx | 4 +- .../edgenetworktimeoutresponseerror.mdx | 6 +- .../sdkerrors/forbiddenresponseerror.mdx | 6 +- .../sdkerrors/gatewaytimeoutresponseerror.mdx | 6 +- docs/models/sdkerrors/goneresponseerror.mdx | 6 +- .../sdkerrors/internalserverresponseerror.mdx | 6 +- .../sdkerrors/internchaterrorresponse.mdx | 12 - .../models/sdkerrors/internlifecycleerror.mdx | 12 - .../sdkerrors/notfoundresponseerror.mdx | 6 +- docs/models/sdkerrors/oautherrorresponse.mdx | 4 +- .../payloadtoolargeresponseerror.mdx | 6 +- .../paymentrequiredresponseerror.mdx | 6 +- .../provideroverloadedresponseerror.mdx | 6 +- .../sdkerrors/requesttimeoutresponseerror.mdx | 6 +- .../serviceunavailableresponseerror.mdx | 6 +- .../toomanyrequestsresponseerror.mdx | 6 +- .../sdkerrors/unauthorizedresponseerror.mdx | 6 +- .../unprocessableentityresponseerror.mdx | 6 +- docs/sdks/analytics/README.mdx | 24 +- docs/sdks/apikeys/README.mdx | 42 +- docs/sdks/batch/README.mdx | 24 +- docs/sdks/benchmarks/README.mdx | 6 +- docs/sdks/betaresponses/README.mdx | 8 +- docs/sdks/byok/README.mdx | 38 +- docs/sdks/chat/README.mdx | 8 +- docs/sdks/classifications/README.mdx | 6 +- docs/sdks/containers/README.mdx | 34 +- docs/sdks/credits/README.mdx | 4 +- docs/sdks/datasets/README.mdx | 18 +- docs/sdks/decisions/README.mdx | 6 +- docs/sdks/embeddings/README.mdx | 14 +- docs/sdks/endpoints/README.mdx | 12 +- docs/sdks/externalusers/README.mdx | 38 +- docs/sdks/files/README.mdx | 46 +- docs/sdks/generations/README.mdx | 18 +- docs/sdks/guardrails/README.mdx | 104 +- docs/sdks/images/README.mdx | 18 +- docs/sdks/interns/README.mdx | 901 - docs/sdks/models/README.mdx | 34 +- docs/sdks/oauth/README.mdx | 22 +- docs/sdks/observability/README.mdx | 36 +- docs/sdks/organization/README.mdx | 18 +- docs/sdks/presets/README.mdx | 56 +- docs/sdks/privateendpoints/README.mdx | 68 +- docs/sdks/providers/README.mdx | 4 +- docs/sdks/rerank/README.mdx | 6 +- docs/sdks/responses/README.mdx | 8 +- docs/sdks/scim/README.mdx | 58 +- docs/sdks/stt/README.mdx | 12 +- docs/sdks/systemone/README.mdx | 6 +- docs/sdks/tools/README.mdx | 20 +- docs/sdks/tts/README.mdx | 6 +- docs/sdks/vault/README.mdx | 74 +- docs/sdks/videogeneration/README.mdx | 24 +- docs/sdks/workspaces/README.mdx | 94 +- interns.go | 4262 ---- models/components/createinternrequest.go | 77 - models/components/deleteinternrequest.go | 31 - models/components/deleteinternresponse.go | 27 - models/components/intern.go | 224 - models/components/internapprovalmode.go | 26 - .../components/internchatassistantmessage.go | 73 - models/components/internchatchoice.go | 57 - .../components/internchatcompletionchunk.go | 118 - .../components/internchatcompletionrequest.go | 65 - models/components/internchatdelta.go | 79 - .../components/internchatdevelopermessage.go | 64 - models/components/internchatechoedtoolcall.go | 39 - .../internchatechoedtoolcallfunction.go | 38 - models/components/internchaterror.go | 48 - models/components/internchaterrormetadata.go | 62 - models/components/internchatmessage.go | 177 - models/components/internchatmessagecontent.go | 99 - .../internchatprompttokensdetails.go | 15 - .../components/internchatsteeredresponse.go | 54 - models/components/internchatstreamerror.go | 33 - .../components/internchatstreamingresponse.go | 20 - models/components/internchatsystemmessage.go | 64 - models/components/internchattextpart.go | 63 - models/components/internchattoolcall.go | 69 - .../components/internchattoolcallfunction.go | 52 - models/components/internchattoolmessage.go | 72 - models/components/internchatusage.go | 64 - models/components/internchatusermessage.go | 64 - models/components/internconnection.go | 287 - models/components/internconnectionlist.go | 14 - models/components/interndaemonaccess.go | 43 - .../interninvokeacceptedresponse.go | 48 - models/components/interninvokerequest.go | 25 - models/components/internlifecycleerror.go | 155 - models/components/internlistresponse.go | 33 - models/components/provisioninternresponse.go | 27 - models/components/signinterndaemonrequest.go | 87 - models/components/signinterndaemonresponse.go | 52 - models/components/suspendinternresponse.go | 27 - models/components/updateinternrequest.go | 47 - models/operations/createintern.go | 27 - .../operations/createinternchatcompletion.go | 139 - models/operations/deleteintern.go | 27 - models/operations/getintern.go | 15 - models/operations/getinternconnections.go | 15 - models/operations/getinterndaemon.go | 15 - models/operations/getinterndaemonaccess.go | 15 - models/operations/getinternicon.go | 24 - models/operations/invokeintern.go | 46 - models/operations/listinterns.go | 85 - models/operations/options.go | 1 - models/operations/provisionintern.go | 15 - .../signinterndaemonaccessrequest.go | 46 - models/operations/signinterndaemonrequest.go | 46 - models/operations/suspendintern.go | 15 - models/operations/updateintern.go | 27 - models/sdkerrors/internchaterrorresponse.go | 21 - models/sdkerrors/internlifecycleerror.go | 20 - openrouter.go | 7 +- 1388 files changed, 13319 insertions(+), 27279 deletions(-) delete mode 100644 docs/models/components/account.mdx delete mode 100644 docs/models/components/code.mdx delete mode 100644 docs/models/components/createinternrequest.mdx delete mode 100644 docs/models/components/deleteinternrequest.mdx delete mode 100644 docs/models/components/deleteinternresponse.mdx delete mode 100644 docs/models/components/intern.mdx delete mode 100644 docs/models/components/internapprovalmode.mdx delete mode 100644 docs/models/components/internchatassistantmessage.mdx delete mode 100644 docs/models/components/internchatassistantmessagerole.mdx delete mode 100644 docs/models/components/internchatchoice.mdx delete mode 100644 docs/models/components/internchatchoicefinishreason.mdx delete mode 100644 docs/models/components/internchatcompletionchunk.mdx delete mode 100644 docs/models/components/internchatcompletionchunkobject.mdx delete mode 100644 docs/models/components/internchatcompletionrequest.mdx delete mode 100644 docs/models/components/internchatdelta.mdx delete mode 100644 docs/models/components/internchatdeltarole.mdx delete mode 100644 docs/models/components/internchatdevelopermessage.mdx delete mode 100644 docs/models/components/internchatdevelopermessagerole.mdx delete mode 100644 docs/models/components/internchatechoedtoolcall.mdx delete mode 100644 docs/models/components/internchatechoedtoolcallfunction.mdx delete mode 100644 docs/models/components/internchaterror.mdx delete mode 100644 docs/models/components/internchaterrormetadata.mdx delete mode 100644 docs/models/components/internchaterrormetadatareason.mdx delete mode 100644 docs/models/components/internchatmessage.mdx delete mode 100644 docs/models/components/internchatmessagecontent.mdx delete mode 100644 docs/models/components/internchatprompttokensdetails.mdx delete mode 100644 docs/models/components/internchatsteeredresponse.mdx delete mode 100644 docs/models/components/internchatsteeredresponsestatus.mdx delete mode 100644 docs/models/components/internchatstreamerror.mdx delete mode 100644 docs/models/components/internchatstreamingresponse.mdx delete mode 100644 docs/models/components/internchatsystemmessage.mdx delete mode 100644 docs/models/components/internchatsystemmessagerole.mdx delete mode 100644 docs/models/components/internchattextpart.mdx delete mode 100644 docs/models/components/internchattextparttype.mdx delete mode 100644 docs/models/components/internchattoolcall.mdx delete mode 100644 docs/models/components/internchattoolcallfunction.mdx delete mode 100644 docs/models/components/internchattoolcallfunctionname.mdx delete mode 100644 docs/models/components/internchattoolcalltype.mdx delete mode 100644 docs/models/components/internchattoolmessage.mdx delete mode 100644 docs/models/components/internchattoolmessagerole.mdx delete mode 100644 docs/models/components/internchatusage.mdx delete mode 100644 docs/models/components/internchatusermessage.mdx delete mode 100644 docs/models/components/internchatusermessagerole.mdx delete mode 100644 docs/models/components/internconnection.mdx delete mode 100644 docs/models/components/internconnectionlist.mdx delete mode 100644 docs/models/components/internconnectionscope.mdx delete mode 100644 docs/models/components/internconnectionstatus.mdx delete mode 100644 docs/models/components/interndaemonaccess.mdx delete mode 100644 docs/models/components/interninvokeacceptedresponse.mdx delete mode 100644 docs/models/components/interninvokeacceptedresponsestatus.mdx delete mode 100644 docs/models/components/interninvokerequest.mdx delete mode 100644 docs/models/components/internlifecycleerrorerror.mdx delete mode 100644 docs/models/components/internlifecycleerrormetadata.mdx delete mode 100644 docs/models/components/internlistresponse.mdx delete mode 100644 docs/models/components/internstatus.mdx delete mode 100644 docs/models/components/kind.mdx delete mode 100644 docs/models/components/offreason.mdx delete mode 100644 docs/models/components/progress.mdx delete mode 100644 docs/models/components/provisioninternresponse.mdx delete mode 100644 docs/models/components/route.mdx delete mode 100644 docs/models/components/server.mdx delete mode 100644 docs/models/components/signinterndaemonrequest.mdx delete mode 100644 docs/models/components/signinterndaemonrequestmethod.mdx delete mode 100644 docs/models/components/signinterndaemonresponse.mdx delete mode 100644 docs/models/components/stateenum.mdx delete mode 100644 docs/models/components/suspendinternresponse.mdx delete mode 100644 docs/models/components/updateinternrequest.mdx delete mode 100644 docs/models/components/viewer.mdx delete mode 100644 docs/models/operations/createinternchatcompletionrequest.mdx delete mode 100644 docs/models/operations/createinternchatcompletionresponse.mdx delete mode 100644 docs/models/operations/createinternchatcompletionresponseresult.mdx delete mode 100644 docs/models/operations/createinternrequest.mdx delete mode 100644 docs/models/operations/deleteinternrequest.mdx delete mode 100644 docs/models/operations/getinternconnectionsrequest.mdx delete mode 100644 docs/models/operations/getinterndaemonaccessrequest.mdx delete mode 100644 docs/models/operations/getinterndaemonrequest.mdx delete mode 100644 docs/models/operations/getinterniconrequest.mdx delete mode 100644 docs/models/operations/getinternrequest.mdx delete mode 100644 docs/models/operations/invokeinternrequest.mdx delete mode 100644 docs/models/operations/invokeinternresponse.mdx delete mode 100644 docs/models/operations/listinternsrequest.mdx delete mode 100644 docs/models/operations/provisioninternrequest.mdx delete mode 100644 docs/models/operations/signinterndaemonaccessrequestrequest.mdx delete mode 100644 docs/models/operations/signinterndaemonaccessrequestresponse.mdx delete mode 100644 docs/models/operations/signinterndaemonrequestrequest.mdx delete mode 100644 docs/models/operations/signinterndaemonrequestresponse.mdx delete mode 100644 docs/models/operations/status.mdx delete mode 100644 docs/models/operations/suspendinternrequest.mdx delete mode 100644 docs/models/operations/updateinternrequest.mdx delete mode 100644 docs/models/sdkerrors/internchaterrorresponse.mdx delete mode 100644 docs/models/sdkerrors/internlifecycleerror.mdx delete mode 100644 docs/sdks/interns/README.mdx delete mode 100644 interns.go delete mode 100644 models/components/createinternrequest.go delete mode 100644 models/components/deleteinternrequest.go delete mode 100644 models/components/deleteinternresponse.go delete mode 100644 models/components/intern.go delete mode 100644 models/components/internapprovalmode.go delete mode 100644 models/components/internchatassistantmessage.go delete mode 100644 models/components/internchatchoice.go delete mode 100644 models/components/internchatcompletionchunk.go delete mode 100644 models/components/internchatcompletionrequest.go delete mode 100644 models/components/internchatdelta.go delete mode 100644 models/components/internchatdevelopermessage.go delete mode 100644 models/components/internchatechoedtoolcall.go delete mode 100644 models/components/internchatechoedtoolcallfunction.go delete mode 100644 models/components/internchaterror.go delete mode 100644 models/components/internchaterrormetadata.go delete mode 100644 models/components/internchatmessage.go delete mode 100644 models/components/internchatmessagecontent.go delete mode 100644 models/components/internchatprompttokensdetails.go delete mode 100644 models/components/internchatsteeredresponse.go delete mode 100644 models/components/internchatstreamerror.go delete mode 100644 models/components/internchatstreamingresponse.go delete mode 100644 models/components/internchatsystemmessage.go delete mode 100644 models/components/internchattextpart.go delete mode 100644 models/components/internchattoolcall.go delete mode 100644 models/components/internchattoolcallfunction.go delete mode 100644 models/components/internchattoolmessage.go delete mode 100644 models/components/internchatusage.go delete mode 100644 models/components/internchatusermessage.go delete mode 100644 models/components/internconnection.go delete mode 100644 models/components/internconnectionlist.go delete mode 100644 models/components/interndaemonaccess.go delete mode 100644 models/components/interninvokeacceptedresponse.go delete mode 100644 models/components/interninvokerequest.go delete mode 100644 models/components/internlifecycleerror.go delete mode 100644 models/components/internlistresponse.go delete mode 100644 models/components/provisioninternresponse.go delete mode 100644 models/components/signinterndaemonrequest.go delete mode 100644 models/components/signinterndaemonresponse.go delete mode 100644 models/components/suspendinternresponse.go delete mode 100644 models/components/updateinternrequest.go delete mode 100644 models/operations/createintern.go delete mode 100644 models/operations/createinternchatcompletion.go delete mode 100644 models/operations/deleteintern.go delete mode 100644 models/operations/getintern.go delete mode 100644 models/operations/getinternconnections.go delete mode 100644 models/operations/getinterndaemon.go delete mode 100644 models/operations/getinterndaemonaccess.go delete mode 100644 models/operations/getinternicon.go delete mode 100644 models/operations/invokeintern.go delete mode 100644 models/operations/listinterns.go delete mode 100644 models/operations/provisionintern.go delete mode 100644 models/operations/signinterndaemonaccessrequest.go delete mode 100644 models/operations/signinterndaemonrequest.go delete mode 100644 models/operations/suspendintern.go delete mode 100644 models/operations/updateintern.go delete mode 100644 models/sdkerrors/internchaterrorresponse.go delete mode 100644 models/sdkerrors/internlifecycleerror.go diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index 1ee1df671..94726f94b 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,18 +1,18 @@ lockVersion: 2.0.0 id: 9eea3e30-2722-4060-973b-57b7f1f75dc0 management: - docChecksum: a93462ad95eb961164f13303e6e306c6 + docChecksum: 60a0763aada8788abbe70d894d43e338 docVersion: 1.0.0 speakeasyVersion: 1.787.0 generationVersion: 2.914.0 - releaseVersion: 0.9.74 - configChecksum: 9ebde78a96f3570169ff9e14545b3061 + releaseVersion: 0.9.75 + configChecksum: f9b2708e1b2b193cd482918c7de949d1 repoURL: https://github.com/OpenRouterTeam/go-sdk.git installationURL: https://github.com/OpenRouterTeam/go-sdk persistentEdits: - generation_id: 2660e758-e0dc-4f93-a997-295b7c6bbbe2 - pristine_commit_hash: 1cd01256422af856d41358b72c2774edc7a4e861 - pristine_tree_hash: 638c69310ae5dc307867cc2f64ae5bfd85bace00 + generation_id: afe3f52c-bfda-4cf4-933b-7d531e39a732 + pristine_commit_hash: cd3dce2b6b4f7a513152e225fccd5173d24b8417 + pristine_tree_hash: 41ac746d0e78415c8cbd01befddb61e18b8a4979 features: go: acceptHeaders: 2.81.2 @@ -105,8 +105,8 @@ trackedFiles: pristine_git_object: e42e998a52393f4383d552294b55d8c7ced67845 chat.go: id: 81535ccb3ff5 - last_write_checksum: sha1:bf12b147b40656ae0086e01601410f01ae94e039 - pristine_git_object: 3ec067932ab585739098c417f40010f895bed95e + last_write_checksum: sha1:3fe05c99a2a3f927bac689dc6dd9f0e6c51bc7b3 + pristine_git_object: fedc9b46b5d2a7a4fc521b1af68b563cf4e116d8 classifications.go: id: 711367120ab6 last_write_checksum: sha1:1503d324707d56ecefdc2ec29ada40857bbff956 @@ -131,10 +131,6 @@ trackedFiles: id: 4fbde2a0a74e last_write_checksum: sha1:bcb2be33042e1e5443f4a3a74c866778eed9436c pristine_git_object: e22b143cff5641e1ad7593c0f575bb3d13ceff03 - docs/models/components/account.mdx: - id: d8de2fbe346c - last_write_checksum: sha1:599b85e5af5e529099483e3a7ec29484b0a88290 - pristine_git_object: c64ec21a405ac82168440581c82cbc2e5e221de2 docs/models/components/actionenum.mdx: id: 5dc351dbd508 last_write_checksum: sha1:5b067ed236c3a27e29204157605e3e11f35c4fed @@ -2223,10 +2219,6 @@ trackedFiles: id: 0832b7f80aa4 last_write_checksum: sha1:cbb0ae08521f5946051d3e20302c19686e71b473 pristine_git_object: 3af4502a55d406466cdd1b159e59c1f23c731074 - docs/models/components/code.mdx: - id: cf2feb5f0613 - last_write_checksum: sha1:161d20d2845bd27b0685a9c84387899c7c71e652 - pristine_git_object: 4edfa740a6401be1f9dab9518952206e9b153fd0 docs/models/components/codeenum.mdx: id: b06c2adf0655 last_write_checksum: sha1:b85ef2a2ad966809b36b1b154bc0418c21d20ee2 @@ -2635,10 +2627,6 @@ trackedFiles: id: 71fa8e3f3541 last_write_checksum: sha1:21cef45a4df2643a8eaa8fa19687048a2d80308b pristine_git_object: 0c0484aff9f3676cf7cefc603970dd8761ce1e59 - docs/models/components/createinternrequest.mdx: - id: 656b7c6200d6 - last_write_checksum: sha1:e764922b126a2f8daa58b2b38be9e9cdd33ecb9d - pristine_git_object: 77788102af75ca0f2a3b6e1d00450dff9a686df6 docs/models/components/createobservabilitydestinationrequest.mdx: id: 8ec187273392 last_write_checksum: sha1:17a50466e48edc33adc70c33b16cafd138db94cf @@ -2959,14 +2947,6 @@ trackedFiles: id: 8ca6cbd09467 last_write_checksum: sha1:c7e88c7b387f9d4b65919612620d1671ed460a5e pristine_git_object: ee9b0e2bb0e7eb88b6822864afb94dc942fceb15 - docs/models/components/deleteinternrequest.mdx: - id: ccfa19a9cfe9 - last_write_checksum: sha1:f932dec6486544e1a5b7c2fc4f87e0152f2f99a6 - pristine_git_object: b2691a0d50dba4eab347fe480c41aeb7d2479ff7 - docs/models/components/deleteinternresponse.mdx: - id: a06efffa3a50 - last_write_checksum: sha1:53541d4be49ca05a540fa33a2914eb262aa48961 - pristine_git_object: 2d09b36dbdbeba2f048a18f9865d4cc52486df16 docs/models/components/deleteobservabilitydestinationresponse.mdx: id: 494a252654bf last_write_checksum: sha1:71b30b5131c5976674f4418511e6e5e177ed269a @@ -4039,210 +4019,10 @@ trackedFiles: id: 97f01dcc74ea last_write_checksum: sha1:f2ed68f7cf24349ff991b4ab2432fabc770fa5ad pristine_git_object: 5dc4b37fea61334e3c5334aa87acdf955423cc59 - docs/models/components/intern.mdx: - id: f78d0adceb65 - last_write_checksum: sha1:c74d7bccb4e1a8d492e3728bba7d447be034d663 - pristine_git_object: 926406e1d9e1f75f2ac6a58942c3a2939bc8ef49 docs/models/components/internalserverresponseerrordata.mdx: id: c65888573375 last_write_checksum: sha1:dc84b48c227aae794c209db2c767c5f90b5a0cd8 pristine_git_object: 7af4937fc5349179e3e37b93c0606b0c4e4b1b90 - docs/models/components/internapprovalmode.mdx: - id: 9c2554d7269b - last_write_checksum: sha1:53fe6ac73fa9238d78f8bfd66b44b9d6cbd2188c - pristine_git_object: 8b871d1ac300d8b87dcad90e3086691e8da03c86 - docs/models/components/internchatassistantmessage.mdx: - id: 7e699b0b7ee4 - last_write_checksum: sha1:4b52e5baef861b5795e0530e16a336846b2dc57b - pristine_git_object: 9acf19ded6cd26fdd79e8bf96b2cff83654ef650 - docs/models/components/internchatassistantmessagerole.mdx: - id: 1c2ebfdee197 - last_write_checksum: sha1:329150a69c6e7d7fa5a7db2e917242e466219a63 - pristine_git_object: 30186627281c52f57cb6266cff34601c6b78125e - docs/models/components/internchatchoice.mdx: - id: 87e07e7b820d - last_write_checksum: sha1:d1982d63c17ae8e62899aeedcb3b61b996ead3e9 - pristine_git_object: 664c706b946ec4935152186a46d67c6ebf9a2a44 - docs/models/components/internchatchoicefinishreason.mdx: - id: 15e66434fe22 - last_write_checksum: sha1:ef54c9892c913bc3df9e5b7b124b103a13830aed - pristine_git_object: 7248bff0026c0202c5e3b790b477625fe7b34ce3 - docs/models/components/internchatcompletionchunk.mdx: - id: c3baff1c8db7 - last_write_checksum: sha1:665d8e0b3558e615350f5be1d893246d975d06e1 - pristine_git_object: dab91c5111631f9a58f944c9527a36014bd80296 - docs/models/components/internchatcompletionchunkobject.mdx: - id: 6ebda32ce3e7 - last_write_checksum: sha1:ceac4d3cbe37fd5efea13299909aa81fd43f101a - pristine_git_object: 160eb890e4c558d20ef558b5d8a59993d8f78078 - docs/models/components/internchatcompletionrequest.mdx: - id: 01c1b4d5e8c3 - last_write_checksum: sha1:3ddf5d841e57ce73c186c4bc444d0b795d660cce - pristine_git_object: 9c38d1be45f8ab40fd93aa49a6f6430ca074c752 - docs/models/components/internchatdelta.mdx: - id: 13d1516434b0 - last_write_checksum: sha1:91944cac25462aaafe25d60a08e0da40e0ba0e19 - pristine_git_object: b747770502d0ec79a3da2bf32384800bd1ec979f - docs/models/components/internchatdeltarole.mdx: - id: b8be9d79c161 - last_write_checksum: sha1:55c64f0beab2953c48116e34b1ae7405fc57ef3e - pristine_git_object: 554646f40df5ac553d61d02942551218d9dafd03 - docs/models/components/internchatdevelopermessage.mdx: - id: 6d9c2260a5ae - last_write_checksum: sha1:d677928e7cf4a19ae267b3b24c62282df36f6208 - pristine_git_object: 183ab668bcd4fb6c7a8fd55796611953452557e8 - docs/models/components/internchatdevelopermessagerole.mdx: - id: 335e80d864cf - last_write_checksum: sha1:eb647523bf88665d96676fb0497fa6c420aea99d - pristine_git_object: d6a26b782c34a599f11aeba1f3b80d6e7fc87fd2 - docs/models/components/internchatechoedtoolcall.mdx: - id: 6a4e83caed42 - last_write_checksum: sha1:bc1a9109fd330fb7247f3e1e95b63e729bbc428e - pristine_git_object: 2b254f11afb7b9fa75a245cf30157d25fa7c4d6c - docs/models/components/internchatechoedtoolcallfunction.mdx: - id: 84cb05c732d4 - last_write_checksum: sha1:680c1ede14e4351dbd897c3e72f57f21bc1fbf16 - pristine_git_object: f6ab40d5bdcb74ebfe21c04a612c941c84689fbb - docs/models/components/internchaterror.mdx: - id: ffa00f0ff9ef - last_write_checksum: sha1:4099747fe4c83f18aec24d1d4e42377236186299 - pristine_git_object: b73e6a46658f81efab8ef674e5c110d4a7bc9dae - docs/models/components/internchaterrormetadata.mdx: - id: 6450e8171d52 - last_write_checksum: sha1:5c935dcc843b6b0a3ffa46bc30355b756120a3a5 - pristine_git_object: 12f6a72ad7b38f2ae6a9204a6c53f01e22242f32 - docs/models/components/internchaterrormetadatareason.mdx: - id: a909805aaa98 - last_write_checksum: sha1:ebe51e4d973a194693e80fff4287082e1a2fdeb3 - pristine_git_object: 7a989a64bfcb2da95a24275d6225dca9bdeea7b4 - docs/models/components/internchatmessage.mdx: - id: 9d6051cd2978 - last_write_checksum: sha1:968d06e54dbd11ac0cd94c16a0024fbdaa14f01c - pristine_git_object: b85eb0ffedc4edada9df359b294c586fb4a138c8 - docs/models/components/internchatmessagecontent.mdx: - id: bc8c33d22a61 - last_write_checksum: sha1:5b138f1ac297ad55bbdcbfaed80baa7fe71b7ae8 - pristine_git_object: 22a092082305b9757158e6d74ca3c043483bff54 - docs/models/components/internchatprompttokensdetails.mdx: - id: 792b4f7f488f - last_write_checksum: sha1:e156a0c8e02cb595313ab96c3ac48c0f7caf8538 - pristine_git_object: 6815878789ad3de0b8e4b79f5dfb49d9a9c86abd - docs/models/components/internchatsteeredresponse.mdx: - id: 0ce999197200 - last_write_checksum: sha1:9cc44868cc398bfe903bde45ca9deab3bc9c8eea - pristine_git_object: 506e62b4ddcd4b8f65c4dc6103220acf2ffd1835 - docs/models/components/internchatsteeredresponsestatus.mdx: - id: 19be4b77028a - last_write_checksum: sha1:8d4c8d44cfcb7276e250a29fa352d946e98a1c0a - pristine_git_object: 0218432adaddab45812a1e9f0435831cf2bc2149 - docs/models/components/internchatstreamerror.mdx: - id: 3e395ac844f6 - last_write_checksum: sha1:14297fde47b9680240c9111b4cb3ff04d6c43aa9 - pristine_git_object: 35cd71166e89aee1fad9e93690cf486291fff845 - docs/models/components/internchatstreamingresponse.mdx: - id: 26bc309beab8 - last_write_checksum: sha1:3cf102a5dd097fbdb713cb90e2bc8b682df556c1 - pristine_git_object: 2b7d37d8a2f12716f5d927fceb409a2d3f1e80be - docs/models/components/internchatsystemmessage.mdx: - id: 66034cae428e - last_write_checksum: sha1:4c8a6eb6141241d2d52e6fdaf44674c3dcd96884 - pristine_git_object: 3f205342c037847991606409d8f24c2f8a267f88 - docs/models/components/internchatsystemmessagerole.mdx: - id: e52fd7c4fd2d - last_write_checksum: sha1:9e6764ed85b2842ae69c2af70afa260ae3b50208 - pristine_git_object: e72b0e26fd7f6e273912b98f79ae8e3e9081ba32 - docs/models/components/internchattextpart.mdx: - id: 31d9c81cbb9b - last_write_checksum: sha1:686a6fbe163f15e820e1b9942b8cf4740200daf7 - pristine_git_object: e2e867c9ef216e2f135c2d1f4f68fdf08a79eb00 - docs/models/components/internchattextparttype.mdx: - id: e4a7bf70e1f9 - last_write_checksum: sha1:bf5c7bf923e02a914eeddeec9e9494b3858872c2 - pristine_git_object: b401f092715e2d092a959011ef54cb648fcc8039 - docs/models/components/internchattoolcall.mdx: - id: 452ba4dc46bc - last_write_checksum: sha1:ab4cb4feb83f66a809c0cc6e8ad4d9c8f84ec9a6 - pristine_git_object: f66825e7da7800e6a89d677f678cd61d5a1cd791 - docs/models/components/internchattoolcallfunction.mdx: - id: c5e706cacaf8 - last_write_checksum: sha1:9388815e4d29d4be5da09e75277e7313813948cd - pristine_git_object: 8e744a96c420cfd64dcd79e9f07e8b8c60488b48 - docs/models/components/internchattoolcallfunctionname.mdx: - id: 5506d48d2769 - last_write_checksum: sha1:ee8aa3e2491792579faea4e03eec9140fd295ee6 - pristine_git_object: 89dd0a2f73186fe9663a2a46f119e24deff9be2e - docs/models/components/internchattoolcalltype.mdx: - id: f2c60ee5340a - last_write_checksum: sha1:28f33f44655a002539276f1d68d3b95af8e92679 - pristine_git_object: 34855645107b9f49c58dd0f897e753f875f00d16 - docs/models/components/internchattoolmessage.mdx: - id: b5363035a2cb - last_write_checksum: sha1:90f5fd873736a7bc5604020f3d4749220b1acbc5 - pristine_git_object: 50f79e2fe407b0aa59d79e9c505aa308bd83c588 - docs/models/components/internchattoolmessagerole.mdx: - id: d3b005fdb35c - last_write_checksum: sha1:7d526e1b7be5ceb517ccff31d86ea1d9063f6898 - pristine_git_object: 8af48c06fc25e8c1a1724f107c2e21d283b9970a - docs/models/components/internchatusage.mdx: - id: fbc194a608b5 - last_write_checksum: sha1:d97b68f8ebab03f214f5df281803d0ce49e9375b - pristine_git_object: 093de080aa02e494f484b67cc0f8199cc39a6a08 - docs/models/components/internchatusermessage.mdx: - id: e72873e7e53a - last_write_checksum: sha1:31d35d622dcc33ee1e3b6cea6a97dd41c110f118 - pristine_git_object: f76615f96fc9dd0e8cbb363914104ff532cbc8cd - docs/models/components/internchatusermessagerole.mdx: - id: ec4a0537a6f4 - last_write_checksum: sha1:ae459ed5ab430af275fe5a3116a49ad8392b487b - pristine_git_object: b973c623911aa556d8baa58e6ff292024c18b46f - docs/models/components/internconnection.mdx: - id: 3ccc8398d7ee - last_write_checksum: sha1:09edc29adf3f66566ad13411a5c05ff02001f7e3 - pristine_git_object: 65a3b68857734008dd0cf8c5875bc699d1e2b1ff - docs/models/components/internconnectionlist.mdx: - id: 7849d019fbed - last_write_checksum: sha1:5a778618b7d912359c792cca553d56774ca99349 - pristine_git_object: 63f4fe1bf737fd0e088b9a8e8fc8fa8d1ef99906 - docs/models/components/internconnectionscope.mdx: - id: c8db2e10d9bd - last_write_checksum: sha1:28b8a08b486bdfb4468c23b9b37c920076e31d19 - pristine_git_object: 6c2edc6f6aaf703e482b206f184493831189c2cd - docs/models/components/internconnectionstatus.mdx: - id: 2ad65a83c146 - last_write_checksum: sha1:c07c9dd03438ac8d7235db223483cb77e8b44cfe - pristine_git_object: 048965335a4e37037bfeadb9b793382df7b3a899 - docs/models/components/interndaemonaccess.mdx: - id: c7ed113384d9 - last_write_checksum: sha1:8dff7952ecaec0396683c263fb8bade91515d524 - pristine_git_object: 07dab816b721a579720028f0e42876fe0fc5321c - docs/models/components/interninvokeacceptedresponse.mdx: - id: c833cd76278f - last_write_checksum: sha1:bcb67c421aaff03d8aad5b82e47e3c8a888ce40b - pristine_git_object: f8b0aa68850ea5bac4e251f69c1b0230548990f9 - docs/models/components/interninvokeacceptedresponsestatus.mdx: - id: 952af689c46e - last_write_checksum: sha1:0d75dd9208b7b4e89aaf6697bea16fe55ddff953 - pristine_git_object: 0e7e61ffba3b6a5498a8f339d6815374438bb003 - docs/models/components/interninvokerequest.mdx: - id: 806e0e4ca8cb - last_write_checksum: sha1:8ba0c22fb28c5998599deb77efa774b7ff110692 - pristine_git_object: 41ce1500595d35bca986812a40371aac6cdbc046 - docs/models/components/internlifecycleerrorerror.mdx: - id: 4abbfd15cb34 - last_write_checksum: sha1:82335d1afe89f0fe8fc3a97dd33662bafa2fea7d - pristine_git_object: 5007be0387021ba8169e4131efc8d2a9bdaa2b51 - docs/models/components/internlifecycleerrormetadata.mdx: - id: f5cca31d720c - last_write_checksum: sha1:115333a4add3a9438671530eface1a855cd5194e - pristine_git_object: f62c41b9ce63bcd8a9706b62753cbf475b76f394 - docs/models/components/internlistresponse.mdx: - id: 2397d50e45e4 - last_write_checksum: sha1:58dc98e93c05f013a35ada08d5a55556920db0da - pristine_git_object: 5b8d261a0ab33547a0adb00fe879e8280840c0b5 - docs/models/components/internstatus.mdx: - id: 840bb2495442 - last_write_checksum: sha1:ebf0d2206efe16e5e865c2ce06b759b6c98bb90d - pristine_git_object: 03d5e6c6781505eb22195368193d00bfe0d2b5d1 docs/models/components/issuedtokentype.mdx: id: 8116182632fa last_write_checksum: sha1:1ba5135c8d4e871fbc88012f3fcc4ae9407e109f @@ -4299,10 +4079,6 @@ trackedFiles: id: acf63e94c8d5 last_write_checksum: sha1:64eed60fef265a8a6daa4998dba5bdd6b618b664 pristine_git_object: 369b5188783150dba702919c44b109f31beec3e4 - docs/models/components/kind.mdx: - id: f471ed3500c9 - last_write_checksum: sha1:065f6200be9b35784c0e4076ad4ef84b0a4a8f38 - pristine_git_object: 536305ef7c0d6843ab3dc09bac83e671b858474f docs/models/components/kty.mdx: id: 9fbf64388540 last_write_checksum: sha1:0bf78e3c3e5ae79fa812e9f0d996bf2ed7b5fd00 @@ -5143,10 +4919,6 @@ trackedFiles: id: 352844b15703 last_write_checksum: sha1:bf2c0affffdab273a998777ea3d9a66387bcfa45 pristine_git_object: 5f8d64c707c161500ffde18d39211fe4ead58d04 - docs/models/components/offreason.mdx: - id: 17ae2ed6002e - last_write_checksum: sha1:96f8782202471223ee900826cecbe9ab1a82c899 - pristine_git_object: ee759a75ba339a29ea0f18df5b00a1bf80292687 docs/models/components/onerror.mdx: id: 3b102c58efa4 last_write_checksum: sha1:25a69a2c8324b71ea7d397569561dc0f1ab25cf2 @@ -6415,10 +6187,6 @@ trackedFiles: id: 288f05812862 last_write_checksum: sha1:67ce090713f4dc2debf9b1154ece474063783db0 pristine_git_object: b3a9538916be0c0304d23a7bd02573d9f9ec5d2d - docs/models/components/progress.mdx: - id: 6ff4212c49c1 - last_write_checksum: sha1:4bae60cd3527c9f66007c508ba0090a4bf56809d - pristine_git_object: 9ca155e3d499ca5fedae90e1e6d15ef899fe39d5 docs/models/components/promptcachebreakpoint.mdx: id: 3cfa1069a5a0 last_write_checksum: sha1:55b303d9d0d2088fdbd39f94376faf4144042aa3 @@ -6491,10 +6259,6 @@ trackedFiles: id: 1b610475e645 last_write_checksum: sha1:c5e9138255c3601a7894e833abe38369e8e6abd8 pristine_git_object: aa7bef7f413a5addb48282d7113b5ae76183f467 - docs/models/components/provisioninternresponse.mdx: - id: 17af0c1df544 - last_write_checksum: sha1:a15bfcc3edc9f399a1c1a0c846f5c93303c47e70 - pristine_git_object: 0b1066907451e465095ec04fcf71cbf4e6019a38 docs/models/components/publicendpoint.mdx: id: 63d6ef18c590 last_write_checksum: sha1:06862602f5b1a8c5eb71132bfd09bb335857915c @@ -6835,10 +6599,6 @@ trackedFiles: id: a51a1ee93326 last_write_checksum: sha1:11ea1b7862f09e3f5608b19301f54c1263e9a7c0 pristine_git_object: 73afd94b6ad37b1ef0d6864ffa08c84c91b5e8b1 - docs/models/components/route.mdx: - id: 4b98127b3373 - last_write_checksum: sha1:42596e83a909a43dcefacb82903cdf82c7920b0b - pristine_git_object: 638f3e861df14321c257b3f745c258749dc9160f docs/models/components/routedservicetier.mdx: id: e96c796932fb last_write_checksum: sha1:09048968195f891ea082f2177d3445ad64331b65 @@ -6907,10 +6667,6 @@ trackedFiles: id: a95db74ad7a7 last_write_checksum: sha1:402c1b5a7c491fbdfbb5ff59cf469d739e4d8bc1 pristine_git_object: 8015ad3c4c87db9cdeb9b37bad4e1d64e1d820da - docs/models/components/server.mdx: - id: 12e0d427db81 - last_write_checksum: sha1:be35a4ea89248e3497bd76478466f8cc74600ef9 - pristine_git_object: 56aa23e46388d58fdc3c75313b8f12ee96ddf5b9 docs/models/components/servertool.mdx: id: 92227db4a329 last_write_checksum: sha1:24032c944fd9fa0439d52785eb78ec4c6e071d79 @@ -7063,18 +6819,6 @@ trackedFiles: id: c36f557e0536 last_write_checksum: sha1:d6984fb758d574a6b790c7377d88a9eb4bda972f pristine_git_object: 076bb3e656d7c8ecec47d7d397834b6a611b9354 - docs/models/components/signinterndaemonrequest.mdx: - id: 2801144d26fd - last_write_checksum: sha1:1ab635e9d8402438b440d13fe1761911ba2de255 - pristine_git_object: 2a480e8712f0b54812cf21e1401ed8176ff68a46 - docs/models/components/signinterndaemonrequestmethod.mdx: - id: 0296a39bfe31 - last_write_checksum: sha1:8bfe6ff0a7084170026c083beb75f02baf7a1f12 - pristine_git_object: b659a03d6bed0a05fafd6812cd85a318c0f06594 - docs/models/components/signinterndaemonresponse.mdx: - id: 222066ecb4ce - last_write_checksum: sha1:e21d980b9e892af0c84158fd23e7bba4beac2aa7 - pristine_git_object: 624222a75436b907790c4a035895abb862aca8d2 docs/models/components/softdeny.mdx: id: 21751070916d last_write_checksum: sha1:c82134057c7d641bb50a6aced3af1e88ddd97a07 @@ -7159,10 +6903,6 @@ trackedFiles: id: 1287e55f4d4a last_write_checksum: sha1:3ef6897b42d4fb8e9ea8f94368da6887bacbd1cb pristine_git_object: 64ce8ad801a05eb39109e0fd3a1ff9923c9fd560 - docs/models/components/stateenum.mdx: - id: 6215c6b08538 - last_write_checksum: sha1:0c48c4b69a0ce2dc258417b2494e5dafcd652732 - pristine_git_object: e13beb45103ac22c7442499b067ecf1362638dc0 docs/models/components/stopservertoolswhencondition.mdx: id: b537c8479830 last_write_checksum: sha1:0823279da288e154e8e0f837a57f4efa5e8f0b60 @@ -7383,10 +7123,6 @@ trackedFiles: id: 7deb1ece8360 last_write_checksum: sha1:67c8d1e77fa9fe12306a29c8427d90668e9cb391 pristine_git_object: 0a6f6deb92b95da39a314799ff4b211ced61ad42 - docs/models/components/suspendinternresponse.mdx: - id: c3020720ae3d - last_write_checksum: sha1:349e682701e502e7aeacd1c5aa32a6fbbceeab25 - pristine_git_object: 5f1fdbb8f7994cd443541ec53c873897887a374a docs/models/components/switchyardrouterplugin.mdx: id: d0001743a973 last_write_checksum: sha1:af617d121d8ab4e85f881f246f8bf39a6debcd9a @@ -7935,10 +7671,6 @@ trackedFiles: id: c4d79f6839a6 last_write_checksum: sha1:25009ed6c148c0fbec500cc343fdf812e29b7b4e pristine_git_object: 1e5506c82b7d46f68dd8245a3e9a08bf1944750b - docs/models/components/updateinternrequest.mdx: - id: 6b39ae9892b8 - last_write_checksum: sha1:b01a33baff64c7a228b4d09621921896a738bac9 - pristine_git_object: d8a2a4bbcc4b40436506976dea0df9973ee64ef2 docs/models/components/updateobservabilitydestinationrequest.mdx: id: 3b906c4d9086 last_write_checksum: sha1:7b827e6073ef06a88cc7ae47e561f8b82a1eca61 @@ -8131,10 +7863,6 @@ trackedFiles: id: 0bf98133a121 last_write_checksum: sha1:0f59509353c553ab3d89c012338770de9e09777a pristine_git_object: 635d4df44d3e79dd3eff5edc5b5c403194974216 - docs/models/components/viewer.mdx: - id: 74fe4b75e05e - last_write_checksum: sha1:c234a9ff00f4cc429732d8d437796ebe090d679c - pristine_git_object: 9cf6a134aa6e59b8eeccc2a5a76a5780e3550e30 docs/models/components/watch.mdx: id: 7833dc804790 last_write_checksum: sha1:8885f472cc850684e907e088fc073919a649b7f2 @@ -8427,22 +8155,6 @@ trackedFiles: id: 0846421a24fc last_write_checksum: sha1:ece06b4181c1aa7f7cdba118cbc4a5d172c5a274 pristine_git_object: 15bafa03e6f39db41bf4c1c730c1dcd34134ed52 - docs/models/operations/createinternchatcompletionrequest.mdx: - id: 4f8dc8d59d98 - last_write_checksum: sha1:42d624a5b9781fba42f54eb4786be28e33e663fe - pristine_git_object: 5cf4d6608d8ab541f8ac5d192f3227fce953ac43 - docs/models/operations/createinternchatcompletionresponse.mdx: - id: 658bd77b0441 - last_write_checksum: sha1:1c0acd40119bd1a5e0d1c7a4c81dafa758ab42fd - pristine_git_object: ae5d813fc40299a751d0abb1a4b0fb664e26645a - docs/models/operations/createinternchatcompletionresponseresult.mdx: - id: 1ebdfc024b3d - last_write_checksum: sha1:34f63df63bba2bcc146b020cb31b92699ac9fcd7 - pristine_git_object: c2d0c925a9c40782b4b7f989f9a296b1d01f5e5b - docs/models/operations/createinternrequest.mdx: - id: d2745e216be4 - last_write_checksum: sha1:4758e516c900351f62dc209478592159f64f42fa - pristine_git_object: 812090510fab01aefbc1a86c3d1f2c33509e7b20 docs/models/operations/createkeysdata.mdx: id: bfdef9b8abf8 last_write_checksum: sha1:f3ff6467d4ccadddfc39a66db754b0d596f0ca87 @@ -8527,10 +8239,6 @@ trackedFiles: id: e0a51928fb8e last_write_checksum: sha1:9ff7b85421c4693ff156cc7c3dc969122a641a5c pristine_git_object: a89dfc0121f75e7b38b961e0dd6029e7f0ae104e - docs/models/operations/deleteinternrequest.mdx: - id: 4e5711c1de17 - last_write_checksum: sha1:11a46abde70f6095cfba0e55c782e4f436504ab6 - pristine_git_object: 1afa9fe2e95788f2ad005d27eb0980a4eacb13fd docs/models/operations/deleteinternvaultsecretrequest.mdx: id: d1aa47a39e4f last_write_checksum: sha1:6bbb6a58dd1d1d7027aeb20fbe5bba55a392788b @@ -8715,26 +8423,6 @@ trackedFiles: id: fafa5172a6b1 last_write_checksum: sha1:5c71c313d2fc014041b7de49a8c7e5b7cacfcd0d pristine_git_object: f66e886eb8ea70a90adfa31cedae720dd9389b7c - docs/models/operations/getinternconnectionsrequest.mdx: - id: 95c4b909f758 - last_write_checksum: sha1:441f5e02ddc6d97e3e65582866c8ef4446e64a16 - pristine_git_object: 1b07ac856571c5f87ba62c77ab0b6f05dbf14673 - docs/models/operations/getinterndaemonaccessrequest.mdx: - id: 7c557e903580 - last_write_checksum: sha1:3e87c8c6dd5366092c75fcfc8780a2ad487acd89 - pristine_git_object: fcddf168aaf81894bc0af022a0ed6f5bdf2be7eb - docs/models/operations/getinterndaemonrequest.mdx: - id: b7f9c365664a - last_write_checksum: sha1:86dc904b4efb2b0a56fe1dc7a4e40b7d280b15ee - pristine_git_object: 0194b7a0b5b719b6bafcc793c0fe2e45ead6bb31 - docs/models/operations/getinterniconrequest.mdx: - id: ccf03a9fbe3d - last_write_checksum: sha1:744c2886cee6a94c2576070874bb13a4a4a1ecef - pristine_git_object: 05bdbc632f7f0c76430aef12a08a7df29e16a7bb - docs/models/operations/getinternrequest.mdx: - id: 7b20846959da - last_write_checksum: sha1:0983b105a2a73fd393ec27452e1ec27d4161e8dc - pristine_git_object: ccfda381801cbb02e7c541c5f8a531c63ab391c9 docs/models/operations/getkeydata.mdx: id: 07cbc34c3179 last_write_checksum: sha1:8a2bed05701b4f767cb2bd07cfb586f0371834f4 @@ -8871,14 +8559,6 @@ trackedFiles: id: e1966b690efd last_write_checksum: sha1:d993cadf9233f8c896407233ac55f59990d2d786 pristine_git_object: 9a534f94ad5f1e1b4d68890f0559ca08a7f21001 - docs/models/operations/invokeinternrequest.mdx: - id: 65b96c7175b1 - last_write_checksum: sha1:51e148b76278f52a8cd66b78698e00498c1a8d2d - pristine_git_object: 809d031dd2f029a8035b159fc3448b4ee13c6ca6 - docs/models/operations/invokeinternresponse.mdx: - id: f7ebc16e2abe - last_write_checksum: sha1:8a135be7c2665f191be82d4c4c8c78e0aae2704f - pristine_git_object: 0d577fbd976bed8c5d01414325833fba377b197c docs/models/operations/keepmembers.mdx: id: 591598fdced8 last_write_checksum: sha1:2afd656be11645ff4c87db6f0f84c725338fb20c @@ -8999,10 +8679,6 @@ trackedFiles: id: 903c64583cbf last_write_checksum: sha1:83377f261f09b31626004c56a6bed939af7fb7df pristine_git_object: aa12d39dddc7d7fa3b712440e56defa8548f8c46 - docs/models/operations/listinternsrequest.mdx: - id: 74ce63b4e73a - last_write_checksum: sha1:695d6f1c6821155c933a0eddbe7907d7dae4533f - pristine_git_object: ec14bfd776f81e5574ad07b78c1100e7648933fb docs/models/operations/listinternvaultsecretsrequest.mdx: id: 1871a507129b last_write_checksum: sha1:7b0af0a400128cb9bc3421b6e08bd29eb8b9ee1f @@ -9207,10 +8883,6 @@ trackedFiles: id: 45f471a16baa last_write_checksum: sha1:aa6ead07f075a625ae5c3b7e89740b8e943b6329 pristine_git_object: 1b3a7df77240e743299bb55d339ebf709c3c2a82 - docs/models/operations/provisioninternrequest.mdx: - id: 8d55ad201304 - last_write_checksum: sha1:97972d2b8b7f8472cc46e710d47cdbecedb8135f - pristine_git_object: c8e0762ca1ff9fe765055a966c1df0cb16dce3ad docs/models/operations/queryanalyticsdata1.mdx: id: 465047fb896a last_write_checksum: sha1:f9a349b4fee07f786180e94b45f92002bfae0e56 @@ -9259,30 +8931,10 @@ trackedFiles: id: 385bfde59033 last_write_checksum: sha1:34c87a3ab3a8626ad3aad3ae8aa2fe45f11531a2 pristine_git_object: ad88d9bb1759d512ae11d1e26fc007a069c98278 - docs/models/operations/signinterndaemonaccessrequestrequest.mdx: - id: b985e97fc8aa - last_write_checksum: sha1:c5f534041a915e3b8dec4600fe8f8c9d77fdf3ae - pristine_git_object: ffed5a92f1d396631775274b12620a3a83f8bba8 - docs/models/operations/signinterndaemonaccessrequestresponse.mdx: - id: b4751fbdb9c5 - last_write_checksum: sha1:56045326176042d465e36f7592eea14f527d2190 - pristine_git_object: 3d66673bcc69d7353c33bccab398b6bf970be693 - docs/models/operations/signinterndaemonrequestrequest.mdx: - id: b12cefeb6c09 - last_write_checksum: sha1:c99c5a476ef4713cafd920b4efe974d36854dea2 - pristine_git_object: 0cdf914aab715054e94d0e63851fda8a4b40a513 - docs/models/operations/signinterndaemonrequestresponse.mdx: - id: d21743f93421 - last_write_checksum: sha1:319ce7a482f5d5a1b8d47957cefa68b145207e47 - pristine_git_object: f69184d9898b4bd40d68aded386d70de075d4b37 docs/models/operations/source.mdx: id: b2403346c727 last_write_checksum: sha1:38b3c82ce2d71d9f290cad327ec82c06ebe195c8 pristine_git_object: 32445a9aae821503ce336f20fd2eaafd2ada889d - docs/models/operations/status.mdx: - id: 4bfc7a475c6e - last_write_checksum: sha1:907e75bba731597cf0d45082282c5c7f00e35ec6 - pristine_git_object: d7733e75676508488eb94dbb5a05f1fb1702bebf docs/models/operations/storeinternvaultsecretrequest.mdx: id: 4fa240ee75a0 last_write_checksum: sha1:d07cf0996d1405643cddb687df401f36a841852e @@ -9295,10 +8947,6 @@ trackedFiles: id: 6aab2481c387 last_write_checksum: sha1:60a9498b5fc573cbd8ec86fa8c0f6b4e2121c927 pristine_git_object: 0e46aa93931ac9f54aa021e3cba9f2a6f4039962 - docs/models/operations/suspendinternrequest.mdx: - id: 5d5559368bbf - last_write_checksum: sha1:87a8abeff7908776f95fb92a18d8332f40e62da0 - pristine_git_object: 8c236941f08914a8554b5cdf7815798331532ea9 docs/models/operations/tasktype.mdx: id: 68c45050be00 last_write_checksum: sha1:cda96cdcf1cccece601883b9aa4937a79f6690f3 @@ -9335,10 +8983,6 @@ trackedFiles: id: 28e8a7d06289 last_write_checksum: sha1:951286e0038b229a04d843c99a4f83fb449dd5e6 pristine_git_object: 696bfa2bfbb1f6b5fb8dcce838cb4e5fa740b853 - docs/models/operations/updateinternrequest.mdx: - id: d7405508da08 - last_write_checksum: sha1:3acb8294af52402bda8b7e2e245e58c34eafc312 - pristine_git_object: b2246f46c3f0653a66fb70e9f088bfd8e6b9e214 docs/models/operations/updatekeysdata.mdx: id: debc5fcf2038 last_write_checksum: sha1:e2acb157262ffc6c98ecd4442ee6cc385272beb8 @@ -9491,14 +9135,6 @@ trackedFiles: id: 5b5099d633fb last_write_checksum: sha1:17088406164a3c6638a8db8f0192b7827c897859 pristine_git_object: 30dde4738729e162d2d1b5cd03ae16c1823f5eb8 - docs/models/sdkerrors/internchaterrorresponse.mdx: - id: 190ac28e8f92 - last_write_checksum: sha1:a6eb019e694edd4fc20b17ae062cec904d3e07b2 - pristine_git_object: 069432a038fbc0292a05e7b5cb98422c2b46a450 - docs/models/sdkerrors/internlifecycleerror.mdx: - id: 10c8ee21c9e3 - last_write_checksum: sha1:bd1e2a8ff979b22c9f95f0752b4840f46e95b556 - pristine_git_object: f938a217707fd07996e5a23ebae18216166305ee docs/models/sdkerrors/notfound.mdx: id: ed0a2f3ddfa5 last_write_checksum: sha1:d76d333fd5ba73b697a8edf0844575f664a1763e @@ -9623,10 +9259,6 @@ trackedFiles: id: 534a6c102c4f last_write_checksum: sha1:fef3a5f9d92e1b02098a1555dbaacecf48c73fb0 pristine_git_object: 9abe56d206a750df1fe07c405a206502219594d7 - docs/sdks/interns/README.mdx: - id: 2f8a053ffe78 - last_write_checksum: sha1:d673556ba4844cde938810bc8c75a35bdaf04282 - pristine_git_object: 94a259e06b8a93f14c125fdfd8cd61a9a9f16063 docs/sdks/models/README.mdx: id: 58f1ca464e0b last_write_checksum: sha1:29f111b12edbecd9a5e0b178ef36b990cee1ba2c @@ -9795,10 +9427,6 @@ trackedFiles: id: 1133b2a27019 last_write_checksum: sha1:36a3e6fb95d71868d1755dbb3b924a37340c7ea7 pristine_git_object: b32a14db51857aafab25498ba32fa2905c92b5d8 - interns.go: - id: aad99db3b05b - last_write_checksum: sha1:b9abf927c8f6fbe78875a36586ae13a4d07164d1 - pristine_git_object: 4c609c9cd3745d6ebf62531594515394e4505699 models.go: id: 3af78faf181b last_write_checksum: sha1:1d110cfd364a059f442cb1fce1fac776fc4977ec @@ -10899,10 +10527,6 @@ trackedFiles: id: 65e5b5cb6746 last_write_checksum: sha1:53c063df40ab8f40e29a1ed628f4537f21b1cf3f pristine_git_object: a0f649ed0d639a2214ef55010ca43abf69497b7f - models/components/createinternrequest.go: - id: 998ce94158cc - last_write_checksum: sha1:bfd71672e82b23aea76c2e0d0500aa3a9421f98a - pristine_git_object: 8870ebdff2456dc6e3b28c4aad9ba1583f2a7230 models/components/createobservabilitydestinationrequest.go: id: 04ca6b57e0ab last_write_checksum: sha1:e8108f44f76a7eafc79a0bbf7eaac4e685239657 @@ -11051,14 +10675,6 @@ trackedFiles: id: a5ebffcc1604 last_write_checksum: sha1:55a2764939f0a1106c73c5d178ad97ff1cda6b99 pristine_git_object: d69c6ff8c0e7a771c05adf5dc4f24985bff9581d - models/components/deleteinternrequest.go: - id: 3f750dedf8a2 - last_write_checksum: sha1:ddc26d0cceee0b4bf59b9260892a656818b89f88 - pristine_git_object: 4c97bb61351339da09d2e19d5797ed3591698910 - models/components/deleteinternresponse.go: - id: 5725d6895d6c - last_write_checksum: sha1:cd6fb534ab5a06518c737bafbeb47c8fb6f23282 - pristine_git_object: 4d8c9f2a84ace61d18535ba4e93bff524104a082 models/components/deleteobservabilitydestinationresponse.go: id: 0b3e1c42bae2 last_write_checksum: sha1:91bef28ec6f2eadbe775c20e3f8603c397fca250 @@ -11495,138 +11111,10 @@ trackedFiles: id: bf3578e3cb46 last_write_checksum: sha1:aa09fb491b53265777a5f4c78aeca0ef9d022da7 pristine_git_object: 1a72a05439f81b74fe77ca2594469150b5af4f6f - models/components/intern.go: - id: df131a82366a - last_write_checksum: sha1:be5e9e81ae2c7851558f438a1157bd8dcb2a4db4 - pristine_git_object: b382d4eeacb7f7481e531831cf13cb19377e1673 models/components/internalserverresponseerrordata.go: id: 17e0c79d6a0c last_write_checksum: sha1:e8508d24275d050e8f74f62e6d62973d3e3b7c01 pristine_git_object: 9f9d1f27f137b5938a4419eea68c9e5414c8dc29 - models/components/internapprovalmode.go: - id: 06d708e84116 - last_write_checksum: sha1:fdcaee2e05d9d34e79eceb99db991e80e5578675 - pristine_git_object: e11d3835e79d9476f301591b44b70e5fe6bf5811 - models/components/internchatassistantmessage.go: - id: 75345c204944 - last_write_checksum: sha1:0e37e634b3173a5a6b59877d030f6b339f5be0e0 - pristine_git_object: 33a0a4849b11f2a8f625d8c26f461a07ccb2ea9a - models/components/internchatchoice.go: - id: b143a9912976 - last_write_checksum: sha1:ba9e3c18e6ad78d94964b837971738ca29eb1b6e - pristine_git_object: 9f5f58ace5e47e83e1f4523553cd7a148f3413a5 - models/components/internchatcompletionchunk.go: - id: c6ab21bf0e00 - last_write_checksum: sha1:d309c4642e4e4c07470711ea3f9617d2bb181118 - pristine_git_object: f525c5a92582601960c4217dfea2da3a78efe688 - models/components/internchatcompletionrequest.go: - id: b8e3106b8c61 - last_write_checksum: sha1:0395926afc37c3bee334689bddd7b13eaa5ee661 - pristine_git_object: e78000746b12b1719e0a44146992856e0c7feedd - models/components/internchatdelta.go: - id: 236bb0111abf - last_write_checksum: sha1:d56dca73000c27a97557fa3021b9adc77ccc4614 - pristine_git_object: 81bf783b71e2091240fd7324272d1bd3708adf1a - models/components/internchatdevelopermessage.go: - id: efae624c2b2b - last_write_checksum: sha1:039ce5fb6b4b75c71b580894bba1a0a18625a417 - pristine_git_object: 1870acb875fb778a1ffd95ce1391fe6e9262383f - models/components/internchatechoedtoolcall.go: - id: c56dce368bd1 - last_write_checksum: sha1:1f55e2beabaed66d287d30b4d2fe0ecd9c279f76 - pristine_git_object: 1ce21f75990f63f9236624ece4607b99948078ee - models/components/internchatechoedtoolcallfunction.go: - id: 87ab8454fd61 - last_write_checksum: sha1:ea3f19f476be35055634a6b9206d83cab16f5faa - pristine_git_object: 1d4ed37a337b0bb51f2974aa964460b76a2bc072 - models/components/internchaterror.go: - id: 362097fbce2c - last_write_checksum: sha1:cec35a938103054b296807ef183bf42aa45e78aa - pristine_git_object: c892c92714223dac8cb9e728b2a010c0bb4f14f9 - models/components/internchaterrormetadata.go: - id: 9be728b33ea9 - last_write_checksum: sha1:f63f06cc14c0b7dfbb0ed72725575a066d110b02 - pristine_git_object: 29330c5cb72fb113d25b0e0106bdffecf2bce00b - models/components/internchatmessage.go: - id: 7d2f58f5fcec - last_write_checksum: sha1:078264b46fa539c42cb3e7f9f8ffcc521a02cea3 - pristine_git_object: 8064bd2b34c18a0f9b6c2ffa57b5b07e08add84b - models/components/internchatmessagecontent.go: - id: d9e4eb765260 - last_write_checksum: sha1:164048da866587533744ce6c2defc416747b9492 - pristine_git_object: 1561060611bb247273a12a3f27b12957348010e3 - models/components/internchatprompttokensdetails.go: - id: 5d908f367bfd - last_write_checksum: sha1:590ee5c566a8f046024747f9c7e5323a18c0d6bd - pristine_git_object: 871efabc13428059eb76daeb1148d2d3f69518ab - models/components/internchatsteeredresponse.go: - id: 42041941fa63 - last_write_checksum: sha1:49c3d56a6ed3d9758d621251347864c101b723e2 - pristine_git_object: 0c5884e269ba9b370e21d85725c31ff597eedf27 - models/components/internchatstreamerror.go: - id: b9d3eae4024e - last_write_checksum: sha1:ed827654230f4ddb57d22b71ffcd95e30066e941 - pristine_git_object: 1328ac1fa8b19e37e27fb41b4b255e64fda4ad73 - models/components/internchatstreamingresponse.go: - id: bce9fc68620d - last_write_checksum: sha1:fc32cb507fc6aab5f57deeb196f7327a78258f99 - pristine_git_object: bf395375c0cb2d4ec455450e92005ece8482aede - models/components/internchatsystemmessage.go: - id: 83245940f83c - last_write_checksum: sha1:ee4b48ade0405294ee18f506dc535112ae605983 - pristine_git_object: 0a98ad6b5c023df4f43fb6fab1328d2332bd5ca7 - models/components/internchattextpart.go: - id: 44fb6e30f7cc - last_write_checksum: sha1:e38b42e7429bf682b351d1bd0f90bdf161c121bb - pristine_git_object: f5ac96dbbe016ccf0e3ef6e36d06dea1ed9bc57c - models/components/internchattoolcall.go: - id: 3f27b4ae1819 - last_write_checksum: sha1:7432ef3a52cd289be885401f8dcf1a195ae85939 - pristine_git_object: 764f7ba5871ef6d1e89bf666aebba503a9d8139f - models/components/internchattoolcallfunction.go: - id: f7a70bb5dc34 - last_write_checksum: sha1:5f78a3f36ad3c9ffba74a21a93ed33886e008db9 - pristine_git_object: 30179bef81165eca5afb92a771b0d8d163edd0cc - models/components/internchattoolmessage.go: - id: 4ff3904640c7 - last_write_checksum: sha1:448c3322cb071619e6ab08cde35aa4bb199ed20d - pristine_git_object: 13e1371061d4940bb70653b15f9f1c3c96ab2bcf - models/components/internchatusage.go: - id: c6cc660cc1e6 - last_write_checksum: sha1:2895e7459e0ef5f8e961a9dda41bcf88c6a50efc - pristine_git_object: 3c1c72aa1e5ecd3008492eb0eb26998aeac79c99 - models/components/internchatusermessage.go: - id: 71cd4cfcc27c - last_write_checksum: sha1:027c4bed41a29f4c439712eb7d42c567c70b8509 - pristine_git_object: 5d489fbe0165cc60ff5e99e23ff65308286f6e13 - models/components/internconnection.go: - id: 85dd34e1022a - last_write_checksum: sha1:9dec99baf4b9e436268971baebb89e3aa42a2592 - pristine_git_object: 4176f975112248972f170f37302bddf0ae0b11bf - models/components/internconnectionlist.go: - id: d8f1d27a111a - last_write_checksum: sha1:e7dc419bfda7b62b375c5a4ffd97efc387e2ac77 - pristine_git_object: 9737ecb17cc091f338e73e2505f17358a14c4d68 - models/components/interndaemonaccess.go: - id: 05e7a447eb45 - last_write_checksum: sha1:3c2484c1211caa78da4a995ca0ba3aeaa7f62224 - pristine_git_object: 89ed85957d162083aac7aae701c2945e2ac049e8 - models/components/interninvokeacceptedresponse.go: - id: "397111903274" - last_write_checksum: sha1:8028cd4209a833dbbbd20bb9eb1970886d59fd6f - pristine_git_object: 5a3958c5a12ab727afb7257d4b323bf2f9ba6159 - models/components/interninvokerequest.go: - id: a67bc3a8caf3 - last_write_checksum: sha1:8196cd16c04a3a5a745ab030f2d730cdb18ff5f8 - pristine_git_object: 4e0302b229048beb14527d0a998934413e9d6397 - models/components/internlifecycleerror.go: - id: 4e3bb3781ef4 - last_write_checksum: sha1:73b2cbcacd508a64040c46066d3e5a149a6a373c - pristine_git_object: 4f18e82b16471c01195aeccedf0bde8ad6c24135 - models/components/internlistresponse.go: - id: 8982b437c4f4 - last_write_checksum: sha1:d39cde3dc819f00a4f286af22317126b1a26edbf - pristine_git_object: 275b02705a461393be7bfcefec40fd643aedb536 models/components/itemreferenceitem.go: id: 16d768f20336 last_write_checksum: sha1:f24a0937bdf5ad2e09da1c5312b43aa4a14dae10 @@ -12471,10 +11959,6 @@ trackedFiles: id: 03c29ad26523 last_write_checksum: sha1:4b18dd748223741aeb3efacbc5c6970f5ab35fbb pristine_git_object: d913116c1e97092574832d3b377d2d1735055cd7 - models/components/provisioninternresponse.go: - id: b10071d06326 - last_write_checksum: sha1:e58eeb9339a2a9d355bd2ef6a8458f0943800701 - pristine_git_object: 1ef96ca8132f8e9c7657a7e7064dc44c720a046a models/components/publicendpoint.go: id: "32378212e204" last_write_checksum: sha1:4a392ff16c0240a7e156d63f45b277c9a9cb2b20 @@ -12751,14 +12235,6 @@ trackedFiles: id: 39591930569e last_write_checksum: sha1:63e7ab8c1ed737caf24e9d682054667d59a39c5f pristine_git_object: 696bbae97193bc399544e814a3e9d99a24522909 - models/components/signinterndaemonrequest.go: - id: 10d8c4761b5b - last_write_checksum: sha1:421ecf247618a4c04b3dbbd5a1f8bec18f0549f2 - pristine_git_object: 42a21c094565e4f3a89f8a57e519e513b9c4b61b - models/components/signinterndaemonresponse.go: - id: 5180e2f51b38 - last_write_checksum: sha1:642449e01c94f8ce1f283008f1d1edc71b36bb1b - pristine_git_object: cbd5903e6bd59b3ad93c55c17af5b425cc66ec51 models/components/speechinput.go: id: f06a6ad93262 last_write_checksum: sha1:5a026c303e277bcaee9ed6454deb65707c9dd37c @@ -12919,10 +12395,6 @@ trackedFiles: id: 76e8c9adf989 last_write_checksum: sha1:9620027d580a28157f0742083ad6062543cfb7c3 pristine_git_object: 2d57192698acb941ba44b1254596006f28110da7 - models/components/suspendinternresponse.go: - id: 9329984e2929 - last_write_checksum: sha1:425da1f5d505315e8ccd810ac10638e13fea642c - pristine_git_object: ff17d16126df12f1461091d12c9a6df89efabe73 models/components/switchyardrouterplugin.go: id: b309d3c90fc8 last_write_checksum: sha1:1f3824b82f6b01f0cc34a3d6076e7f13db0fc371 @@ -13067,10 +12539,6 @@ trackedFiles: id: 5a3580ea8a15 last_write_checksum: sha1:e17b7dc763b86b36d0ee259e888303506f220c9c pristine_git_object: 01fc59740a9602a907e838630a85a10bcd44a522 - models/components/updateinternrequest.go: - id: 811a2a1ff66a - last_write_checksum: sha1:5dee8c09d151224878fb9630336d82a2c27564a6 - pristine_git_object: 554633c2b7ba2a53a4c4e41aefa5bb9b37d6f1f4 models/components/updateobservabilitydestinationrequest.go: id: 8539c3368b29 last_write_checksum: sha1:33eb68d5bb2ca5fecfa512c87b6317319e8dd156 @@ -13327,14 +12795,6 @@ trackedFiles: id: 5cd6b0de93cd last_write_checksum: sha1:e8d08a944f81f9fdcb5121143e2c3be7be8a5b48 pristine_git_object: 876fee75f19d63b104761cad5e90915ddbd0273a - models/operations/createintern.go: - id: bba9f2fdb715 - last_write_checksum: sha1:0448ce853e51c50615f15ce32c00548a26a28845 - pristine_git_object: 325bfbf3a34d812c311a464ca3866e943a2ee20e - models/operations/createinternchatcompletion.go: - id: 5f2977f5fae4 - last_write_checksum: sha1:da5be525f2c6d3614d6d441e6f4cfd81475b5156 - pristine_git_object: 7df932a6c0a5e27d4bb04d76d21d2d12eaba5a95 models/operations/createkeys.go: id: c511faeda898 last_write_checksum: sha1:6966259327d92e6981b36084662aa916597b59d4 @@ -13387,10 +12847,6 @@ trackedFiles: id: 7492c5b1260c last_write_checksum: sha1:ebe85cf6c6331cf3057bff0ed9751208932b7d72 pristine_git_object: dd25cad63d69bf87f26dc17d74584a1942c17bfe - models/operations/deleteintern.go: - id: c5f31e0148b7 - last_write_checksum: sha1:83c248e429098b1e94001aa97521dcf4a7cf2e02 - pristine_git_object: 8bafd50c440e731795075227bb41e634b4ece95b models/operations/deleteinternvaultsecret.go: id: 9d13d777fb1b last_write_checksum: sha1:aa9949edf23b761c68258b453ce784420d451543 @@ -13491,26 +12947,6 @@ trackedFiles: id: 849cb0f1d1bc last_write_checksum: sha1:0b7e40a6c64f2a4b404b1427848c891805ec20fb pristine_git_object: 2d4b474174e1894104acd2c1b0661111d2eb05bf - models/operations/getintern.go: - id: fb0ff33467d4 - last_write_checksum: sha1:985b82d544908d3a018ed0eec8932323605025ec - pristine_git_object: cf7e5f87bb093047bcc442bf4e7a5450645c703e - models/operations/getinternconnections.go: - id: a1980aec5490 - last_write_checksum: sha1:3211a7980f32df966cf91616ce2a672f6bc4b12c - pristine_git_object: 030610ac6aaad63c38b4735c09dc9bdf9de8271e - models/operations/getinterndaemon.go: - id: a366562fa313 - last_write_checksum: sha1:5ff3cb23936bd126c93c7983ea95ef5fc05c5a69 - pristine_git_object: 69c4519424e2f63469b9d12d4bfaaee28208f58e - models/operations/getinterndaemonaccess.go: - id: af9c7b13ba51 - last_write_checksum: sha1:3ace7bf80400a2d66949843e41c047fd5d820989 - pristine_git_object: 1417c0ea1c18a2e4cdcdffa389e17275cf2a029f - models/operations/getinternicon.go: - id: 96541ac54f6b - last_write_checksum: sha1:42d3f7c80a6fa7cdaf830f67b53803b5f50448db - pristine_git_object: e4a5ac77e9a38e95d05b497fdfce0b68ab21d3e9 models/operations/getkey.go: id: 69bc377378e8 last_write_checksum: sha1:94ebe3e0ad1b12267f033f46a985cd37003bd980 @@ -13583,10 +13019,6 @@ trackedFiles: id: ab9ae4fa68ed last_write_checksum: sha1:251cee1dc810144d2a414b0fa9e9a8055820c0c8 pristine_git_object: 266c243c38d8584bf72082acacd36d31f267eb94 - models/operations/invokeintern.go: - id: 8f18e1bf4d59 - last_write_checksum: sha1:f378f70745105af3f9d08c26d719c31bbb574c1c - pristine_git_object: 5b448a3a97be6a5b4c25a10c5383da3045c86acc models/operations/list.go: id: 5327f0e32b30 last_write_checksum: sha1:67a60a2c02f9820b71ee1a98fafd326205105643 @@ -13651,10 +13083,6 @@ trackedFiles: id: da37351bba6d last_write_checksum: sha1:6edd23883a19aad5fb836565498c79fe0c2a0a75 pristine_git_object: 596288ec4a78d54173079cec491f430139ce8029 - models/operations/listinterns.go: - id: 9296d4925eae - last_write_checksum: sha1:19a6a6d8e378d1df5bf86d62eb6e275cc0cee895 - pristine_git_object: 1f1818fa5f5aee85d6e7e22889060203b5b9fc5c models/operations/listinternvaultsecrets.go: id: 4d3a18d0b661 last_write_checksum: sha1:41facb473ada103c3987e2a92241b993d2baa4ba @@ -13729,16 +13157,12 @@ trackedFiles: pristine_git_object: 34707f266ee6de17bb8b5def1eec0e100f4c4d7d models/operations/options.go: id: d20dd4db9865 - last_write_checksum: sha1:06db78efde6572a1e4f81fe3701f77667f62b140 - pristine_git_object: 2300993a598ce94895803b1b614c8d4654a54d73 + last_write_checksum: sha1:32f54f660b39a6502e9c021641ae88f4934cb736 + pristine_git_object: b7b4728155a31d7e21004b16a17198115f4f49bf models/operations/promotecontainerfile.go: id: 41a67533e31d last_write_checksum: sha1:e6d68b9fcf1a49ff7bf0dead572c2fc5b07df414 pristine_git_object: 5a2b5bc6ac636aa84667a572b37877fbbd003ced - models/operations/provisionintern.go: - id: 35de0843abbc - last_write_checksum: sha1:4c19c5c88f44d18299863e453e1017d0186063f7 - pristine_git_object: 7af7aeca736785daf867194325a07d217cf4e802 models/operations/queryanalytics.go: id: 988cd2db88c0 last_write_checksum: sha1:f332b1b8f08a7b8239724c51e655a692c09389c3 @@ -13747,14 +13171,6 @@ trackedFiles: id: 9da92c1f7b53 last_write_checksum: sha1:71b2e7bd747a68d78fbc663d101b0f037e608759 pristine_git_object: 33f53b6f4b818e200a1084ee76be6eb34d40cc0f - models/operations/signinterndaemonaccessrequest.go: - id: 9334f0a3bf86 - last_write_checksum: sha1:21579d2784601614af404c97a44ea08908bb2b17 - pristine_git_object: 581d52b6d549366558791d8125fbd07c63e6ad4d - models/operations/signinterndaemonrequest.go: - id: cdb064550845 - last_write_checksum: sha1:f416a404687156f067311be20b446055f0d64192 - pristine_git_object: 81d32c4a923692a277480ede9082c4adeca0973b models/operations/storeinternvaultsecret.go: id: 44fbe3949743 last_write_checksum: sha1:775411c05f4e364df85d394e98e522c50fe23d7d @@ -13763,10 +13179,6 @@ trackedFiles: id: 126c26e0fb35 last_write_checksum: sha1:409694344587be42b2a9b87d3c24f35cae9e9224 pristine_git_object: 174234ebb4cc414ad28eea502b301ea2d26ec1aa - models/operations/suspendintern.go: - id: 39b1e756fe50 - last_write_checksum: sha1:99778d5b647ef33a688ecc133cd58cde2127d28d - pristine_git_object: b0ced2125bfd0d2b26acffaccc4de2341555d56a models/operations/updatebyokkey.go: id: ca59c2a6f790 last_write_checksum: sha1:439549009f560be6ff40542adc19c9ff812fa2eb @@ -13779,10 +13191,6 @@ trackedFiles: id: 91384d66e9d9 last_write_checksum: sha1:4fa2ac4f720341443020c99695abecbbd9367cf3 pristine_git_object: f8f63e281cae454928a3c851603903bfc23023f3 - models/operations/updateintern.go: - id: 28afc7369deb - last_write_checksum: sha1:819a5290bf4d09d6a930ab53f073f3fd83255663 - pristine_git_object: 1e78062abafa3b68c339889d8e74866e6de050eb models/operations/updatekeys.go: id: b9d605aa7df2 last_write_checksum: sha1:2f80e2c4ef839193b19b7b2fee2d0051cd285a77 @@ -13879,14 +13287,6 @@ trackedFiles: id: 13ce339a83c1 last_write_checksum: sha1:42902769b372a57747f5e54500d23ddf940d30d6 pristine_git_object: 8c9ead451a3fbfb0f9f5d4c5258eb820d7aea982 - models/sdkerrors/internchaterrorresponse.go: - id: a61693f54e5b - last_write_checksum: sha1:a327b5e955ef72af1bf2e4ef2d597fc2aa2ab114 - pristine_git_object: ba844779bbadfe6062cdcad4cf3c510d4abac338 - models/sdkerrors/internlifecycleerror.go: - id: 0131c75f73de - last_write_checksum: sha1:a4699be5f0e907c806c5ecb43697d788c64b9f91 - pristine_git_object: 7a44ba53f528f4f2348ad578413a5952060265b7 models/sdkerrors/notfoundresponseerror.go: id: bef59d0b2512 last_write_checksum: sha1:da0c93b907c74832753eaa1ee0c0305570d60d4e @@ -13937,8 +13337,8 @@ trackedFiles: pristine_git_object: 46df65b755cfb5609b7c6763fcbb8e7d3cbd44b4 openrouter.go: id: 207ad004b774 - last_write_checksum: sha1:5ec60bbd95c0f0613d9f0d522a9033d10ea2472d - pristine_git_object: 9309fb9c086bb133311caa7d424052207c6bcb4b + last_write_checksum: sha1:f8cb89ffed4bd4076efaa3595de4c4652a1f8674 + pristine_git_object: 71c3a62c930a3bf60239fb3f06aed2de78d4ac76 optionalnullable/optionalnullable.go: id: ce60f259ead3 last_write_checksum: sha1:d6aff1a420c31e025ea21d46cf056e305ae76fe8 @@ -18368,4 +17768,18 @@ examples: examplesVersion: 1.0.2 releaseNotes: | ## Go SDK Changes: - * `OpenRouter.Generations.GetGeneration()`: `error.status[403]` **Added** + * `OpenRouter.Interns.ListInterns()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.CreateIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.DeleteIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.GetIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.UpdateIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.GetInternConnections()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.GetInternDaemon()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.GetInternDaemonAccess()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.SignInternDaemonAccessRequest()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.SignInternDaemonRequest()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.GetInternIcon()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.ProvisionIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.SuspendIntern()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.Chat()`: **Removed** (Breaking ⚠️) + * `OpenRouter.Interns.Invoke()`: **Removed** (Breaking ⚠️) diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index acf7384b8..ef881460f 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -36,7 +36,7 @@ generation: documentation: mintlify preApplyUnionDiscriminators: true go: - version: 0.9.74 + version: 0.9.75 additionalDependencies: {} baseErrorName: OpenRouterError clientServerStatusCodesAsErrors: true diff --git a/.speakeasy/out.openapi.yaml b/.speakeasy/out.openapi.yaml index 1162fc781..331b09ddb 100644 --- a/.speakeasy/out.openapi.yaml +++ b/.speakeasy/out.openapi.yaml @@ -8168,6 +8168,7 @@ components: type: 'string' required: - 'error_type' + title: 'ChatStreamChunkMetadata' type: 'object' required: - 'message' @@ -10053,47 +10054,6 @@ components: required: - 'data' type: 'object' - CreateInternRequest: - additionalProperties: false - description: 'Settings for a new intern.' - example: - name: 'research-assistant' - provision: true - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - properties: - description: - description: 'Free-form description, or null.' - maxLength: 2000 - type: - - 'string' - - 'null' - instructions: - description: 'Standing instructions the intern boots with, or null.' - maxLength: 100000 - type: - - 'string' - - 'null' - name: - description: 'Intern name, unique per creator within the workspace.' - maxLength: 17 - minLength: 2 - pattern: '^[a-z][a-z0-9]*(-[a-z0-9]+)*$' - type: 'string' - provision: - default: false - description: 'Start provisioning during this create operation. Defaults to false.' - type: 'boolean' - vault_id: - description: 'Vault owned by another intern in this workspace to attach as a borrowed vault.' - format: 'uuid' - type: 'string' - workspace_id: - description: 'Workspace that will own the intern. Defaults to the workspace the API key resolves to. When given, it must match the API key workspace.' - format: 'uuid' - type: 'string' - required: - - 'name' - type: 'object' CreateObservabilityDestinationRequest: example: config: @@ -11235,26 +11195,6 @@ components: required: - 'deleted' type: 'object' - DeleteInternRequest: - additionalProperties: false - description: 'Optional consent for a teardown that discards the workspace.' - example: - acknowledge_workspace_loss: true - properties: - acknowledge_workspace_loss: - default: false - description: 'Delete even though the workspace backup was not confirmed. Defaults to false, which refuses the teardown when a workspace archive is missing.' - type: 'boolean' - type: 'object' - DeleteInternResponse: - additionalProperties: false - properties: - deleting: - const: true - type: 'boolean' - required: - - 'deleting' - type: 'object' DeleteObservabilityDestinationResponse: example: deleted: true @@ -15165,136 +15105,6 @@ components: - 'string' - 'null' x-speakeasy-unknown-values: allow - Intern: - description: 'Public lifecycle state and settings for one intern.' - example: - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - properties: - attached_vault_id: - description: 'Vault the intern borrows from another intern, or null when it borrows none.' - type: - - 'string' - - 'null' - can_edit: - description: 'Whether this key may change the intern (update, provision, suspend, delete). Present on list and retrieve; false while lifecycle writes are closed for the account.' - type: 'boolean' - created_at: - description: 'ISO 8601 creation time.' - type: 'string' - created_by_you: - description: 'Whether the user behind the key created the intern. Present on list and retrieve; absent for organization keys, which act for no user.' - type: 'boolean' - description: - description: 'Free-form description.' - type: - - 'string' - - 'null' - hostname: - description: 'Public hostname the intern is reachable at, or null until provisioning has assigned one.' - type: - - 'string' - - 'null' - icon_sha256: - description: 'SHA-256 of the intern icon, or null when it has none. Present on list and retrieve; fetch the bytes from `GET /api/v1/interns/{intern_id}/icon`.' - type: - - 'string' - - 'null' - id: - description: 'Intern id.' - type: 'string' - instructions: - description: 'Standing instructions the intern boots with.' - type: - - 'string' - - 'null' - last_failure_message: - description: 'Why the last provisioning attempt failed, when status is failed.' - type: - - 'string' - - 'null' - model: - description: 'OpenRouter model slug the intern runs, or null for the workspace default.' - type: - - 'string' - - 'null' - name: - description: 'Intern name, unique per creator within a workspace.' - type: 'string' - progress: - description: 'Active provisioning step, or null once provisioning has settled.' - properties: - step_label: - description: 'Human-readable label of the active provisioning step.' - type: 'string' - step_number: - description: 'One-based index of the active step.' - type: 'integer' - total_steps: - description: 'Number of provisioning steps.' - type: 'integer' - required: - - 'step_label' - - 'step_number' - - 'total_steps' - type: - - 'object' - - 'null' - status: - description: 'Lifecycle status.' - enum: - - 'awaiting_slack_install' - - 'queued' - - 'provisioning' - - 'running' - - 'failed' - - 'stopped' - - 'destroying' - - 'destroy_failed' - type: 'string' - x-speakeasy-unknown-values: allow - updated_at: - description: 'ISO 8601 last update time.' - type: 'string' - vault_id: - description: 'Vault the intern owns, or null before it has been created.' - type: - - 'string' - - 'null' - workspace_id: - description: 'Workspace that owns the intern and scopes its secrets.' - type: 'string' - required: - - 'id' - - 'name' - - 'description' - - 'instructions' - - 'model' - - 'status' - - 'last_failure_message' - - 'progress' - - 'hostname' - - 'workspace_id' - - 'vault_id' - - 'attached_vault_id' - - 'created_at' - - 'updated_at' - type: 'object' InternalServerResponse: description: 'Internal Server Error - Unexpected server error' example: @@ -15335,891 +15145,1191 @@ components: - 'code' - 'message' type: 'object' - InternApprovalMode: - description: 'How the run started by this prompt handles tool approvals. `self-drive` (the default when omitted) consents on your behalf and runs the shell unsandboxed. `manual` asks you before an approval-bearing tool runs, as an `openrouter.provide_input` permission request, and keeps the shell sandboxed until an escalation is allowed. The mode applies to the run this prompt starts and is not remembered by the session. Repeat it on each new prompt that should use it. A `tool` reply continues the run under the mode it started with.' - enum: - - 'manual' - - 'self-drive' - example: 'manual' - type: 'string' - x-speakeasy-unknown-values: allow - InternChatAssistantMessage: - description: 'An assistant message from an earlier response. When answering an interaction, echo the streamed `tool_calls` here before the `tool` message.' + ItemReferenceItem: + description: 'A reference to a previous response item by ID' example: - content: null - role: 'assistant' - tool_calls: - - function: - arguments: '{"kind":"permission","operation":"shell","options":["allow_once","reject_once"]}' - name: 'openrouter.provide_input' - id: '15e90ad6-5320-4a59-af4f-b371428154fa' + id: 'msg-abc123' + type: 'item_reference' properties: - content: - $ref: '#/components/schemas/InternChatMessageContent' - role: - enum: - - 'assistant' + id: type: 'string' - tool_calls: - items: - $ref: '#/components/schemas/InternChatEchoedToolCall' - type: 'array' - required: - - 'role' - type: 'object' - InternChatChoice: - description: 'The single choice this endpoint streams.' - example: - delta: - content: 'Hello' - finish_reason: null - index: 0 - properties: - delta: - $ref: '#/components/schemas/InternChatDelta' - finish_reason: - description: '`null` while streaming. `stop` when the run completed, `tool_calls` when the run is waiting for the caller to answer the streamed tool call, `error` on the terminal error chunk.' + type: enum: - - 'error' - - 'stop' - - 'tool_calls' - - null - type: - - 'string' - - 'null' - x-speakeasy-unknown-values: allow - index: - type: 'integer' + - 'item_reference' + type: 'string' required: - - 'delta' - - 'finish_reason' - - 'index' + - 'type' + - 'id' type: 'object' - InternChatCompletionChunk: - description: 'One `data:` line of the stream. A run streams a role chunk, content and reasoning chunks, then a finish chunk: `stop`, `tool_calls` (the run is paused for input) or `error` (with an `error` object). A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the daemon reported usage, and always `null` after `tool_calls`). Every stream ends with `[DONE]`.' + JevRouterPlugin: + additionalProperties: false example: - choices: - - delta: - content: 'Hello' - finish_reason: null - index: 0 - created: 1789537541 - id: 'chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750' - model: 'openrouter/intern' - object: 'chat.completion.chunk' + excluded_models: + - 'openai/gpt-6-astra' + id: 'jev-router' + models: + - 'anthropic/*' + - 'openai/gpt-5.6-sol' properties: - choices: - description: 'One choice on content, tool-call and error chunks. Empty on the final chunk that carries `session_id`.' + allowed_models: + description: 'Alias of `models`, matching the auto-router field name. Entries from both fields are combined.' + example: + - 'anthropic/*' items: - $ref: '#/components/schemas/InternChatChoice' + maxLength: 1024 + type: 'string' + maxItems: 1024 type: 'array' - created: - type: 'integer' - error: - $ref: '#/components/schemas/InternChatStreamError' - id: - description: 'The completion id, constant for the whole response.' - example: 'chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750' - type: 'string' - model: - description: 'The runtime''s identifier for the model the intern is running, as the intern reports it. Each chunk carries the model from the event behind it: `openrouter/intern` on chunks emitted before the intern has reported one and on chunks the API emits itself (timeout, run-ended and severed-stream errors and their final usage chunk), even after an earlier chunk named a model. It can change within a stream. It is not an OpenRouter model slug, and the request `model` is never used.' + cost_tier: + description: 'Select low, medium, high, or a cost tier configured by the operator. Overrides the live-config tier and replaces the shared routing policy with that tier. Omit to use the live configuration. Model exclusions and the router kill switch still apply.' + example: 'medium' + pattern: '^[a-z][a-z0-9_-]{0,31}$' type: 'string' - object: + excluded_models: + description: 'Remove these models from the router. Each entry is a model slug or a wildcard pattern (e.g. "xiaomi/*"). A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after `models`, so an excluded pattern always wins over an included one; when the lists leave no model the request can use, it fails with 404 rather than routing outside them.' + example: + - 'openai/gpt-6-astra' + - 'xiaomi/*' + items: + maxLength: 1024 + type: 'string' + maxItems: 1024 + type: 'array' + id: enum: - - 'chat.completion.chunk' + - 'jev-router' type: 'string' - session_id: - description: 'On the final chunk of every response, the daemon session to continue with, or `null` when the run failed before the intern reported one. Send it as `session_id` on the next request, including the `tool` reply to an interaction. Session ids are client-visible and scoped to the intern''s own daemon.' - example: 'ses_7f3c9a' - type: - - 'string' - - 'null' - usage: - $ref: '#/components/schemas/InternChatUsage' + models: + description: 'Restrict the router to these models. Each entry is a model slug or a wildcard pattern (e.g. "anthropic/*"), matched against the current pool; models outside the pool are ignored. A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When omitted or empty, every model in the pool is a candidate; when no pool model matches, the list is ignored and the whole pool is used (`excluded_models` still apply). `allowed_models` is an alias; entries from both fields are combined.' + example: + - 'anthropic/*' + - 'openai/gpt-5.6-sol' + items: + maxLength: 1024 + type: 'string' + maxItems: 1024 + type: 'array' required: - - 'choices' - - 'created' - 'id' - - 'model' - - 'object' type: 'object' - InternChatCompletionRequest: - description: 'An OpenAI-compatible streaming chat completion request for one intern. Other OpenAI fields such as `temperature` or `tools` are ignored. The intern owns its sampling and its tools.' + KeyAssignment: example: - approval_mode: 'manual' - messages: - - content: 'Summarize the open pull requests.' - role: 'user' - stream: true + assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + key_label: 'prod-key' + key_name: 'Production Key' properties: - approval_mode: - $ref: '#/components/schemas/InternApprovalMode' - messages: - description: 'The conversation. Only the last message is read. A last `user` message starts a run. A last `tool` message answers the interaction named by its `tool_call_id` and requires `session_id`.' - items: - $ref: '#/components/schemas/InternChatMessage' - minItems: 1 - type: 'array' - model: - description: 'Accepted for OpenAI compatibility and never used. The intern runs the model configured on it (`PATCH` the intern to change it). Streamed chunks report the runtime''s identifier for that model as the intern reports it, or `openrouter/intern` on chunks whose event carries no model (before the intern reports one, and on the chunks the API emits itself: the timeout, run-ended and severed-stream error chunks, the stop chunk of a replay that ends without a terminal daemon event, and the final usage chunk after any of them). A usage chunk that follows a daemon completion event carries the model the intern reported.' - example: 'openrouter/intern' - maxLength: 256 - minLength: 1 + assigned_by: + description: 'User ID of who made the assignment' + example: 'user_abc123' + type: + - 'string' + - 'null' + created_at: + description: 'ISO 8601 timestamp of when the assignment was created' + example: '2025-08-24T10:30:00Z' type: 'string' - session_id: - description: 'The daemon session to continue, as returned in `session_id` on the final chunk of an earlier response. Omit it to start a new session. An id the intern has not seen before is not an error: it starts a new session under that id, so a mistyped id forks the conversation. Sessions are scoped to the intern''s own daemon. Required when the last message has role `tool`.' - example: 'ses_7f3c9a' - maxLength: 256 - minLength: 1 + guardrail_id: + description: 'ID of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440001' + format: 'uuid' type: 'string' - stream: - const: true - description: 'Must be `true`. This endpoint only streams. `false` or an omitted `stream` is refused with `400` and reason `bad_request`.' - example: true - type: 'boolean' - required: - - 'messages' - - 'stream' - type: 'object' - InternChatDelta: - description: 'The incremental content of one chunk. The first chunk carries `role`, text chunks carry `content`, reasoning chunks carry `reasoning`, and an interaction chunk carries one complete `tool_calls` entry.' - example: - content: 'Hello' - properties: - content: + id: + description: 'Unique identifier for the assignment' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' - reasoning: + key_hash: + description: 'Hash of the assigned API key' + example: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' type: 'string' - role: - enum: - - 'assistant' + key_label: + description: 'Label of the API key' + example: 'prod-key' type: 'string' - tool_calls: - items: - $ref: '#/components/schemas/InternChatToolCall' - type: 'array' + key_name: + description: 'Name of the API key' + example: 'Production Key' + type: 'string' + required: + - 'id' + - 'key_hash' + - 'guardrail_id' + - 'key_name' + - 'key_label' + - 'assigned_by' + - 'created_at' type: 'object' - InternChatDeveloperMessage: - description: 'A developer message. Accepted for client compatibility and not forwarded.' + KeyBudget: + description: 'One budget layer that applies to requests made with this key, with the spend enforcement compares against it.' example: - content: 'Answer briefly.' - role: 'developer' + budget_id: null + guardrail_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + include_byok: false + limit_usd: 50 + remaining_usd: 17.5 + reset_interval: 'weekly' + resets_at: '2026-10-12T00:00:00.000Z' + scope: 'member' + spend_usd: 32.5 properties: - content: - $ref: '#/components/schemas/InternChatMessageContent' - role: + budget_id: + description: 'ID of the workspace budget for the `workspace` scope; null for other scopes.' + example: null + type: + - 'string' + - 'null' + guardrail_id: + description: 'ID of the guardrail that carries this budget; null for other scopes.' + example: '0df9e665-d932-5740-b2c7-b52af166bc11' + type: + - 'string' + - 'null' + include_byok: + description: 'Whether external BYOK inference spend counts toward this budget.' + example: false + type: 'boolean' + limit_usd: + description: 'Budget limit in USD for the current window.' + example: 50 + format: 'double' + type: 'number' + remaining_usd: + description: '`limit_usd - spend_usd`. Zero or negative means this layer rejects requests with a 403 until it resets.' + example: 17.5 + format: 'double' + type: 'number' + reset_interval: + description: 'UTC window the spend is counted over (weeks start Monday); null for a lifetime budget that never resets.' enum: - - 'developer' + - 'daily' + - 'weekly' + - 'monthly' + - null + example: 'weekly' + type: + - 'string' + - 'null' + x-speakeasy-unknown-values: allow + resets_at: + description: 'ISO 8601 UTC instant at which the window rolls over and spend returns to zero; null for a lifetime budget.' + example: '2026-10-12T00:00:00.000Z' + format: 'date-time' + type: + - 'string' + - 'null' + scope: + description: 'Which budget layer this is, in the order enforcement checks them: the workspace default guardrail against the member aggregate (`workspace_default_member`) and against this key (`workspace_default_key`), the member guardrail (`member`), the API key guardrail (`api_key`), a workspace budget (`workspace`), or the key''s own limit (`key_limit`).' + enum: + - 'workspace_default_member' + - 'workspace_default_key' + - 'member' + - 'api_key' + - 'workspace' + - 'key_limit' + example: 'member' type: 'string' + x-speakeasy-unknown-values: allow + spend_usd: + description: 'Spend in USD that enforcement counts against this limit in the current window: the member aggregate for member-scoped layers, otherwise this key or workspace.' + example: 32.5 + format: 'double' + type: 'number' required: - - 'content' - - 'role' + - 'scope' + - 'guardrail_id' + - 'budget_id' + - 'limit_usd' + - 'spend_usd' + - 'remaining_usd' + - 'reset_interval' + - 'resets_at' + - 'include_byok' type: 'object' - InternChatEchoedToolCall: - description: 'The `openrouter.provide_input` tool call from the previous response, echoed back unchanged. Its `id` is the interaction the following `tool` message answers.' + Legacy_ChatContentVideo: + deprecated: true + description: 'Video input content part (legacy format - deprecated)' example: - function: - arguments: '{"kind":"permission","operation":"shell","options":["allow_once","reject_once"]}' - name: 'openrouter.provide_input' - id: '15e90ad6-5320-4a59-af4f-b371428154fa' + type: 'input_video' + video_url: + url: 'https://example.com/video.mp4' properties: - function: - $ref: '#/components/schemas/InternChatEchoedToolCallFunction' - id: - maxLength: 128 - minLength: 1 + type: + enum: + - 'input_video' type: 'string' + video_url: + $ref: '#/components/schemas/Legacy_ChatContentVideoInput' required: - - 'function' - - 'id' + - 'type' + - 'video_url' type: 'object' - InternChatEchoedToolCallFunction: - description: 'The function name and JSON arguments string exactly as streamed.' + Legacy_ChatContentVideoInput: + description: 'Video input object' example: - arguments: '{"kind":"permission","operation":"shell","options":["allow_once","reject_once"]}' - name: 'openrouter.provide_input' + url: 'https://example.com/video.mp4' properties: - arguments: + processing: + description: 'Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini).' + enum: + - 'agentic' + - 'static' + example: 'agentic' type: 'string' - name: + x-speakeasy-unknown-values: allow + url: + description: 'URL of the video (data: URLs supported)' type: 'string' required: - - 'arguments' - - 'name' + - 'url' type: 'object' - InternChatError: - description: 'The OpenAI-compatible error object. `metadata` is present on refusals from the chat route. Authentication refusals (`401`), the departed-creator `403` and the programme `404` carry only `code` and `message`.' + Legacy_WebSearchServerTool: + description: 'Web search tool configuration' example: - code: 409 - message: 'That question is no longer waiting for an answer.' - metadata: - reason: 'interaction_not_pending' - retryable: false + engine: 'auto' + filters: + allowed_domains: + - 'example.com' + type: 'web_search' properties: - code: - description: 'The HTTP status of the response.' + engine: + $ref: '#/components/schemas/WebSearchEngineEnum' + filters: + $ref: '#/components/schemas/WebSearchDomainFilter' + max_results: + description: 'Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped.' + example: 5 type: 'integer' - message: - type: 'string' - metadata: - $ref: '#/components/schemas/InternChatErrorMetadata' - required: - - 'code' - - 'message' - type: 'object' - InternChatErrorMetadata: - description: 'Machine-readable detail for the failure.' - example: - reason: 'interaction_not_pending' - retryable: false - properties: - reason: - description: 'A stable reason a client can branch on.' - enum: - - 'attachment_failed' - - 'bad_request' - - 'busy' - - 'client_closed_request' - - 'interaction_not_pending' - - 'interaction_unknown' - - 'intern_not_ready' - - 'intern_rejected' - - 'intern_unreachable' - - 'not_found' - - 'payload_too_large' - - 'rate_limited' - - 'run_ended' - - 'stream_severed' - - 'timeout' - - 'turn_failed' + max_uses: + description: 'Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.' + example: 3 + type: 'integer' + mode: + $ref: '#/components/schemas/WebSearchMode' + search_context_size: + $ref: '#/components/schemas/SearchContextSizeEnum' + type: + enum: + - 'web_search' type: 'string' - x-speakeasy-unknown-values: allow - retryable: - description: 'Whether the same request may be sent again unchanged. Always `true` for the transient refusals — `busy`, `intern_not_ready`, `intern_unreachable`, `rate_limited`, `stream_severed` and `timeout` — and always `false` for the ones a retry cannot fix. For `turn_failed` it varies by failure and is the intern''s own classification of what went wrong: `true` for an upstream overload, rate limit, timeout or transport fault, `false` for an authentication or bad-request failure that would be rejected the same way again. Branch on this field rather than on `reason` when deciding whether to retry. A `429`, and a `409` or `503` with reason `busy`, also carry a `Retry-After` header saying how long to wait.' - type: 'boolean' + user_location: + $ref: '#/components/schemas/WebSearchUserLocation' + x_search: + $ref: '#/components/schemas/XSearchOptions' required: - - 'reason' - - 'retryable' + - 'type' type: 'object' - InternChatErrorResponse: - description: 'A refusal before the stream opens. Once the response is `200` and streaming, failures arrive as a chunk with `finish_reason: "error"` instead.' + ListBYOKKeysResponse: example: - error: - code: 409 - message: 'That question is no longer waiting for an answer.' - metadata: - reason: 'interaction_not_pending' - retryable: false + data: + - allowed_api_key_hashes: null + allowed_models: null + allowed_user_ids: null + created_at: '2025-08-24T10:30:00Z' + declared_region: null + declared_zdr: null + disabled: false + id: '11111111-2222-3333-4444-555555555555' + is_byok_only: false + is_fallback: false + is_required: false + label: 'sk-...AbCd' + name: 'Production OpenAI Key' + provider: 'openai' + sort_order: 0 + workspace_id: '550e8400-e29b-41d4-a716-446655440000' + total_count: 1 properties: - error: - $ref: '#/components/schemas/InternChatError' - required: - - 'error' - type: 'object' - InternChatMessage: - description: 'One OpenAI-compatible chat message, discriminated by `role`.' - discriminator: - mapping: - assistant: '#/components/schemas/InternChatAssistantMessage' - developer: '#/components/schemas/InternChatDeveloperMessage' - system: '#/components/schemas/InternChatSystemMessage' - tool: '#/components/schemas/InternChatToolMessage' - user: '#/components/schemas/InternChatUserMessage' - propertyName: 'role' - example: - content: 'Summarize the open pull requests.' - role: 'user' - oneOf: - - $ref: '#/components/schemas/InternChatSystemMessage' - - $ref: '#/components/schemas/InternChatDeveloperMessage' - - $ref: '#/components/schemas/InternChatUserMessage' - - $ref: '#/components/schemas/InternChatAssistantMessage' - - $ref: '#/components/schemas/InternChatToolMessage' - InternChatMessageContent: - anyOf: - - type: 'string' - - items: - $ref: '#/components/schemas/InternChatTextPart' + data: + description: 'List of BYOK credentials.' + items: + $ref: '#/components/schemas/BYOKKey' type: 'array' - - type: 'null' - description: 'Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history.' - example: 'Summarize the open pull requests.' - InternChatPromptTokensDetails: - description: 'Prompt tokens served from cache, when the daemon reported them.' - example: - cached_tokens: 1024 - properties: - cached_tokens: + total_count: + description: 'Total number of BYOK credentials matching the filters.' + example: 1 type: 'integer' required: - - 'cached_tokens' - type: 'object' - InternChatSteeredResponse: - description: 'The message was delivered into the turn already running on the same session. Its effect is streamed on that turn, not here.' - example: - session_id: 'sess_01j9x0k4q7v8r2t3m6n5p8w9y1' - status: 'steered' - properties: - session_id: - description: 'The session of the running turn the message was delivered to.' - example: 'sess_01j9x0k4q7v8r2t3m6n5p8w9y1' - type: 'string' - status: - description: 'The message was handed to the turn already running on this session.' - enum: - - 'steered' - type: 'string' - required: - - 'session_id' - - 'status' + - 'data' + - 'total_count' type: 'object' - InternChatStreamError: - description: 'A failure after the response headers were sent. The chunk that carries it has `finish_reason: "error"`, then the final empty-`choices` chunk and `[DONE]` follow. Reasons here are `attachment_failed`, `busy`, `client_closed_request`, `interaction_not_pending`, `interaction_unknown`, `intern_unreachable`, `run_ended`, `stream_severed`, `timeout` or `turn_failed`. `run_ended` reports an ending the intern confirmed, such as a cancellation or a deadline, while `stream_severed` reports a connection lost without that confirmation.' + ListEndpointsResponse: + description: 'List of available endpoints for a model' example: - code: 502 - message: 'The intern could not continue this run.' - metadata: - reason: 'attachment_failed' - retryable: false + architecture: + input_modalities: + - 'text' + instruct_type: 'chatml' + modality: 'text->text' + output_modalities: + - 'text' + tokenizer: 'GPT' + created: 1692901234 + description: 'GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.' + endpoints: + - context_length: 8192 + latency_last_30m: + p50: 0.25 + p75: 0.35 + p90: 0.48 + p99: 0.85 + max_completion_tokens: 4096 + max_prompt_tokens: 8192 + model_id: 'openai/gpt-4' + model_name: 'GPT-4' + name: 'OpenAI: GPT-4' + pricing: + completion: '0.00006' + image: '0' + prompt: '0.00003' + request: '0' + provider_name: 'OpenAI' + quantization: 'fp16' + status: 0 + supported_parameters: + - 'temperature' + - 'top_p' + - 'max_tokens' + - 'frequency_penalty' + - 'presence_penalty' + supports_diarization: false + supports_implicit_caching: true + tag: 'openai' + throughput_last_30m: + p50: 45.2 + p75: 38.5 + p90: 28.3 + p99: 15.1 + uptime_last_1d: 99.8 + uptime_last_30m: 99.5 + uptime_last_5m: 100 + id: 'openai/gpt-4' + name: 'GPT-4' properties: - code: - description: 'The HTTP status this failure would have had before the stream opened.' + architecture: + allOf: + - $ref: '#/components/schemas/ModelArchitecture' + - properties: + input_modalities: + description: 'Supported input modalities' + items: + $ref: '#/components/schemas/InputModality' + type: 'array' + instruct_type: + $ref: '#/components/schemas/InstructType' + modality: + description: 'Primary modality of the model' + example: 'text' + type: + - 'string' + - 'null' + output_modalities: + description: 'Supported output modalities' + items: + $ref: '#/components/schemas/OutputModality' + type: 'array' + tokenizer: + anyOf: + - $ref: '#/components/schemas/ModelGroup' + - type: 'null' + required: + - 'tokenizer' + - 'instruct_type' + - 'modality' + - 'input_modalities' + - 'output_modalities' + created: + description: 'Unix timestamp of when the model was created' + example: 1692901234 type: 'integer' - message: + description: + description: 'Description of the model' + example: 'GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.' + type: 'string' + endpoints: + description: 'List of available endpoints for this model' + items: + $ref: '#/components/schemas/PublicEndpoint' + type: 'array' + id: + description: 'Unique identifier for the model' + example: 'openai/gpt-4' + type: 'string' + name: + description: 'Display name of the model' + example: 'GPT-4' type: 'string' - metadata: - $ref: '#/components/schemas/InternChatErrorMetadata' required: - - 'code' - - 'message' - - 'metadata' + - 'id' + - 'name' + - 'created' + - 'description' + - 'architecture' + - 'endpoints' type: 'object' - InternChatStreamingResponse: - description: 'A server-sent event carrying one chunk. The stream ends with `data: [DONE]`.' + ListExternalUsersResponse: example: data: - choices: - - delta: - tool_calls: - - function: - arguments: '{"fields":[{"name":"answer","options":["red","blue","Other"],"required":true,"type":"string"}],"kind":"elicitation","message":"Which colour do you prefer?"}' - name: 'openrouter.provide_input' - id: '15e90ad6-5320-4a59-af4f-b371428154fa' - index: 0 - type: 'function' - finish_reason: null - index: 0 - created: 1789537541 - id: 'chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750' - model: 'openrouter/intern' - object: 'chat.completion.chunk' + - created_at: '2026-09-16T12:00:00Z' + is_active: true + updated_at: '2026-09-16T12:00:00Z' + user: 'employee_123' + total_count: 1 properties: data: - $ref: '#/components/schemas/InternChatCompletionChunk' + items: + $ref: '#/components/schemas/ExternalUser' + type: 'array' + total_count: + description: 'Number of registrations matching the filters before pagination.' + example: 1 + type: 'integer' required: - 'data' + - 'total_count' type: 'object' - InternChatSystemMessage: - description: 'A system message. Accepted for client compatibility and not forwarded.' + ListGuardrailsResponse: example: - content: 'You are a helpful assistant.' - role: 'system' + data: + - allowed_models: null + allowed_providers: + - 'openai' + - 'anthropic' + - 'google' + content_filter_builtins: + - action: 'redact' + label: '[EMAIL]' + slug: 'email' + content_filters: null + created_at: '2025-08-24T10:30:00Z' + description: 'Guardrail for production environment' + enable_free_model_publication: false + enable_free_model_training: true + enable_paid_model_training: true + enforce_zdr: null + enforce_zdr_anthropic: true + enforce_zdr_google: false + enforce_zdr_openai: true + enforce_zdr_other: false + enforce_zdr_xai: false + id: '550e8400-e29b-41d4-a716-446655440000' + ignored_models: null + ignored_providers: null + include_byok_in_budgets: false + limit_usd: 100 + name: 'Production Guardrail' + reset_interval: 'monthly' + updated_at: '2025-08-24T15:45:00Z' + workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + total_count: 1 properties: - content: - $ref: '#/components/schemas/InternChatMessageContent' - role: - enum: - - 'system' - type: 'string' + data: + description: 'List of guardrails' + items: + $ref: '#/components/schemas/Guardrail' + type: 'array' + total_count: + description: 'Total number of guardrails' + example: 25 + type: 'integer' required: - - 'content' - - 'role' + - 'data' + - 'total_count' type: 'object' - InternChatTextPart: - description: 'One text part of a message.' + ListKeyAssignmentsResponse: example: - text: 'Summarize the open pull requests.' - type: 'text' + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + key_label: 'prod-key' + key_name: 'Production Key' + total_count: 1 properties: - text: - type: 'string' - type: - enum: - - 'text' - type: 'string' + data: + description: 'List of key assignments' + items: + $ref: '#/components/schemas/KeyAssignment' + type: 'array' + total_count: + description: 'Total number of key assignments for this guardrail' + example: 25 + type: 'integer' required: - - 'text' - - 'type' + - 'data' + - 'total_count' type: 'object' - InternChatToolCall: - description: 'An `openrouter.provide_input` request. The run pauses on the daemon until a `tool` message answers it, the caller cancels it, or its interaction deadline passes.' + ListMemberAssignmentsResponse: example: - function: - arguments: '{"fields":[{"name":"answer","options":["red","blue","Other"],"required":true,"type":"string"}],"kind":"elicitation","message":"Which colour do you prefer?"}' - name: 'openrouter.provide_input' - id: '15e90ad6-5320-4a59-af4f-b371428154fa' - index: 0 - type: 'function' + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + organization_id: 'org_xyz789' + user_id: 'user_abc123' + total_count: 1 properties: - function: - $ref: '#/components/schemas/InternChatToolCallFunction' - id: - description: 'The interaction id. Send it back as `tool_call_id` on the `tool` message that answers it.' - example: '15e90ad6-5320-4a59-af4f-b371428154fa' - type: 'string' - index: + data: + description: 'List of member assignments' + items: + $ref: '#/components/schemas/MemberAssignment' + type: 'array' + total_count: + description: 'Total number of member assignments' + example: 10 type: 'integer' - type: - enum: - - 'function' - type: 'string' required: - - 'function' - - 'id' - - 'index' - - 'type' + - 'data' + - 'total_count' type: 'object' - InternChatToolCallFunction: - description: 'The single tool this endpoint calls, asking the caller for input.' + ListObservabilityDestinationsResponse: example: - arguments: '{"fields":[{"name":"answer","options":["red","blue","Other"],"required":true,"type":"string"}],"kind":"elicitation","message":"Which colour do you prefer?"}' - name: 'openrouter.provide_input' + data: + - api_key_hashes: null + broadcast_generation_cost: false + broadcast_generation_cost_allocation: false + broadcast_generation_identity: false + broadcast_generation_request_context: false + config: + baseUrl: 'https://us.cloud.langfuse.com' + publicKey: 'pk-l...EfGh' + secretKey: 'sk-l...AbCd' + created_at: '2025-08-24T10:30:00Z' + enabled: true + filter_rules: null + id: '99999999-aaaa-bbbb-cccc-dddddddddddd' + name: 'Production Langfuse' + privacy_mode: false + regions: + - 'global' + sampling_rate: 1 + type: 'langfuse' + updated_at: '2025-08-24T15:45:00Z' + workspace_id: '550e8400-e29b-41d4-a716-446655440000' + total_count: 1 properties: - arguments: - description: 'A JSON object string describing the interaction. A permission request is `{"kind":"permission","operation":,"options":[]}`. A question is `{"kind":"elicitation","message":,"fields":[]}`.' - example: '{"fields":[{"name":"answer","options":["red","blue","Other"],"required":true,"type":"string"}],"kind":"elicitation","message":"Which colour do you prefer?"}' - type: 'string' - name: - enum: - - 'openrouter.provide_input' - type: 'string' + data: + description: 'List of observability destinations.' + items: + $ref: '#/components/schemas/ObservabilityDestination' + type: 'array' + total_count: + description: 'Total number of destinations matching the filters.' + example: 1 + type: 'integer' required: - - 'arguments' - - 'name' + - 'data' + - 'total_count' type: 'object' - InternChatToolMessage: - description: 'The answer to an `openrouter.provide_input` tool call. `tool_call_id` is the streamed tool call id and `session_id` must name the same session. For a permission, `content` is one of the offered option kinds (`allow_once`, `allow_always`, `reject_once`, `reject_always`) or `cancel`. For a question (elicitation), `content` is a JSON object string with `action` (`accept`, `decline` or `cancel`) and, for `accept`, `content` holding the field values. The answer is delivered to the run that asked. It never starts a new run.' + ListPresetsResponse: + description: 'A paginated list of presets.' example: - content: 'allow_once' - role: 'tool' - tool_call_id: '15e90ad6-5320-4a59-af4f-b371428154fa' + data: + - created_at: '2026-04-20T10:00:00Z' + creator_user_id: 'user_2dHFtVWx2n56w6HkM0000000000' + description: null + designated_version_id: '550e8400-e29b-41d4-a716-446655440000' + id: '650e8400-e29b-41d4-a716-446655440001' + name: 'my-preset' + slug: 'my-preset' + status: 'active' + status_updated_at: null + updated_at: '2026-04-20T10:00:00Z' + workspace_id: '750e8400-e29b-41d4-a716-446655440002' + total_count: 1 properties: - content: - $ref: '#/components/schemas/InternChatMessageContent' - role: - enum: - - 'tool' - type: 'string' - tool_call_id: - maxLength: 128 - minLength: 1 - type: 'string' + data: + items: + $ref: '#/components/schemas/Preset' + type: 'array' + total_count: + type: 'integer' required: - - 'content' - - 'role' - - 'tool_call_id' + - 'data' + - 'total_count' type: 'object' - InternChatUsage: - description: 'Token usage for the run as the daemon reported it, on the final chunk before `[DONE]`. `null` when the daemon reported none, and always `null` after `tool_calls` because the turn is not over.' + ListPresetVersionsResponse: + description: 'A paginated list of preset versions.' example: - completion_tokens: 12 - prompt_tokens: 40 - total_tokens: 52 + data: + - config: + model: 'openai/gpt-4o' + temperature: 0.7 + created_at: '2026-04-20T10:00:00Z' + creator_id: 'user_2dHFtVWx2n56w6HkM0000000000' + id: '550e8400-e29b-41d4-a716-446655440000' + preset_id: '650e8400-e29b-41d4-a716-446655440001' + system_prompt: 'You are a helpful assistant.' + updated_at: '2026-04-20T10:00:00Z' + version: 1 + total_count: 1 properties: - completion_tokens: - type: 'integer' - cost: - description: 'The cost of the run in USD, when the daemon reported one.' - format: 'double' - type: 'number' - prompt_tokens: + data: + items: + $ref: '#/components/schemas/PresetDesignatedVersion' + type: 'array' + total_count: type: 'integer' - prompt_tokens_details: - $ref: '#/components/schemas/InternChatPromptTokensDetails' - total_tokens: + required: + - 'data' + - 'total_count' + type: 'object' + ListPrivateEndpointsResponse: + properties: + data: + items: + $ref: '#/components/schemas/PrivateEndpointSummary' + type: 'array' + required: + - 'data' + type: 'object' + ListScimGroupMappingsResponse: + properties: + data: + items: + $ref: '#/components/schemas/ScimGroupMapping' + type: 'array' + total_count: type: 'integer' required: - - 'completion_tokens' - - 'prompt_tokens' - - 'total_tokens' - type: - - 'object' - - 'null' - InternChatUserMessage: - description: 'A user message. When it is the last message its text is the prompt for a new run, at most 32000 characters.' - example: - content: 'Summarize the open pull requests.' - role: 'user' + - 'data' + - 'total_count' + type: 'object' + ListScimGroupsResponse: properties: - content: - $ref: '#/components/schemas/InternChatMessageContent' - role: - enum: - - 'user' - type: 'string' + data: + items: + $ref: '#/components/schemas/ScimGroup' + type: 'array' + total_count: + type: 'integer' required: - - 'content' - - 'role' + - 'data' + - 'total_count' type: 'object' - InternConnection: + ListToolsResponse: properties: - account: - properties: - acts_as: - description: 'Whose account it acts as, when known.' - type: - - 'string' - - 'null' - is_your_account_linked: - type: - - 'boolean' - - 'null' - note: - type: - - 'string' - - 'null' - scope: - description: '`workspace` for a shared connection, `yours` for the key user''s personal account, `shared` for a teammate''s.' - enum: - - 'workspace' - - 'yours' - - 'shared' - type: 'string' - x-speakeasy-unknown-values: allow - required: - - 'acts_as' - - 'is_your_account_linked' - - 'note' - - 'scope' - type: 'object' - id: - description: 'Stable id: the credential id of an MCP server, else the kind (`slack`, `github`, `google`).' - type: 'string' - is_enabled: - description: 'Whether the intern reaches it now.' - type: 'boolean' - is_intern_only: - description: 'Scoped to this intern rather than shared by the workspace.' - type: 'boolean' - kind: - enum: - - 'slack' - - 'github' - - 'google' - - 'mcp' - type: 'string' - x-speakeasy-unknown-values: allow - mcp_server_name: - description: 'The name the intern''s MCP config keys the server by; null when it is not an MCP server or is off.' - type: - - 'string' - - 'null' - name: - description: 'Display name.' - type: 'string' - off_reason: - description: '`switched_off` for this intern, `disabled` for the whole workspace; null while on.' - enum: - - 'switched_off' - - 'disabled' - - null - type: - - 'string' - - 'null' - x-speakeasy-unknown-values: allow - server: - properties: - host: - type: - - 'string' - - 'null' - surface: - type: 'string' - transport: - type: 'string' - url: - type: - - 'string' - - 'null' - required: - - 'host' - - 'surface' - - 'transport' - - 'url' - type: - - 'object' - - 'null' - status: + data: + items: + $ref: '#/components/schemas/ServerTool' + type: 'array' + links: properties: - reason: + next: + description: 'URL for the next page of results, or null if this is the last page' + example: null type: - 'string' - 'null' - state: - enum: - - 'connected' - - 'needs_reconnect' - - 'not_tested' - - 'error' - type: 'string' - x-speakeasy-unknown-values: allow required: - - 'state' - - 'reason' + - 'next' type: 'object' - tool_count: - description: 'Tools found by the last successful test.' - type: - - 'integer' - - 'null' + total_count: + description: 'Total number of tools' + example: 12 + type: 'integer' required: - - 'id' - - 'kind' - - 'name' - - 'is_enabled' - - 'is_intern_only' - - 'off_reason' - - 'mcp_server_name' - - 'server' - - 'status' - - 'tool_count' - - 'account' + - 'data' + - 'total_count' + - 'links' type: 'object' - InternConnectionList: + ListWorkspaceBudgetsResponse: + example: + data: + - created_at: '2025-08-24T10:30:00Z' + id: '770e8400-e29b-41d4-a716-446655440000' + limit_usd: 100 + reset_interval: 'monthly' + updated_at: '2025-08-24T15:45:00Z' + workspace_id: '550e8400-e29b-41d4-a716-446655440000' + include_byok_in_budgets: false properties: data: + description: 'List of budgets configured for the workspace' items: - $ref: '#/components/schemas/InternConnection' + $ref: '#/components/schemas/WorkspaceBudget' type: 'array' + include_byok_in_budgets: + description: 'Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace''s budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime).' + example: false + type: 'boolean' required: - 'data' type: 'object' - InternDaemonAccess: - description: 'The intern daemon''s origin, the bearer `ori tui --host` sends to it as `ORI_DAEMON_TOKEN`, and who the caller is on the intern.' + ListWorkspaceMembersResponse: example: - origin: 'https://research-assistant-7c9e6679.or.bot' - token: 'daemon_token' - viewer: - principals: - - 'clerk:user_2abc' - - 'slack:T0123:U0456' + data: + - created_at: '2025-08-24T10:30:00Z' + id: '660e8400-e29b-41d4-a716-446655440000' + role: 'member' + user_id: 'user_abc123' + workspace_id: '550e8400-e29b-41d4-a716-446655440000' + total_count: 1 properties: - origin: - pattern: '^https?:\/\/([a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*)(?::(\d{1,5}))?$/iu' - type: 'string' - token: - pattern: '^[\w-]+$/u' - type: 'string' - viewer: - properties: - principals: - description: 'The caller''s Ori principals on this intern: `clerk:`, and, when the grant carries `vault:read`, `slack::` for each Slack account they linked to it. A session started by one of them in a one-to-one Slack DM is the caller''s to see.' - items: - type: 'string' - type: 'array' - required: - - 'principals' - type: 'object' + data: + description: 'List of workspace members' + items: + $ref: '#/components/schemas/WorkspaceMember' + type: 'array' + total_count: + description: 'Total number of members in the workspace' + example: 5 + type: 'integer' required: - - 'origin' - - 'token' - - 'viewer' + - 'data' + - 'total_count' type: 'object' - InternInvokeAcceptedResponse: - description: 'The intern admitted the prompt. The run continues on the intern.' + ListWorkspacesResponse: example: - session_id: 'b51a0e21-368b-4780-a220-14655bf28c55' - status: 'started' + data: + - created_at: '2025-08-24T10:30:00Z' + created_by: 'user_abc123' + default_guardrail_id: '595d5849-7e86-51fd-a7c0-705c34e4afff' + default_image_model: 'openai/dall-e-3' + default_provider_sort: 'price' + default_text_model: 'openai/gpt-4o' + description: 'Production environment workspace' + disabled_server_tools: null + id: '550e8400-e29b-41d4-a716-446655440000' + include_byok_in_budgets: false + io_logging_api_key_ids: null + io_logging_sampling_rate: 1 + is_data_discount_logging_enabled: true + is_observability_broadcast_enabled: false + is_observability_io_logging_enabled: false + name: 'Production' + slug: 'production' + updated_at: '2025-08-24T15:45:00Z' + total_count: 1 properties: - session_id: - description: 'The session the run belongs to. Send it back to continue the conversation.' - example: 'b51a0e21-368b-4780-a220-14655bf28c55' + data: + description: 'List of workspaces' + items: + $ref: '#/components/schemas/Workspace' + type: 'array' + total_count: + description: 'Total number of workspaces' + example: 5 + type: 'integer' + required: + - 'data' + - 'total_count' + type: 'object' + LocalShellCallItem: + description: 'A local shell command execution call' + example: + action: + command: + - 'ls' + - '-la' + env: + PATH: '/usr/bin' + timeout_ms: 5000 + type: 'exec' + call_id: 'call-abc123' + id: 'shell-abc123' + status: 'completed' + type: 'local_shell_call' + properties: + action: + properties: + command: + items: + type: 'string' + type: 'array' + env: + additionalProperties: + type: 'string' + type: 'object' + timeout_ms: + type: + - 'integer' + - 'null' + type: + enum: + - 'exec' + type: 'string' + user: + type: + - 'string' + - 'null' + working_directory: + type: + - 'string' + - 'null' + required: + - 'type' + - 'command' + - 'env' + type: 'object' + call_id: + type: 'string' + id: type: 'string' status: - description: '`started` when a new run began. `steered` when the session already had a run going and the prompt was delivered into it instead.' + $ref: '#/components/schemas/ToolCallStatus' + type: enum: - - 'started' - - 'steered' - example: 'started' + - 'local_shell_call' type: 'string' - x-speakeasy-unknown-values: allow required: - - 'session_id' + - 'type' + - 'id' + - 'call_id' + - 'action' - 'status' type: 'object' - InternInvokeRequest: - description: 'A prompt to run on the intern without holding a connection open.' + LocalShellCallOutputItem: + description: 'Output from a local shell command execution' example: - input: 'New support ticket 48213. Case token: ct_9f2c. Investigate and reply.' + id: 'output-abc123' + output: "total 24\ndrwxr-xr-x 5 user staff 160 Jan 1 12:00 ." + status: 'completed' + type: 'local_shell_call_output' properties: - input: - description: 'The prompt for the run, at most 32000 characters.' - example: 'New support ticket 48213. Case token: ct_9f2c. Investigate and reply.' - maxLength: 32000 - minLength: 1 + id: type: 'string' - session_id: - description: 'The session to run in. Send the `session_id` from an earlier `202` to continue that conversation, for example to hand the intern a decision on a case it is working. Omit it to start a new session. Only a `session_id` this endpoint issued to the same caller on the same intern is accepted; any other is refused with `404`.' - example: 'b51a0e21-368b-4780-a220-14655bf28c55' - maxLength: 256 - minLength: 1 + output: + type: 'string' + status: + anyOf: + - $ref: '#/components/schemas/ToolCallStatus' + - type: 'null' + type: + enum: + - 'local_shell_call_output' type: 'string' required: - - 'input' + - 'type' + - 'id' + - 'output' type: 'object' - InternLifecycleError: - additionalProperties: false - description: 'Intern lifecycle request failure.' - example: - error: - code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - properties: - error: - additionalProperties: false - properties: - code: - anyOf: - - type: 'string' - - type: 'integer' - message: - type: 'string' - metadata: - additionalProperties: false - properties: - reason: - type: 'string' - retryable: - type: 'boolean' - required: - - 'reason' - - 'retryable' - type: 'object' + ManagedPrivateEndpoint: + allOf: + - $ref: '#/components/schemas/PrivateEndpointSummary' + - properties: + declared_region: + $ref: '#/components/schemas/PrivateEndpointDeclaredRegion' + declared_zdr: + description: 'Whether you attest this deployment retains no prompt or completion data. `null` means undeclared.' + example: true + type: + - 'boolean' + - 'null' required: - - 'code' - - 'message' + - 'declared_zdr' + - 'declared_region' type: 'object' + ManagedPrivateEndpointResponse: + properties: + data: + $ref: '#/components/schemas/ManagedPrivateEndpoint' required: - - 'error' + - 'data' type: 'object' - InternListResponse: - additionalProperties: false - description: 'Interns visible to the authenticated API key.' + McpApprovalRequestItem: + description: 'Request for approval to execute an MCP tool' example: - data: - - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - has_more: false + arguments: '{"id":"123"}' + id: 'approval-abc123' + name: 'delete_record' + server_label: 'database-server' + type: 'mcp_approval_request' properties: - data: - items: - $ref: '#/components/schemas/Intern' - type: 'array' - has_more: - description: 'True when more interns match the current filters.' + arguments: + type: 'string' + id: + type: 'string' + name: + type: 'string' + server_label: + type: 'string' + type: + enum: + - 'mcp_approval_request' + type: 'string' + required: + - 'type' + - 'id' + - 'name' + - 'arguments' + - 'server_label' + type: 'object' + McpApprovalResponseItem: + description: 'User response to an MCP tool approval request' + example: + approval_request_id: 'approval-abc123' + approve: true + reason: 'Approved for execution' + type: 'mcp_approval_response' + properties: + approval_request_id: + type: 'string' + approve: type: 'boolean' - next_cursor: - description: 'Opaque cursor, present when `has_more` is true. Pass it as `starting_after` to fetch the next page.' - example: 'MjAyNi0wOS0xNlQwODozMDowMC4wMDAwMDBafDdjOWU2Njc5LTc0MjUtNDBkZS05NDRiLWUwN2ZjMWY5MGFlNw' + id: + type: + - 'string' + - 'null' + reason: + type: + - 'string' + - 'null' + type: + enum: + - 'mcp_approval_response' type: 'string' required: - - 'data' - - 'has_more' + - 'type' + - 'approval_request_id' + - 'approve' type: 'object' - ItemReferenceItem: - description: 'A reference to a previous response item by ID' + McpCallItem: + description: 'An MCP tool call with its output or error' example: - id: 'msg-abc123' - type: 'item_reference' + arguments: '{"query":"SELECT * FROM users"}' + id: 'mcp-call-abc123' + name: 'query_database' + output: '[{"id":1,"name":"Alice"}]' + server_label: 'database-server' + type: 'mcp_call' properties: + arguments: + type: 'string' + error: + $ref: '#/components/schemas/McpToolCallError' id: type: 'string' + name: + type: 'string' + output: + type: + - 'string' + - 'null' + server_label: + type: 'string' type: enum: - - 'item_reference' + - 'mcp_call' type: 'string' required: - 'type' - 'id' + - 'name' + - 'arguments' + - 'server_label' type: 'object' - JevRouterPlugin: - additionalProperties: false + McpHttpError: + description: 'The MCP server request failed at the HTTP layer' example: - excluded_models: - - 'openai/gpt-6-astra' - id: 'jev-router' - models: - - 'anthropic/*' - - 'openai/gpt-5.6-sol' + code: 503 + message: 'Service Unavailable' + type: 'http_error' properties: - allowed_models: - description: 'Alias of `models`, matching the auto-router field name. Entries from both fields are combined.' - example: - - 'anthropic/*' - items: - maxLength: 1024 - type: 'string' - maxItems: 1024 - type: 'array' - cost_tier: - description: 'Select low, medium, high, or a cost tier configured by the operator. Overrides the live-config tier and replaces the shared routing policy with that tier. Omit to use the live configuration. Model exclusions and the router kill switch still apply.' - example: 'medium' - pattern: '^[a-z][a-z0-9_-]{0,31}$' + code: + type: 'integer' + message: type: 'string' - excluded_models: - description: 'Remove these models from the router. Each entry is a model slug or a wildcard pattern (e.g. "xiaomi/*"). A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after `models`, so an excluded pattern always wins over an included one; when the lists leave no model the request can use, it fails with 404 rather than routing outside them.' - example: - - 'openai/gpt-6-astra' - - 'xiaomi/*' - items: - maxLength: 1024 - type: 'string' - maxItems: 1024 - type: 'array' - id: + type: enum: - - 'jev-router' + - 'http_error' type: 'string' - models: - description: 'Restrict the router to these models. Each entry is a model slug or a wildcard pattern (e.g. "anthropic/*"), matched against the current pool; models outside the pool are ignored. A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When omitted or empty, every model in the pool is a candidate; when no pool model matches, the list is ignored and the whole pool is used (`excluded_models` still apply). `allowed_models` is an alias; entries from both fields are combined.' - example: - - 'anthropic/*' - - 'openai/gpt-5.6-sol' + required: + - 'type' + - 'code' + - 'message' + type: 'object' + McpListToolsItem: + description: 'List of available MCP tools from a server' + example: + id: 'mcp-list-abc123' + server_label: 'database-server' + tools: + - description: 'Execute a database query' + input_schema: + properties: + query: + type: 'string' + type: 'object' + name: 'query_database' + type: 'mcp_list_tools' + properties: + error: + type: + - 'string' + - 'null' + id: + type: 'string' + server_label: + type: 'string' + tools: items: - maxLength: 1024 - type: 'string' - maxItems: 1024 + properties: + annotations: {} + description: + type: + - 'string' + - 'null' + input_schema: + additionalProperties: {} + type: 'object' + name: + type: 'string' + required: + - 'name' + - 'input_schema' + type: 'object' type: 'array' + type: + enum: + - 'mcp_list_tools' + type: 'string' required: + - 'type' - 'id' + - 'server_label' + - 'tools' type: 'object' - KeyAssignment: + McpProtocolError: + description: 'The MCP server returned a protocol-level error' + example: + code: -32601 + message: 'Method not found' + type: 'mcp_protocol_error' + properties: + code: + type: 'integer' + message: + type: 'string' + type: + enum: + - 'mcp_protocol_error' + type: 'string' + required: + - 'type' + - 'code' + - 'message' + type: 'object' + McpServerTool: + description: 'MCP (Model Context Protocol) tool configuration' + example: + server_label: 'my-server' + server_url: 'https://example.com/mcp' + type: 'mcp' + properties: + allowed_tools: + anyOf: + - items: + type: 'string' + type: 'array' + - properties: + read_only: + type: 'boolean' + tool_names: + items: + type: 'string' + type: 'array' + type: 'object' + - type: 'null' + authorization: + type: 'string' + connector_id: + enum: + - 'connector_dropbox' + - 'connector_gmail' + - 'connector_googlecalendar' + - 'connector_googledrive' + - 'connector_microsoftteams' + - 'connector_outlookcalendar' + - 'connector_outlookemail' + - 'connector_sharepoint' + type: 'string' + x-speakeasy-unknown-values: allow + headers: + additionalProperties: + type: 'string' + type: + - 'object' + - 'null' + require_approval: + anyOf: + - properties: + always: + properties: + tool_names: + items: + type: 'string' + type: 'array' + type: 'object' + never: + properties: + tool_names: + items: + type: 'string' + type: 'array' + type: 'object' + type: 'object' + - enum: + - 'always' + type: 'string' + - enum: + - 'never' + type: 'string' + - type: 'null' + server_description: + type: 'string' + server_label: + type: 'string' + server_url: + type: 'string' + type: + enum: + - 'mcp' + type: 'string' + required: + - 'type' + - 'server_label' + type: 'object' + McpToolCallError: + anyOf: + - type: 'string' + - $ref: '#/components/schemas/McpProtocolError' + - $ref: '#/components/schemas/McpToolExecutionError' + - $ref: '#/components/schemas/McpHttpError' + - type: 'null' + description: 'Error from an MCP tool call, either a plain message or a structured error' + example: + code: 503 + message: 'Service Unavailable' + type: 'http_error' + McpToolExecutionError: + description: 'The MCP tool ran but reported a failure' + example: + content: 'Connection refused' + type: 'mcp_tool_execution_error' + properties: + content: {} + type: + enum: + - 'mcp_tool_execution_error' + type: 'string' + required: + - 'type' + type: 'object' + MemberAssignment: example: assigned_by: 'user_abc123' created_at: '2025-08-24T10:30:00Z' guardrail_id: '550e8400-e29b-41d4-a716-446655440001' id: '550e8400-e29b-41d4-a716-446655440000' - key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' - key_label: 'prod-key' - key_name: 'Production Key' + organization_id: 'org_xyz789' + user_id: 'user_abc123' properties: assigned_by: description: 'User ID of who made the assignment' @@ -16241,2862 +16351,1754 @@ components: example: '550e8400-e29b-41d4-a716-446655440000' format: 'uuid' type: 'string' - key_hash: - description: 'Hash of the assigned API key' - example: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + organization_id: + description: 'Organization ID' + example: 'org_xyz789' type: 'string' - key_label: - description: 'Label of the API key' - example: 'prod-key' - type: 'string' - key_name: - description: 'Name of the API key' - example: 'Production Key' + user_id: + description: 'Clerk user ID of the assigned member' + example: 'user_abc123' type: 'string' required: - 'id' - - 'key_hash' + - 'user_id' + - 'organization_id' - 'guardrail_id' - - 'key_name' - - 'key_label' - 'assigned_by' - 'created_at' type: 'object' - KeyBudget: - description: 'One budget layer that applies to requests made with this key, with the spend enforcement compares against it.' + MessagesAdvisorToolResultBlock: + description: 'Advisor tool result from a prior assistant turn, replayed back to the model on the next turn. Mirrors the block Anthropic returns in assistant content when the `advisor_20260301` tool runs.' example: - budget_id: null - guardrail_id: '0df9e665-d932-5740-b2c7-b52af166bc11' - include_byok: false - limit_usd: 50 - remaining_usd: 17.5 - reset_interval: 'weekly' - resets_at: '2026-10-12T00:00:00.000Z' - scope: 'member' - spend_usd: 32.5 + content: + text: 'Advisor response text' + type: 'advisor_result' + tool_use_id: 'srvtoolu_01abc' + type: 'advisor_tool_result' properties: - budget_id: - description: 'ID of the workspace budget for the `workspace` scope; null for other scopes.' - example: null - type: - - 'string' - - 'null' - guardrail_id: - description: 'ID of the guardrail that carries this budget; null for other scopes.' - example: '0df9e665-d932-5740-b2c7-b52af166bc11' - type: - - 'string' - - 'null' - include_byok: - description: 'Whether external BYOK inference spend counts toward this budget.' - example: false - type: 'boolean' - limit_usd: - description: 'Budget limit in USD for the current window.' - example: 50 - format: 'double' - type: 'number' - remaining_usd: - description: '`limit_usd - spend_usd`. Zero or negative means this layer rejects requests with a 403 until it resets.' - example: 17.5 - format: 'double' - type: 'number' - reset_interval: - description: 'UTC window the spend is counted over (weeks start Monday); null for a lifetime budget that never resets.' - enum: - - 'daily' - - 'weekly' - - 'monthly' - - null - example: 'weekly' - type: - - 'string' - - 'null' - x-speakeasy-unknown-values: allow - resets_at: - description: 'ISO 8601 UTC instant at which the window rolls over and spend returns to zero; null for a lifetime budget.' - example: '2026-10-12T00:00:00.000Z' - format: 'date-time' - type: - - 'string' - - 'null' - scope: - description: 'Which budget layer this is, in the order enforcement checks them: the workspace default guardrail against the member aggregate (`workspace_default_member`) and against this key (`workspace_default_key`), the member guardrail (`member`), the API key guardrail (`api_key`), a workspace budget (`workspace`), or the key''s own limit (`key_limit`).' - enum: - - 'workspace_default_member' - - 'workspace_default_key' - - 'member' - - 'api_key' - - 'workspace' - - 'key_limit' - example: 'member' + content: + additionalProperties: {} + type: 'object' + tool_use_id: type: 'string' - x-speakeasy-unknown-values: allow - spend_usd: - description: 'Spend in USD that enforcement counts against this limit in the current window: the member aggregate for member-scoped layers, otherwise this key or workspace.' - example: 32.5 - format: 'double' - type: 'number' - required: - - 'scope' - - 'guardrail_id' - - 'budget_id' - - 'limit_usd' - - 'spend_usd' - - 'remaining_usd' - - 'reset_interval' - - 'resets_at' - - 'include_byok' - type: 'object' - Legacy_ChatContentVideo: - deprecated: true - description: 'Video input content part (legacy format - deprecated)' - example: - type: 'input_video' - video_url: - url: 'https://example.com/video.mp4' - properties: type: enum: - - 'input_video' + - 'advisor_tool_result' type: 'string' - video_url: - $ref: '#/components/schemas/Legacy_ChatContentVideoInput' required: - 'type' - - 'video_url' + - 'tool_use_id' + - 'content' type: 'object' - Legacy_ChatContentVideoInput: - description: 'Video input object' + MessagesBashToolResultBlock: + description: 'Output of a sandbox-executed `openrouter:bash` call from a prior assistant turn. Accepted on replay and dropped before the provider request — Anthropic has no equivalent block.' example: - url: 'https://example.com/video.mp4' + content: + command: 'ls' + exitCode: 0 + stderr: '' + stdout: "README.md\n" + tool_use_id: 'srvtoolu_01abc' + type: 'openrouter_bash_tool_result' properties: - processing: - description: 'Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini).' - enum: - - 'agentic' - - 'static' - example: 'agentic' + container_id: + description: 'The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed.' type: 'string' - x-speakeasy-unknown-values: allow - url: - description: 'URL of the video (data: URLs supported)' + content: + additionalProperties: {} + type: 'object' + files: + description: 'Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API.' + items: + properties: + container_id: + type: 'string' + end_index: + type: 'integer' + file_id: + type: 'string' + filename: + type: 'string' + start_index: + type: 'integer' + type: + enum: + - 'container_file_citation' + type: 'string' + required: + - 'type' + - 'container_id' + - 'file_id' + - 'filename' + - 'start_index' + - 'end_index' + type: 'object' + type: 'array' + tool_use_id: type: 'string' - required: - - 'url' - type: 'object' - Legacy_WebSearchServerTool: - description: 'Web search tool configuration' - example: - engine: 'auto' - filters: - allowed_domains: - - 'example.com' - type: 'web_search' - properties: - engine: - $ref: '#/components/schemas/WebSearchEngineEnum' - filters: - $ref: '#/components/schemas/WebSearchDomainFilter' - max_results: - description: 'Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped.' - example: 5 - type: 'integer' - max_uses: - description: 'Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it.' - example: 3 - type: 'integer' - mode: - $ref: '#/components/schemas/WebSearchMode' - search_context_size: - $ref: '#/components/schemas/SearchContextSizeEnum' type: enum: - - 'web_search' + - 'openrouter_bash_tool_result' type: 'string' - user_location: - $ref: '#/components/schemas/WebSearchUserLocation' - x_search: - $ref: '#/components/schemas/XSearchOptions' required: - 'type' + - 'tool_use_id' + - 'content' type: 'object' - ListBYOKKeysResponse: + MessagesContentBlockDeltaEvent: + description: 'Event sent when content is added to a content block' example: - data: - - allowed_api_key_hashes: null - allowed_models: null - allowed_user_ids: null - created_at: '2025-08-24T10:30:00Z' - declared_region: null - declared_zdr: null - disabled: false - id: '11111111-2222-3333-4444-555555555555' - is_byok_only: false - is_fallback: false - is_required: false - label: 'sk-...AbCd' - name: 'Production OpenAI Key' - provider: 'openai' - sort_order: 0 - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - total_count: 1 + delta: + text: 'Hello' + type: 'text_delta' + index: 0 + type: 'content_block_delta' properties: - data: - description: 'List of BYOK credentials.' - items: - $ref: '#/components/schemas/BYOKKey' - type: 'array' - total_count: - description: 'Total number of BYOK credentials matching the filters.' - example: 1 + delta: + oneOf: + - properties: + text: + type: 'string' + type: + enum: + - 'text_delta' + type: 'string' + required: + - 'type' + - 'text' + type: 'object' + - properties: + partial_json: + type: 'string' + type: + enum: + - 'input_json_delta' + type: 'string' + required: + - 'type' + - 'partial_json' + type: 'object' + - properties: + thinking: + type: 'string' + type: + enum: + - 'thinking_delta' + type: 'string' + required: + - 'type' + - 'thinking' + type: 'object' + - properties: + signature: + type: 'string' + type: + enum: + - 'signature_delta' + type: 'string' + required: + - 'type' + - 'signature' + type: 'object' + - properties: + citation: + discriminator: + mapping: + char_location: '#/components/schemas/AnthropicCitationCharLocation' + content_block_location: '#/components/schemas/AnthropicCitationContentBlockLocation' + page_location: '#/components/schemas/AnthropicCitationPageLocation' + search_result_location: '#/components/schemas/AnthropicCitationSearchResultLocation' + web_search_result_location: '#/components/schemas/AnthropicCitationWebSearchResultLocation' + propertyName: 'type' + oneOf: + - $ref: '#/components/schemas/AnthropicCitationCharLocation' + - $ref: '#/components/schemas/AnthropicCitationPageLocation' + - $ref: '#/components/schemas/AnthropicCitationContentBlockLocation' + - $ref: '#/components/schemas/AnthropicCitationWebSearchResultLocation' + - $ref: '#/components/schemas/AnthropicCitationSearchResultLocation' + type: + enum: + - 'citations_delta' + type: 'string' + required: + - 'type' + - 'citation' + type: 'object' + - properties: + content: + type: + - 'string' + - 'null' + encrypted_content: + type: + - 'string' + - 'null' + type: + enum: + - 'compaction_delta' + type: 'string' + required: + - 'type' + - 'content' + type: 'object' + index: type: 'integer' + type: + enum: + - 'content_block_delta' + type: 'string' required: - - 'data' - - 'total_count' + - 'type' + - 'index' + - 'delta' type: 'object' - ListEndpointsResponse: - description: 'List of available endpoints for a model' + MessagesContentBlockStartEvent: + description: 'Event sent when a new content block starts' example: - architecture: - input_modalities: - - 'text' - instruct_type: 'chatml' - modality: 'text->text' - output_modalities: - - 'text' - tokenizer: 'GPT' - created: 1692901234 - description: 'GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.' - endpoints: - - context_length: 8192 - latency_last_30m: - p50: 0.25 - p75: 0.35 - p90: 0.48 - p99: 0.85 - max_completion_tokens: 4096 - max_prompt_tokens: 8192 - model_id: 'openai/gpt-4' - model_name: 'GPT-4' - name: 'OpenAI: GPT-4' - pricing: - completion: '0.00006' - image: '0' - prompt: '0.00003' - request: '0' - provider_name: 'OpenAI' - quantization: 'fp16' - status: 0 - supported_parameters: - - 'temperature' - - 'top_p' - - 'max_tokens' - - 'frequency_penalty' - - 'presence_penalty' - supports_diarization: false - supports_implicit_caching: true - tag: 'openai' - throughput_last_30m: - p50: 45.2 - p75: 38.5 - p90: 28.3 - p99: 15.1 - uptime_last_1d: 99.8 - uptime_last_30m: 99.5 - uptime_last_5m: 100 - id: 'openai/gpt-4' - name: 'GPT-4' + content_block: + citations: [] + text: '' + type: 'text' + index: 0 + type: 'content_block_start' properties: - architecture: - allOf: - - $ref: '#/components/schemas/ModelArchitecture' + content_block: + anyOf: + - $ref: '#/components/schemas/AnthropicTextBlock' + - $ref: '#/components/schemas/AnthropicToolUseBlock' + - $ref: '#/components/schemas/AnthropicThinkingBlock' + - $ref: '#/components/schemas/AnthropicRedactedThinkingBlock' + - $ref: '#/components/schemas/ORAnthropicServerToolUseBlock' + - $ref: '#/components/schemas/AnthropicWebSearchToolResult' + - $ref: '#/components/schemas/AnthropicWebFetchToolResult' + - $ref: '#/components/schemas/AnthropicCodeExecutionToolResult' + - $ref: '#/components/schemas/AnthropicBashCodeExecutionToolResult' + - $ref: '#/components/schemas/AnthropicTextEditorCodeExecutionToolResult' + - $ref: '#/components/schemas/AnthropicToolSearchToolResult' + - $ref: '#/components/schemas/AnthropicContainerUpload' + - $ref: '#/components/schemas/AnthropicCompactionBlock' + - $ref: '#/components/schemas/AnthropicAdvisorToolResult' + - $ref: '#/components/schemas/ORAnthropicShellToolResult' + - $ref: '#/components/schemas/ORAnthropicBashToolResult' + - $ref: '#/components/schemas/ORAnthropicToolSearchResult' - properties: - input_modalities: - description: 'Supported input modalities' - items: - $ref: '#/components/schemas/InputModality' - type: 'array' - instruct_type: - $ref: '#/components/schemas/InstructType' - modality: - description: 'Primary modality of the model' - example: 'text' + content: type: - 'string' - 'null' - output_modalities: - description: 'Supported output modalities' - items: - $ref: '#/components/schemas/OutputModality' - type: 'array' - tokenizer: - anyOf: - - $ref: '#/components/schemas/ModelGroup' - - type: 'null' + encrypted_content: + type: + - 'string' + - 'null' + type: + enum: + - 'compaction' + type: 'string' required: - - 'tokenizer' - - 'instruct_type' - - 'modality' - - 'input_modalities' - - 'output_modalities' - created: - description: 'Unix timestamp of when the model was created' - example: 1692901234 + - 'type' + - 'content' + type: 'object' + index: type: 'integer' - description: - description: 'Description of the model' - example: 'GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.' - type: 'string' - endpoints: - description: 'List of available endpoints for this model' - items: - $ref: '#/components/schemas/PublicEndpoint' - type: 'array' - id: - description: 'Unique identifier for the model' - example: 'openai/gpt-4' - type: 'string' - name: - description: 'Display name of the model' - example: 'GPT-4' + type: + enum: + - 'content_block_start' type: 'string' required: - - 'id' - - 'name' - - 'created' - - 'description' - - 'architecture' - - 'endpoints' + - 'type' + - 'index' + - 'content_block' type: 'object' - ListExternalUsersResponse: + MessagesContentBlockStopEvent: + description: 'Event sent when a content block is complete' example: - data: - - created_at: '2026-09-16T12:00:00Z' - is_active: true - updated_at: '2026-09-16T12:00:00Z' - user: 'employee_123' - total_count: 1 + index: 0 + type: 'content_block_stop' properties: - data: - items: - $ref: '#/components/schemas/ExternalUser' - type: 'array' - total_count: - description: 'Number of registrations matching the filters before pagination.' - example: 1 + index: type: 'integer' + type: + enum: + - 'content_block_stop' + type: 'string' required: - - 'data' - - 'total_count' - type: 'object' - ListGuardrailsResponse: - example: - data: - - allowed_models: null - allowed_providers: - - 'openai' - - 'anthropic' - - 'google' - content_filter_builtins: - - action: 'redact' - label: '[EMAIL]' - slug: 'email' - content_filters: null - created_at: '2025-08-24T10:30:00Z' - description: 'Guardrail for production environment' - enable_free_model_publication: false - enable_free_model_training: true - enable_paid_model_training: true - enforce_zdr: null - enforce_zdr_anthropic: true - enforce_zdr_google: false - enforce_zdr_openai: true - enforce_zdr_other: false - enforce_zdr_xai: false - id: '550e8400-e29b-41d4-a716-446655440000' - ignored_models: null - ignored_providers: null - include_byok_in_budgets: false - limit_usd: 100 - name: 'Production Guardrail' - reset_interval: 'monthly' - updated_at: '2025-08-24T15:45:00Z' - workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' - total_count: 1 - properties: - data: - description: 'List of guardrails' - items: - $ref: '#/components/schemas/Guardrail' - type: 'array' - total_count: - description: 'Total number of guardrails' - example: 25 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListKeyAssignmentsResponse: - example: - data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' - key_label: 'prod-key' - key_name: 'Production Key' - total_count: 1 - properties: - data: - description: 'List of key assignments' - items: - $ref: '#/components/schemas/KeyAssignment' - type: 'array' - total_count: - description: 'Total number of key assignments for this guardrail' - example: 25 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListMemberAssignmentsResponse: - example: - data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - organization_id: 'org_xyz789' - user_id: 'user_abc123' - total_count: 1 - properties: - data: - description: 'List of member assignments' - items: - $ref: '#/components/schemas/MemberAssignment' - type: 'array' - total_count: - description: 'Total number of member assignments' - example: 10 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListObservabilityDestinationsResponse: - example: - data: - - api_key_hashes: null - broadcast_generation_cost: false - broadcast_generation_cost_allocation: false - broadcast_generation_identity: false - broadcast_generation_request_context: false - config: - baseUrl: 'https://us.cloud.langfuse.com' - publicKey: 'pk-l...EfGh' - secretKey: 'sk-l...AbCd' - created_at: '2025-08-24T10:30:00Z' - enabled: true - filter_rules: null - id: '99999999-aaaa-bbbb-cccc-dddddddddddd' - name: 'Production Langfuse' - privacy_mode: false - regions: - - 'global' - sampling_rate: 1 - type: 'langfuse' - updated_at: '2025-08-24T15:45:00Z' - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - total_count: 1 - properties: - data: - description: 'List of observability destinations.' - items: - $ref: '#/components/schemas/ObservabilityDestination' - type: 'array' - total_count: - description: 'Total number of destinations matching the filters.' - example: 1 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListPresetsResponse: - description: 'A paginated list of presets.' - example: - data: - - created_at: '2026-04-20T10:00:00Z' - creator_user_id: 'user_2dHFtVWx2n56w6HkM0000000000' - description: null - designated_version_id: '550e8400-e29b-41d4-a716-446655440000' - id: '650e8400-e29b-41d4-a716-446655440001' - name: 'my-preset' - slug: 'my-preset' - status: 'active' - status_updated_at: null - updated_at: '2026-04-20T10:00:00Z' - workspace_id: '750e8400-e29b-41d4-a716-446655440002' - total_count: 1 - properties: - data: - items: - $ref: '#/components/schemas/Preset' - type: 'array' - total_count: - type: 'integer' - required: - - 'data' - - 'total_count' + - 'type' + - 'index' type: 'object' - ListPresetVersionsResponse: - description: 'A paginated list of preset versions.' + MessagesDeltaEvent: + description: 'Event sent when the message metadata changes (e.g., stop_reason)' example: - data: - - config: - model: 'openai/gpt-4o' - temperature: 0.7 - created_at: '2026-04-20T10:00:00Z' - creator_id: 'user_2dHFtVWx2n56w6HkM0000000000' - id: '550e8400-e29b-41d4-a716-446655440000' - preset_id: '650e8400-e29b-41d4-a716-446655440001' - system_prompt: 'You are a helpful assistant.' - updated_at: '2026-04-20T10:00:00Z' - version: 1 - total_count: 1 - properties: - data: - items: - $ref: '#/components/schemas/PresetDesignatedVersion' - type: 'array' - total_count: - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListPrivateEndpointsResponse: - properties: - data: - items: - $ref: '#/components/schemas/PrivateEndpointSummary' - type: 'array' - required: - - 'data' - type: 'object' - ListScimGroupMappingsResponse: - properties: - data: - items: - $ref: '#/components/schemas/ScimGroupMapping' - type: 'array' - total_count: - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListScimGroupsResponse: - properties: - data: - items: - $ref: '#/components/schemas/ScimGroup' - type: 'array' - total_count: - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListToolsResponse: + delta: + container: null + stop_details: null + stop_reason: 'end_turn' + stop_sequence: null + type: 'message_delta' + usage: + cache_creation_input_tokens: null + cache_read_input_tokens: null + input_tokens: null + output_tokens: 15 + output_tokens_details: null + server_tool_use: null properties: - data: - items: - $ref: '#/components/schemas/ServerTool' - type: 'array' - links: + delta: properties: - next: - description: 'URL for the next page of results, or null if this is the last page' - example: null + container: + $ref: '#/components/schemas/AnthropicContainer' + safeguard_results: + items: + $ref: '#/components/schemas/AnthropicSafeguardResult' + type: + - 'array' + - 'null' + stop_details: + $ref: '#/components/schemas/AnthropicRefusalStopDetails' + stop_reason: + $ref: '#/components/schemas/ORAnthropicStopReason' + stop_sequence: type: - 'string' - 'null' required: - - 'next' + - 'container' + - 'stop_details' + - 'stop_reason' + - 'stop_sequence' type: 'object' - total_count: - description: 'Total number of tools' - example: 12 - type: 'integer' - required: - - 'data' - - 'total_count' - - 'links' - type: 'object' - ListWorkspaceBudgetsResponse: - example: - data: - - created_at: '2025-08-24T10:30:00Z' - id: '770e8400-e29b-41d4-a716-446655440000' - limit_usd: 100 - reset_interval: 'monthly' - updated_at: '2025-08-24T15:45:00Z' - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - include_byok_in_budgets: false - properties: - data: - description: 'List of budgets configured for the workspace' - items: - $ref: '#/components/schemas/WorkspaceBudget' - type: 'array' - include_byok_in_budgets: - description: 'Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace''s budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime).' - example: false - type: 'boolean' - required: - - 'data' - type: 'object' - ListWorkspaceMembersResponse: - example: - data: - - created_at: '2025-08-24T10:30:00Z' - id: '660e8400-e29b-41d4-a716-446655440000' - role: 'member' - user_id: 'user_abc123' - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - total_count: 1 - properties: - data: - description: 'List of workspace members' - items: - $ref: '#/components/schemas/WorkspaceMember' - type: 'array' - total_count: - description: 'Total number of members in the workspace' - example: 5 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - ListWorkspacesResponse: - example: - data: - - created_at: '2025-08-24T10:30:00Z' - created_by: 'user_abc123' - default_guardrail_id: '595d5849-7e86-51fd-a7c0-705c34e4afff' - default_image_model: 'openai/dall-e-3' - default_provider_sort: 'price' - default_text_model: 'openai/gpt-4o' - description: 'Production environment workspace' - disabled_server_tools: null - id: '550e8400-e29b-41d4-a716-446655440000' - include_byok_in_budgets: false - io_logging_api_key_ids: null - io_logging_sampling_rate: 1 - is_data_discount_logging_enabled: true - is_observability_broadcast_enabled: false - is_observability_io_logging_enabled: false - name: 'Production' - slug: 'production' - updated_at: '2025-08-24T15:45:00Z' - total_count: 1 - properties: - data: - description: 'List of workspaces' - items: - $ref: '#/components/schemas/Workspace' - type: 'array' - total_count: - description: 'Total number of workspaces' - example: 5 - type: 'integer' - required: - - 'data' - - 'total_count' - type: 'object' - LocalShellCallItem: - description: 'A local shell command execution call' - example: - action: - command: - - 'ls' - - '-la' - env: - PATH: '/usr/bin' - timeout_ms: 5000 - type: 'exec' - call_id: 'call-abc123' - id: 'shell-abc123' - status: 'completed' - type: 'local_shell_call' - properties: - action: + type: + enum: + - 'message_delta' + type: 'string' + usage: properties: - command: - items: - type: 'string' - type: 'array' - env: - additionalProperties: - type: 'string' - type: 'object' - timeout_ms: + cache_creation: + $ref: '#/components/schemas/AnthropicCacheCreation' + cache_creation_input_tokens: type: - 'integer' - 'null' - type: - enum: - - 'exec' - type: 'string' - user: + cache_read_input_tokens: type: - - 'string' + - 'integer' - 'null' - working_directory: + input_tokens: type: - - 'string' + - 'integer' - 'null' + iterations: + items: + $ref: '#/components/schemas/AnthropicUsageIteration' + type: 'array' + output_tokens: + type: 'integer' + output_tokens_details: + $ref: '#/components/schemas/AnthropicOutputTokensDetails' + server_tool_use: + $ref: '#/components/schemas/ORAnthropicServerToolUsage' required: - - 'type' - - 'command' - - 'env' + - 'input_tokens' + - 'output_tokens' + - 'output_tokens_details' + - 'cache_creation_input_tokens' + - 'cache_read_input_tokens' + - 'server_tool_use' type: 'object' - call_id: - type: 'string' - id: - type: 'string' - status: - $ref: '#/components/schemas/ToolCallStatus' - type: - enum: - - 'local_shell_call' - type: 'string' required: - 'type' - - 'id' - - 'call_id' - - 'action' - - 'status' + - 'delta' + - 'usage' type: 'object' - LocalShellCallOutputItem: - description: 'Output from a local shell command execution' + MessagesErrorEvent: + description: 'Error event in the stream' example: - id: 'output-abc123' - output: "total 24\ndrwxr-xr-x 5 user staff 160 Jan 1 12:00 ." - status: 'completed' - type: 'local_shell_call_output' + error: + error_type: 'provider_overloaded' + message: 'Overloaded' + type: 'overloaded_error' + type: 'error' properties: - id: - type: 'string' - output: - type: 'string' - status: - anyOf: - - $ref: '#/components/schemas/ToolCallStatus' - - type: 'null' + error: + properties: + error_type: + $ref: '#/components/schemas/ApiErrorType' + message: + type: 'string' + type: + type: 'string' + required: + - 'type' + - 'message' + type: 'object' + openrouter_metadata: + $ref: '#/components/schemas/OpenRouterMetadata' type: enum: - - 'local_shell_call_output' + - 'error' type: 'string' required: - 'type' - - 'id' - - 'output' + - 'error' type: 'object' - ManagedPrivateEndpoint: - allOf: - - $ref: '#/components/schemas/PrivateEndpointSummary' - - properties: - declared_region: - $ref: '#/components/schemas/PrivateEndpointDeclaredRegion' - declared_zdr: - description: 'Whether you attest this deployment retains no prompt or completion data. `null` means undeclared.' - example: true - type: - - 'boolean' - - 'null' - required: - - 'declared_zdr' - - 'declared_region' - type: 'object' - ManagedPrivateEndpointResponse: + MessagesFallbackParam: + additionalProperties: {} + description: 'Fallback model to try when the primary model fails or refuses. Only the `model` field is supported; per-attempt overrides are rejected.' + example: + model: 'claude-opus-4-8' properties: - data: - $ref: '#/components/schemas/ManagedPrivateEndpoint' + model: + type: 'string' required: - - 'data' + - 'model' type: 'object' - McpApprovalRequestItem: - description: 'Request for approval to execute an MCP tool' + MessagesMessageParam: + description: 'Anthropic message with OpenRouter extensions' example: - arguments: '{"id":"123"}' - id: 'approval-abc123' - name: 'delete_record' - server_label: 'database-server' - type: 'mcp_approval_request' + content: 'Hello, how are you?' + role: 'user' properties: - arguments: - type: 'string' - id: - type: 'string' - name: - type: 'string' - server_label: - type: 'string' - type: + clear_at: + $ref: '#/components/schemas/AnthropicSystemClearAt' + content: + anyOf: + - type: 'string' + - items: + oneOf: + - $ref: '#/components/schemas/AnthropicTextBlockParam' + - $ref: '#/components/schemas/AnthropicImageBlockParam' + - $ref: '#/components/schemas/AnthropicDocumentBlockParam' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + id: + type: 'string' + input: {} + name: + type: 'string' + type: + enum: + - 'tool_use' + type: 'string' + required: + - 'type' + - 'id' + - 'name' + type: 'object' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + content: + anyOf: + - type: 'string' + - items: + anyOf: + - $ref: '#/components/schemas/AnthropicTextBlockParam' + - $ref: '#/components/schemas/AnthropicImageBlockParam' + - properties: + tool_name: + type: 'string' + type: + enum: + - 'tool_reference' + type: 'string' + required: + - 'type' + - 'tool_name' + type: 'object' + - $ref: '#/components/schemas/AnthropicSearchResultBlockParam' + - $ref: '#/components/schemas/AnthropicDocumentBlockParam' + type: 'array' + is_error: + type: 'boolean' + tool_use_id: + type: 'string' + type: + enum: + - 'tool_result' + type: 'string' + required: + - 'type' + - 'tool_use_id' + type: 'object' + - properties: + signature: + type: 'string' + thinking: + type: 'string' + type: + enum: + - 'thinking' + type: 'string' + required: + - 'type' + - 'thinking' + - 'signature' + type: 'object' + - properties: + data: + type: 'string' + type: + enum: + - 'redacted_thinking' + type: 'string' + required: + - 'type' + - 'data' + type: 'object' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + id: + type: 'string' + input: {} + name: + type: 'string' + type: + enum: + - 'server_tool_use' + type: 'string' + required: + - 'type' + - 'id' + - 'name' + type: 'object' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + content: + anyOf: + - items: + $ref: '#/components/schemas/AnthropicWebSearchResultBlockParam' + type: 'array' + - properties: + error_code: + enum: + - 'invalid_tool_input' + - 'unavailable' + - 'max_uses_exceeded' + - 'too_many_requests' + - 'query_too_long' + - 'request_too_large' + type: 'string' + x-speakeasy-unknown-values: allow + type: + enum: + - 'web_search_tool_result_error' + type: 'string' + required: + - 'type' + - 'error_code' + type: 'object' + tool_use_id: + type: 'string' + type: + enum: + - 'web_search_tool_result' + type: 'string' + required: + - 'type' + - 'tool_use_id' + - 'content' + type: 'object' + - $ref: '#/components/schemas/AnthropicSearchResultBlockParam' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + content: + type: + - 'string' + - 'null' + encrypted_content: + type: + - 'string' + - 'null' + type: + enum: + - 'compaction' + type: 'string' + required: + - 'type' + - 'content' + type: 'object' + - $ref: '#/components/schemas/MessagesAdvisorToolResultBlock' + - $ref: '#/components/schemas/MessagesToolAdditionBlock' + - $ref: '#/components/schemas/MessagesToolRemovalBlock' + - $ref: '#/components/schemas/MessagesShellToolResultBlock' + - $ref: '#/components/schemas/MessagesBashToolResultBlock' + - $ref: '#/components/schemas/ORAnthropicToolSearchResultParam' + type: 'array' + output_config: + $ref: '#/components/schemas/AnthropicMessageOutputConfig' + role: enum: - - 'mcp_approval_request' + - 'user' + - 'assistant' + - 'system' type: 'string' + x-speakeasy-unknown-values: allow required: - - 'type' - - 'id' - - 'name' - - 'arguments' - - 'server_label' + - 'role' + - 'content' type: 'object' - McpApprovalResponseItem: - description: 'User response to an MCP tool approval request' + MessagesOutputConfig: + description: 'Configuration for controlling output behavior. Supports the effort parameter and structured output format.' example: - approval_request_id: 'approval-abc123' - approve: true - reason: 'Approved for execution' - type: 'mcp_approval_response' + effort: 'medium' properties: - approval_request_id: - type: 'string' - approve: - type: 'boolean' - id: + effort: + description: 'How much effort the model should put into its response. Higher effort levels may result in more thorough analysis but take longer. Valid values are `low`, `medium`, `high`, `xhigh`, or `max`.' + enum: + - 'low' + - 'medium' + - 'high' + - 'xhigh' + - 'max' + - null + example: 'medium' type: - 'string' - 'null' - reason: + x-speakeasy-unknown-values: allow + format: + description: 'A schema to specify Claude''s output format in responses. See [structured outputs](https://platform.claude.com/docs/en/build-with-claude/structured-outputs).' + properties: + schema: + additionalProperties: {} + type: 'object' + type: + enum: + - 'json_schema' + type: 'string' + required: + - 'type' + - 'schema' type: - - 'string' + - 'object' - 'null' - type: - enum: - - 'mcp_approval_response' - type: 'string' - required: - - 'type' - - 'approval_request_id' - - 'approve' - type: 'object' - McpCallItem: - description: 'An MCP tool call with its output or error' - example: - arguments: '{"query":"SELECT * FROM users"}' - id: 'mcp-call-abc123' - name: 'query_database' - output: '[{"id":1,"name":"Alice"}]' - server_label: 'database-server' - type: 'mcp_call' - properties: - arguments: - type: 'string' - error: - $ref: '#/components/schemas/McpToolCallError' - id: - type: 'string' - name: - type: 'string' - output: + task_budget: + description: 'Task budget for an agentic turn. The model sees a countdown of remaining tokens and uses it to prioritize work and wind down gracefully. Advisory — does not enforce a hard cap.' + example: + total: 400000 + type: 'tokens' + properties: + remaining: + minimum: 0 + type: + - 'integer' + - 'null' + total: + minimum: 20000 + type: 'integer' + type: + enum: + - 'tokens' + type: 'string' + required: + - 'type' + - 'total' type: - - 'string' + - 'object' - 'null' - server_label: - type: 'string' - type: - enum: - - 'mcp_call' - type: 'string' - required: - - 'type' - - 'id' - - 'name' - - 'arguments' - - 'server_label' type: 'object' - McpHttpError: - description: 'The MCP server request failed at the HTTP layer' + MessagesPingEvent: + description: 'Keep-alive ping event' example: - code: 503 - message: 'Service Unavailable' - type: 'http_error' + type: 'ping' properties: - code: - type: 'integer' - message: - type: 'string' type: enum: - - 'http_error' + - 'ping' type: 'string' required: - 'type' - - 'code' - - 'message' type: 'object' - McpListToolsItem: - description: 'List of available MCP tools from a server' + MessagesRequest: + description: 'Request schema for Anthropic Messages API endpoint' example: - id: 'mcp-list-abc123' - server_label: 'database-server' - tools: - - description: 'Execute a database query' - input_schema: - properties: - query: - type: 'string' - type: 'object' - name: 'query_database' - type: 'mcp_list_tools' + max_tokens: 1024 + messages: + - content: 'Hello, how are you?' + role: 'user' + model: 'anthropic/claude-4.5-sonnet-20250929' + temperature: 0.7 properties: - error: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + context_management: + properties: + edits: + items: + oneOf: + - properties: + clear_at_least: + $ref: '#/components/schemas/AnthropicInputTokensClearAtLeast' + clear_tool_inputs: + anyOf: + - type: 'boolean' + - items: + type: 'string' + type: 'array' + - type: 'null' + exclude_tools: + items: + type: 'string' + type: + - 'array' + - 'null' + keep: + $ref: '#/components/schemas/AnthropicToolUsesKeep' + trigger: + discriminator: + mapping: + input_tokens: '#/components/schemas/AnthropicInputTokensTrigger' + tool_uses: '#/components/schemas/AnthropicToolUsesTrigger' + propertyName: 'type' + oneOf: + - $ref: '#/components/schemas/AnthropicInputTokensTrigger' + - $ref: '#/components/schemas/AnthropicToolUsesTrigger' + type: + enum: + - 'clear_tool_uses_20250919' + type: 'string' + required: + - 'type' + type: 'object' + - properties: + keep: + anyOf: + - $ref: '#/components/schemas/AnthropicThinkingTurns' + - properties: + type: + enum: + - 'all' + type: 'string' + required: + - 'type' + type: 'object' + - enum: + - 'all' + type: 'string' + type: + enum: + - 'clear_thinking_20251015' + type: 'string' + required: + - 'type' + type: 'object' + - properties: + instructions: + type: + - 'string' + - 'null' + pause_after_compaction: + type: 'boolean' + trigger: + anyOf: + - allOf: + - $ref: '#/components/schemas/AnthropicInputTokensTrigger' + - properties: {} + type: 'object' + - type: 'null' + example: + type: 'input_tokens' + value: 100000 + type: + enum: + - 'compact_20260112' + type: 'string' + required: + - 'type' + type: 'object' + type: 'array' type: - - 'string' + - 'object' - 'null' - id: - type: 'string' - server_label: - type: 'string' - tools: + deferred_tools: + $ref: '#/components/schemas/DeferredToolsControl' + fallbacks: + description: 'Fallback models to try if the primary model fails or refuses, in order. Handled by OpenRouter multi-model routing rather than Anthropic server-side fallbacks; cannot be combined with `models`. Each entry accepts only `model`. Maximum of 3 entries.' + example: + - model: 'claude-opus-4-8' items: - properties: - annotations: {} - description: - type: - - 'string' - - 'null' - input_schema: - additionalProperties: {} - type: 'object' - name: - type: 'string' - required: - - 'name' - - 'input_schema' - type: 'object' - type: 'array' - type: - enum: - - 'mcp_list_tools' - type: 'string' - required: - - 'type' - - 'id' - - 'server_label' - - 'tools' - type: 'object' - McpProtocolError: - description: 'The MCP server returned a protocol-level error' - example: - code: -32601 - message: 'Method not found' - type: 'mcp_protocol_error' - properties: - code: + $ref: '#/components/schemas/MessagesFallbackParam' + type: + - 'array' + - 'null' + max_tokens: type: 'integer' - message: - type: 'string' - type: - enum: - - 'mcp_protocol_error' + messages: + items: + $ref: '#/components/schemas/MessagesMessageParam' + type: + - 'array' + - 'null' + metadata: + properties: + user_id: + type: + - 'string' + - 'null' + title: 'MessagesRequestMetadata' + type: 'object' + model: type: 'string' - required: - - 'type' - - 'code' - - 'message' - type: 'object' - McpServerTool: - description: 'MCP (Model Context Protocol) tool configuration' - example: - server_label: 'my-server' - server_url: 'https://example.com/mcp' - type: 'mcp' - properties: - allowed_tools: - anyOf: - - items: - type: 'string' - type: 'array' - - properties: - read_only: - type: 'boolean' - tool_names: - items: - type: 'string' - type: 'array' - type: 'object' - - type: 'null' - authorization: - type: 'string' - connector_id: - enum: - - 'connector_dropbox' - - 'connector_gmail' - - 'connector_googlecalendar' - - 'connector_googledrive' - - 'connector_microsoftteams' - - 'connector_outlookcalendar' - - 'connector_outlookemail' - - 'connector_sharepoint' - type: 'string' - x-speakeasy-unknown-values: allow - headers: - additionalProperties: + models: + items: type: 'string' + type: 'array' + output_config: + $ref: '#/components/schemas/MessagesOutputConfig' + plugins: + description: 'Plugins you want to enable for this request, including their settings.' + items: + discriminator: + mapping: + alignment: '#/components/schemas/AlignmentPlugin' + armor: '#/components/schemas/ArmorPlugin' + auto-beta-router: '#/components/schemas/AutoBetaRouterPlugin' + auto-router: '#/components/schemas/AutoRouterPlugin' + context-compression: '#/components/schemas/ContextCompressionPlugin' + file-parser: '#/components/schemas/FileParserPlugin' + fusion: '#/components/schemas/FusionPlugin' + jev-router: '#/components/schemas/JevRouterPlugin' + moderation: '#/components/schemas/ModerationPlugin' + pareto-router: '#/components/schemas/ParetoRouterPlugin' + response-healing: '#/components/schemas/ResponseHealingPlugin' + switchyard-router: '#/components/schemas/SwitchyardRouterPlugin' + web: '#/components/schemas/WebSearchPlugin' + web-fetch: '#/components/schemas/WebFetchPlugin' + propertyName: 'id' + oneOf: + - $ref: '#/components/schemas/AutoRouterPlugin' + - $ref: '#/components/schemas/AutoBetaRouterPlugin' + - $ref: '#/components/schemas/ModerationPlugin' + - $ref: '#/components/schemas/WebSearchPlugin' + - $ref: '#/components/schemas/WebFetchPlugin' + - $ref: '#/components/schemas/FileParserPlugin' + - $ref: '#/components/schemas/ResponseHealingPlugin' + - $ref: '#/components/schemas/ContextCompressionPlugin' + - $ref: '#/components/schemas/ParetoRouterPlugin' + - $ref: '#/components/schemas/FusionPlugin' + - $ref: '#/components/schemas/SwitchyardRouterPlugin' + - $ref: '#/components/schemas/JevRouterPlugin' + - $ref: '#/components/schemas/AlignmentPlugin' + - $ref: '#/components/schemas/ArmorPlugin' + type: 'array' + provider: + $ref: '#/components/schemas/ProviderPreferences' + route: + $ref: '#/components/schemas/DeprecatedRoute' + safeguards: + items: + $ref: '#/components/schemas/AnthropicSafeguard' type: - - 'object' - - 'null' - require_approval: - anyOf: - - properties: - always: - properties: - tool_names: - items: - type: 'string' - type: 'array' - type: 'object' - never: - properties: - tool_names: - items: - type: 'string' - type: 'array' - type: 'object' - type: 'object' - - enum: - - 'always' - type: 'string' - - enum: - - 'never' - type: 'string' - - type: 'null' - server_description: - type: 'string' - server_label: - type: 'string' - server_url: - type: 'string' - type: - enum: - - 'mcp' - type: 'string' - required: - - 'type' - - 'server_label' - type: 'object' - McpToolCallError: - anyOf: - - type: 'string' - - $ref: '#/components/schemas/McpProtocolError' - - $ref: '#/components/schemas/McpToolExecutionError' - - $ref: '#/components/schemas/McpHttpError' - - type: 'null' - description: 'Error from an MCP tool call, either a plain message or a structured error' - example: - code: 503 - message: 'Service Unavailable' - type: 'http_error' - McpToolExecutionError: - description: 'The MCP tool ran but reported a failure' - example: - content: 'Connection refused' - type: 'mcp_tool_execution_error' - properties: - content: {} - type: - enum: - - 'mcp_tool_execution_error' - type: 'string' - required: - - 'type' - type: 'object' - MemberAssignment: - example: - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - organization_id: 'org_xyz789' - user_id: 'user_abc123' - properties: - assigned_by: - description: 'User ID of who made the assignment' - example: 'user_abc123' - type: - - 'string' + - 'array' - 'null' - created_at: - description: 'ISO 8601 timestamp of when the assignment was created' - example: '2025-08-24T10:30:00Z' - type: 'string' - guardrail_id: - description: 'ID of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440001' - format: 'uuid' - type: 'string' - id: - description: 'Unique identifier for the assignment' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - organization_id: - description: 'Organization ID' - example: 'org_xyz789' - type: 'string' - user_id: - description: 'Clerk user ID of the assigned member' - example: 'user_abc123' - type: 'string' - required: - - 'id' - - 'user_id' - - 'organization_id' - - 'guardrail_id' - - 'assigned_by' - - 'created_at' - type: 'object' - MessagesAdvisorToolResultBlock: - description: 'Advisor tool result from a prior assistant turn, replayed back to the model on the next turn. Mirrors the block Anthropic returns in assistant content when the `advisor_20260301` tool runs.' - example: - content: - text: 'Advisor response text' - type: 'advisor_result' - tool_use_id: 'srvtoolu_01abc' - type: 'advisor_tool_result' - properties: - content: - additionalProperties: {} - type: 'object' - tool_use_id: - type: 'string' - type: - enum: - - 'advisor_tool_result' + service_tier: type: 'string' - required: - - 'type' - - 'tool_use_id' - - 'content' - type: 'object' - MessagesBashToolResultBlock: - description: 'Output of a sandbox-executed `openrouter:bash` call from a prior assistant turn. Accepted on replay and dropped before the provider request — Anthropic has no equivalent block.' - example: - content: - command: 'ls' - exitCode: 0 - stderr: '' - stdout: "README.md\n" - tool_use_id: 'srvtoolu_01abc' - type: 'openrouter_bash_tool_result' - properties: - container_id: - description: 'The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed.' + session_id: + description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.' + maxLength: 256 type: 'string' - content: - additionalProperties: {} - type: 'object' - files: - description: 'Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API.' + speed: + allOf: + - $ref: '#/components/schemas/AnthropicSpeed' + - description: 'Controls output generation speed. When set to `fast`, uses a higher-speed inference configuration at premium pricing. Defaults to `standard` when omitted.' + example: 'fast' + stop_sequences: items: - properties: - container_id: - type: 'string' - end_index: - type: 'integer' - file_id: - type: 'string' - filename: - type: 'string' - start_index: - type: 'integer' - type: - enum: - - 'container_file_citation' - type: 'string' - required: - - 'type' - - 'container_id' - - 'file_id' - - 'filename' - - 'start_index' - - 'end_index' - type: 'object' + type: 'string' type: 'array' - tool_use_id: - type: 'string' - type: - enum: - - 'openrouter_bash_tool_result' - type: 'string' - required: - - 'type' - - 'tool_use_id' - - 'content' - type: 'object' - MessagesContentBlockDeltaEvent: - description: 'Event sent when content is added to a content block' - example: - delta: - text: 'Hello' - type: 'text_delta' - index: 0 - type: 'content_block_delta' - properties: - delta: + stop_server_tools_when: + $ref: '#/components/schemas/StopServerToolsWhen' + stream: + type: 'boolean' + system: + anyOf: + - type: 'string' + - items: + $ref: '#/components/schemas/AnthropicTextBlockParam' + type: 'array' + temperature: + format: 'double' + type: 'number' + thinking: oneOf: - properties: - text: - type: 'string' + block_binding: + $ref: '#/components/schemas/AnthropicThinkingBlockBinding' + budget_tokens: + type: 'integer' + display: + $ref: '#/components/schemas/AnthropicThinkingDisplay' type: enum: - - 'text_delta' + - 'enabled' type: 'string' required: - 'type' - - 'text' + - 'budget_tokens' type: 'object' - properties: - partial_json: - type: 'string' type: enum: - - 'input_json_delta' + - 'disabled' type: 'string' required: - 'type' - - 'partial_json' type: 'object' - properties: - thinking: + block_binding: + $ref: '#/components/schemas/AnthropicThinkingBlockBinding' + display: + $ref: '#/components/schemas/AnthropicThinkingDisplay' + type: + enum: + - 'adaptive' type: 'string' + required: + - 'type' + type: 'object' + - additionalProperties: false + properties: type: enum: - - 'thinking_delta' + - 'between_tools' type: 'string' required: - 'type' - - 'thinking' type: 'object' + tool_choice: + oneOf: - properties: - signature: - type: 'string' + disable_parallel_tool_use: + type: 'boolean' type: enum: - - 'signature_delta' + - 'auto' type: 'string' required: - 'type' - - 'signature' type: 'object' - properties: - citation: - discriminator: - mapping: - char_location: '#/components/schemas/AnthropicCitationCharLocation' - content_block_location: '#/components/schemas/AnthropicCitationContentBlockLocation' - page_location: '#/components/schemas/AnthropicCitationPageLocation' - search_result_location: '#/components/schemas/AnthropicCitationSearchResultLocation' - web_search_result_location: '#/components/schemas/AnthropicCitationWebSearchResultLocation' - propertyName: 'type' - oneOf: - - $ref: '#/components/schemas/AnthropicCitationCharLocation' - - $ref: '#/components/schemas/AnthropicCitationPageLocation' - - $ref: '#/components/schemas/AnthropicCitationContentBlockLocation' - - $ref: '#/components/schemas/AnthropicCitationWebSearchResultLocation' - - $ref: '#/components/schemas/AnthropicCitationSearchResultLocation' + disable_parallel_tool_use: + type: 'boolean' type: enum: - - 'citations_delta' + - 'any' type: 'string' required: - 'type' - - 'citation' type: 'object' - properties: - content: - type: - - 'string' - - 'null' - encrypted_content: - type: - - 'string' - - 'null' type: enum: - - 'compaction_delta' + - 'none' type: 'string' required: - 'type' - - 'content' type: 'object' - index: - type: 'integer' - type: - enum: - - 'content_block_delta' - type: 'string' - required: - - 'type' - - 'index' - - 'delta' - type: 'object' - MessagesContentBlockStartEvent: - description: 'Event sent when a new content block starts' - example: - content_block: - citations: [] - text: '' - type: 'text' - index: 0 - type: 'content_block_start' - properties: - content_block: - anyOf: - - $ref: '#/components/schemas/AnthropicTextBlock' - - $ref: '#/components/schemas/AnthropicToolUseBlock' - - $ref: '#/components/schemas/AnthropicThinkingBlock' - - $ref: '#/components/schemas/AnthropicRedactedThinkingBlock' - - $ref: '#/components/schemas/ORAnthropicServerToolUseBlock' - - $ref: '#/components/schemas/AnthropicWebSearchToolResult' - - $ref: '#/components/schemas/AnthropicWebFetchToolResult' - - $ref: '#/components/schemas/AnthropicCodeExecutionToolResult' - - $ref: '#/components/schemas/AnthropicBashCodeExecutionToolResult' - - $ref: '#/components/schemas/AnthropicTextEditorCodeExecutionToolResult' - - $ref: '#/components/schemas/AnthropicToolSearchToolResult' - - $ref: '#/components/schemas/AnthropicContainerUpload' - - $ref: '#/components/schemas/AnthropicCompactionBlock' - - $ref: '#/components/schemas/AnthropicAdvisorToolResult' - - $ref: '#/components/schemas/ORAnthropicShellToolResult' - - $ref: '#/components/schemas/ORAnthropicBashToolResult' - - $ref: '#/components/schemas/ORAnthropicToolSearchResult' - properties: - content: - type: - - 'string' - - 'null' - encrypted_content: - type: - - 'string' - - 'null' + disable_parallel_tool_use: + type: 'boolean' + name: + type: 'string' type: enum: - - 'compaction' + - 'tool' type: 'string' required: - 'type' - - 'content' + - 'name' type: 'object' - index: - type: 'integer' - type: - enum: - - 'content_block_start' - type: 'string' - required: - - 'type' - - 'index' - - 'content_block' - type: 'object' - MessagesContentBlockStopEvent: - description: 'Event sent when a content block is complete' - example: - index: 0 - type: 'content_block_stop' - properties: - index: - type: 'integer' - type: - enum: - - 'content_block_stop' - type: 'string' - required: - - 'type' - - 'index' - type: 'object' - MessagesDeltaEvent: - description: 'Event sent when the message metadata changes (e.g., stop_reason)' - example: - delta: - container: null - stop_details: null - stop_reason: 'end_turn' - stop_sequence: null - type: 'message_delta' - usage: - cache_creation_input_tokens: null - cache_read_input_tokens: null - input_tokens: null - output_tokens: 15 - output_tokens_details: null - server_tool_use: null - properties: - delta: - properties: - container: - $ref: '#/components/schemas/AnthropicContainer' - safeguard_results: - items: - $ref: '#/components/schemas/AnthropicSafeguardResult' - type: - - 'array' - - 'null' - stop_details: - $ref: '#/components/schemas/AnthropicRefusalStopDetails' - stop_reason: - $ref: '#/components/schemas/ORAnthropicStopReason' - stop_sequence: - type: - - 'string' - - 'null' - required: - - 'container' - - 'stop_details' - - 'stop_reason' - - 'stop_sequence' - type: 'object' - type: - enum: - - 'message_delta' - type: 'string' - usage: - properties: - cache_creation: - $ref: '#/components/schemas/AnthropicCacheCreation' - cache_creation_input_tokens: - type: - - 'integer' - - 'null' - cache_read_input_tokens: - type: - - 'integer' - - 'null' - input_tokens: + tools: + items: + anyOf: + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + defer_loading: + type: 'boolean' + description: + type: 'string' + input_schema: + additionalProperties: {} + properties: + properties: {} + required: + items: + type: 'string' + type: + - 'array' + - 'null' + type: + default: 'object' + type: 'string' + type: 'object' + name: + type: 'string' + strict: + type: 'boolean' + type: + enum: + - 'custom' + type: 'string' + required: + - 'name' + - 'input_schema' + type: 'object' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + name: + enum: + - 'bash' + type: 'string' + type: + enum: + - 'bash_20250124' + type: 'string' + required: + - 'type' + - 'name' + type: 'object' + - properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + name: + enum: + - 'str_replace_editor' + type: 'string' + type: + enum: + - 'text_editor_20250124' + type: 'string' + required: + - 'type' + - 'name' + type: 'object' + - properties: + allowed_domains: + items: + type: 'string' + type: + - 'array' + - 'null' + blocked_domains: + items: + type: 'string' + type: + - 'array' + - 'null' + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + max_uses: + type: + - 'integer' + - 'null' + name: + enum: + - 'web_search' + type: 'string' + type: + enum: + - 'web_search_20250305' + type: 'string' + user_location: + $ref: '#/components/schemas/AnthropicWebSearchToolUserLocation' + required: + - 'type' + - 'name' + type: 'object' + - properties: + allowed_callers: + $ref: '#/components/schemas/AnthropicAllowedCallers' + allowed_domains: + items: + type: 'string' + type: + - 'array' + - 'null' + blocked_domains: + items: + type: 'string' + type: + - 'array' + - 'null' + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + max_uses: + type: + - 'integer' + - 'null' + name: + enum: + - 'web_search' + type: 'string' + type: + enum: + - 'web_search_20260209' + type: 'string' + user_location: + $ref: '#/components/schemas/AnthropicWebSearchToolUserLocation' + required: + - 'type' + - 'name' + type: 'object' + - properties: + allowed_callers: + $ref: '#/components/schemas/AnthropicAllowedCallers' + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + caching: + anyOf: + - $ref: '#/components/schemas/AnthropicCacheControlDirective' + - type: 'null' + defer_loading: + type: 'boolean' + max_uses: + type: 'integer' + model: + type: 'string' + name: + enum: + - 'advisor' + type: 'string' + type: + enum: + - 'advisor_20260301' + type: 'string' + required: + - 'type' + - 'name' + - 'model' + type: 'object' + - $ref: '#/components/schemas/BashServerTool' + - $ref: '#/components/schemas/DatetimeServerTool' + - $ref: '#/components/schemas/ImageGenerationServerTool_OpenRouter' + - $ref: '#/components/schemas/MessagesSearchModelsServerTool' + - $ref: '#/components/schemas/WebFetchServerTool' + - $ref: '#/components/schemas/OpenRouterWebSearchServerTool' + - additionalProperties: {} + properties: + type: + type: 'string' + required: + - 'type' + type: 'object' + - $ref: '#/components/schemas/AnthropicToolSearchToolBm25' + - $ref: '#/components/schemas/AnthropicToolSearchToolRegex' + - $ref: '#/components/schemas/ShellServerTool_OpenRouter' + - $ref: '#/components/schemas/ToolSearchServerTool' + type: 'array' + top_k: + type: 'integer' + top_p: + format: 'double' + type: 'number' + trace: + $ref: '#/components/schemas/TraceConfig' + user: + description: 'A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters.' + maxLength: 256 + type: 'string' + required: + - 'model' + - 'messages' + type: 'object' + MessagesResult: + allOf: + - $ref: '#/components/schemas/BaseMessagesResult' + - properties: + context_management: + properties: + applied_edits: + items: + additionalProperties: {} + properties: + type: + type: 'string' + required: + - 'type' + type: 'object' + type: 'array' + required: + - 'applied_edits' type: - - 'integer' + - 'object' - 'null' - iterations: + openrouter_metadata: + $ref: '#/components/schemas/OpenRouterMetadata' + provider: + type: 'string' + safeguard_results: items: - $ref: '#/components/schemas/AnthropicUsageIteration' - type: 'array' - output_tokens: - type: 'integer' - output_tokens_details: - $ref: '#/components/schemas/AnthropicOutputTokensDetails' - server_tool_use: - $ref: '#/components/schemas/ORAnthropicServerToolUsage' - required: - - 'input_tokens' - - 'output_tokens' - - 'output_tokens_details' - - 'cache_creation_input_tokens' - - 'cache_read_input_tokens' - - 'server_tool_use' + $ref: '#/components/schemas/AnthropicSafeguardResult' + type: + - 'array' + - 'null' + usage: + allOf: + - $ref: '#/components/schemas/AnthropicUsage' + - properties: + cost: + format: 'double' + type: + - 'number' + - 'null' + cost_details: + $ref: '#/components/schemas/CostDetails' + is_byok: + type: 'boolean' + iterations: + items: + $ref: '#/components/schemas/AnthropicUsageIteration' + type: 'array' + server_tool_use: + $ref: '#/components/schemas/ORAnthropicServerToolUsage' + service_tier: + type: + - 'string' + - 'null' + speed: + $ref: '#/components/schemas/AnthropicSpeed' + type: 'object' + example: + cache_creation: null + cache_creation_input_tokens: null + cache_read_input_tokens: null + inference_geo: null + input_tokens: 100 + output_tokens: 50 + output_tokens_details: null + server_tool_use: null + service_tier: 'standard' type: 'object' - required: - - 'type' - - 'delta' - - 'usage' - type: 'object' - MessagesErrorEvent: - description: 'Error event in the stream' + description: 'Non-streaming response from the Anthropic Messages API with OpenRouter extensions' example: - error: - error_type: 'provider_overloaded' - message: 'Overloaded' - type: 'overloaded_error' - type: 'error' + container: null + content: + - citations: [] + text: 'Hello! I''m doing well, thank you for asking.' + type: 'text' + id: 'msg_01XFDUDYJgAACzvnptvVoYEL' + model: 'claude-sonnet-4-5-20250929' + role: 'assistant' + stop_details: null + stop_reason: 'end_turn' + stop_sequence: null + type: 'message' + usage: + cache_creation: null + cache_creation_input_tokens: null + cache_read_input_tokens: null + inference_geo: null + input_tokens: 12 + output_tokens: 15 + output_tokens_details: null + server_tool_use: null + service_tier: 'standard' + MessagesSearchModelsServerTool: + description: 'OpenRouter built-in server tool: searches and filters AI models available on OpenRouter' + example: + parameters: + max_results: 5 + type: 'openrouter:experimental__search_models' properties: - error: - properties: - error_type: - $ref: '#/components/schemas/ApiErrorType' - message: - type: 'string' - type: - type: 'string' - required: - - 'type' - - 'message' - type: 'object' - openrouter_metadata: - $ref: '#/components/schemas/OpenRouterMetadata' + parameters: + $ref: '#/components/schemas/SearchModelsServerToolConfig' type: enum: - - 'error' + - 'openrouter:experimental__search_models' type: 'string' required: - 'type' - - 'error' type: 'object' - MessagesFallbackParam: - additionalProperties: {} - description: 'Fallback model to try when the primary model fails or refuses. Only the `model` field is supported; per-attempt overrides are rejected.' + MessagesShellToolResultBlock: + description: 'Output of an `openrouter:shell` call from a prior assistant turn. Accepted on replay and dropped before the provider request — Anthropic has no equivalent block.' example: - model: 'claude-opus-4-8' + content: + output: + - outcome: + exit_code: 0 + type: 'exit' + stderr: '' + stdout: "README.md\n" + tool_use_id: 'srvtoolu_01abc' + type: 'openrouter_shell_tool_result' properties: - model: + container_id: + description: 'The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed.' + type: 'string' + content: + additionalProperties: {} + type: 'object' + files: + description: 'Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API.' + items: + properties: + container_id: + type: 'string' + end_index: + type: 'integer' + file_id: + type: 'string' + filename: + type: 'string' + start_index: + type: 'integer' + type: + enum: + - 'container_file_citation' + type: 'string' + required: + - 'type' + - 'container_id' + - 'file_id' + - 'filename' + - 'start_index' + - 'end_index' + type: 'object' + type: 'array' + tool_use_id: + type: 'string' + type: + enum: + - 'openrouter_shell_tool_result' type: 'string' required: - - 'model' + - 'type' + - 'tool_use_id' + - 'content' type: 'object' - MessagesMessageParam: - description: 'Anthropic message with OpenRouter extensions' + MessagesStartEvent: + description: 'Event sent at the start of a streaming message' example: - content: 'Hello, how are you?' - role: 'user' + message: + container: null + content: [] + id: 'msg_01XFDUDYJgAACzvnptvVoYEL' + model: 'claude-sonnet-4-5-20250929' + role: 'assistant' + stop_details: null + stop_reason: null + stop_sequence: null + type: 'message' + usage: + cache_creation: null + cache_creation_input_tokens: null + cache_read_input_tokens: null + inference_geo: null + input_tokens: 12 + output_tokens: 0 + output_tokens_details: null + server_tool_use: null + service_tier: 'standard' + type: 'message_start' properties: - clear_at: - $ref: '#/components/schemas/AnthropicSystemClearAt' - content: - anyOf: - - type: 'string' - - items: - oneOf: - - $ref: '#/components/schemas/AnthropicTextBlockParam' - - $ref: '#/components/schemas/AnthropicImageBlockParam' - - $ref: '#/components/schemas/AnthropicDocumentBlockParam' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - id: - type: 'string' - input: {} - name: - type: 'string' - type: - enum: - - 'tool_use' - type: 'string' - required: - - 'type' - - 'id' - - 'name' - type: 'object' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - content: - anyOf: - - type: 'string' - - items: - anyOf: - - $ref: '#/components/schemas/AnthropicTextBlockParam' - - $ref: '#/components/schemas/AnthropicImageBlockParam' - - properties: - tool_name: - type: 'string' - type: - enum: - - 'tool_reference' - type: 'string' - required: - - 'type' - - 'tool_name' - type: 'object' - - $ref: '#/components/schemas/AnthropicSearchResultBlockParam' - - $ref: '#/components/schemas/AnthropicDocumentBlockParam' - type: 'array' - is_error: - type: 'boolean' - tool_use_id: - type: 'string' - type: - enum: - - 'tool_result' - type: 'string' - required: - - 'type' - - 'tool_use_id' - type: 'object' - - properties: - signature: - type: 'string' - thinking: - type: 'string' - type: - enum: - - 'thinking' - type: 'string' - required: - - 'type' - - 'thinking' - - 'signature' - type: 'object' - - properties: - data: - type: 'string' - type: - enum: - - 'redacted_thinking' - type: 'string' - required: - - 'type' - - 'data' - type: 'object' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - id: - type: 'string' - input: {} - name: - type: 'string' - type: - enum: - - 'server_tool_use' - type: 'string' - required: - - 'type' - - 'id' - - 'name' - type: 'object' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - content: - anyOf: - - items: - $ref: '#/components/schemas/AnthropicWebSearchResultBlockParam' - type: 'array' - - properties: - error_code: - enum: - - 'invalid_tool_input' - - 'unavailable' - - 'max_uses_exceeded' - - 'too_many_requests' - - 'query_too_long' - - 'request_too_large' - type: 'string' - x-speakeasy-unknown-values: allow - type: - enum: - - 'web_search_tool_result_error' - type: 'string' - required: - - 'type' - - 'error_code' - type: 'object' - tool_use_id: - type: 'string' - type: - enum: - - 'web_search_tool_result' - type: 'string' - required: - - 'type' - - 'tool_use_id' - - 'content' - type: 'object' - - $ref: '#/components/schemas/AnthropicSearchResultBlockParam' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - content: - type: - - 'string' - - 'null' - encrypted_content: - type: - - 'string' - - 'null' - type: - enum: - - 'compaction' - type: 'string' - required: - - 'type' - - 'content' - type: 'object' - - $ref: '#/components/schemas/MessagesAdvisorToolResultBlock' - - $ref: '#/components/schemas/MessagesToolAdditionBlock' - - $ref: '#/components/schemas/MessagesToolRemovalBlock' - - $ref: '#/components/schemas/MessagesShellToolResultBlock' - - $ref: '#/components/schemas/MessagesBashToolResultBlock' - - $ref: '#/components/schemas/ORAnthropicToolSearchResultParam' - type: 'array' - output_config: - $ref: '#/components/schemas/AnthropicMessageOutputConfig' - role: - enum: - - 'user' - - 'assistant' - - 'system' - type: 'string' - x-speakeasy-unknown-values: allow - required: - - 'role' - - 'content' - type: 'object' - MessagesOutputConfig: - description: 'Configuration for controlling output behavior. Supports the effort parameter and structured output format.' - example: - effort: 'medium' - properties: - effort: - description: 'How much effort the model should put into its response. Higher effort levels may result in more thorough analysis but take longer. Valid values are `low`, `medium`, `high`, `xhigh`, or `max`.' - enum: - - 'low' - - 'medium' - - 'high' - - 'xhigh' - - 'max' - - null - example: 'medium' - type: - - 'string' - - 'null' - x-speakeasy-unknown-values: allow - format: - description: 'A schema to specify Claude''s output format in responses. See [structured outputs](https://platform.claude.com/docs/en/build-with-claude/structured-outputs).' + message: properties: - schema: - additionalProperties: {} - type: 'object' - type: - enum: - - 'json_schema' + container: + $ref: '#/components/schemas/AnthropicContainer' + content: + items: + $ref: '#/components/schemas/ORAnthropicContentBlock' + type: 'array' + id: type: 'string' - required: - - 'type' - - 'schema' - type: - - 'object' - - 'null' - task_budget: - description: 'Task budget for an agentic turn. The model sees a countdown of remaining tokens and uses it to prioritize work and wind down gracefully. Advisory — does not enforce a hard cap.' - example: - total: 400000 - type: 'tokens' - properties: - remaining: - minimum: 0 + input_transformations: + items: + $ref: '#/components/schemas/AnthropicInputTransformation' type: - - 'integer' + - 'array' - 'null' - total: - minimum: 20000 - type: 'integer' + model: + type: 'string' + provider: + enum: + - 'AnyScale' + - 'Atoma' + - 'Cent-ML' + - 'CrofAI' + - 'Enfer' + - 'GoPomelo' + - 'HuggingFace' + - 'Hyperbolic' + - 'Hyperbolic 2' + - 'InoCloud' + - 'Kluster' + - 'Lambda' + - 'Lepton' + - 'Lynn 2' + - 'Lynn' + - 'Mancer' + - 'Modal' + - 'NCompass' + - 'Nineteen' + - 'OctoAI' + - 'Recursal' + - 'Reflection' + - 'Replicate' + - 'SambaNova 2' + - 'SF Compute' + - 'Targon' + - 'Together 2' + - 'Ubicloud' + - '01.AI' + - 'AkashML' + - 'AI21' + - 'AionLabs' + - 'Alibaba' + - 'Ambient' + - 'Baidu' + - 'Amazon Bedrock' + - 'Amazon Nova' + - 'Anthropic' + - 'Arcee AI' + - 'AssemblyAI' + - 'AtlasCloud' + - 'Avian' + - 'Azure' + - 'BaseTen' + - 'BytePlus' + - 'Black Forest Labs' + - 'Cerebras' + - 'Chutes' + - 'Cirrascale' + - 'Claude Platform on AWS' + - 'Clarifai' + - 'Cloudflare' + - 'Cohere' + - 'CoreWeave' + - 'Cosine' + - 'Crucible' + - 'Crusoe' + - 'Darkbloom' + - 'Databricks' + - 'Decart' + - 'Deepgram' + - 'DeepInfra' + - 'DeepSeek' + - 'DekaLLM' + - 'DigitalOcean' + - 'ElevenLabs' + - 'Featherless' + - 'Fireworks' + - 'Fish Audio' + - 'Friendli' + - 'GMICloud' + - 'Google' + - 'Google AI Studio' + - 'Groq' + - 'HeyGen' + - 'Inception' + - 'Inceptron' + - 'InferenceNet' + - 'Ionstream' + - 'Infermatic' + - 'Io Net' + - 'Inferact vLLM' + - 'Inflection' + - 'Liquid' + - 'Makora' + - 'Mara' + - 'Mancer 2' + - 'Meta' + - 'Minimax' + - 'ModelRun' + - 'Mistral' + - 'Modular' + - 'Moonshot AI' + - 'Morph' + - 'VoyageAI by MongoDB' + - 'TypeSafe' + - 'Near AI' + - 'Nebius' + - 'Nex AGI' + - 'NextBit' + - 'Novita' + - 'Nvidia' + - 'Ollama' + - 'OpenAI' + - 'OpenInference' + - 'Parasail' + - 'ParetoAlpha' + - 'Poolside' + - 'PrimeIntellect' + - 'Perceptron' + - 'Perplexity' + - 'Phala' + - 'Recraft' + - 'Recursive' + - 'Reka' + - 'Relace' + - 'Respan' + - 'Sail Research' + - 'Sakana AI' + - 'SambaNova' + - 'ScaleDown' + - 'Seed' + - 'SiliconFlow' + - 'Sourceful' + - 'StepFun' + - 'Stealth' + - 'StreamLake' + - 'Switchpoint' + - 'Tencent' + - 'Tenstorrent' + - 'Thinking Machines' + - 'Together' + - 'Unbiased' + - 'Upstage' + - 'Venice' + - 'Wafer' + - 'WandB' + - 'Quiver' + - 'Krea' + - 'Runway' + - 'Xiaomi' + - 'xAI' + - 'Z.AI' + - 'FakeProvider' + type: 'string' + x-speakeasy-unknown-values: 'allow' + role: + enum: + - 'assistant' + type: 'string' + stop_details: + $ref: '#/components/schemas/AnthropicRefusalStopDetails' + stop_reason: {} + stop_sequence: {} type: enum: - - 'tokens' + - 'message' type: 'string' + usage: + allOf: + - $ref: '#/components/schemas/AnthropicUsage' + - properties: + iterations: + items: + $ref: '#/components/schemas/AnthropicUsageIteration' + type: 'array' + speed: + $ref: '#/components/schemas/AnthropicSpeed' + type: 'object' + example: + cache_creation: + ephemeral_1h_input_tokens: 0 + ephemeral_5m_input_tokens: 7381 + cache_creation_input_tokens: 7381 + cache_read_input_tokens: 0 + inference_geo: null + input_tokens: 100 + output_tokens: 1 + output_tokens_details: null + server_tool_use: null + service_tier: 'standard' required: + - 'id' - 'type' - - 'total' - type: - - 'object' - - 'null' + - 'role' + - 'container' + - 'content' + - 'model' + - 'stop_reason' + - 'stop_details' + - 'stop_sequence' + - 'usage' + type: 'object' + type: + enum: + - 'message_start' + type: 'string' + required: + - 'type' + - 'message' type: 'object' - MessagesPingEvent: - description: 'Keep-alive ping event' + MessagesStopEvent: + description: 'Event sent when the message is complete' example: - type: 'ping' + type: 'message_stop' properties: + openrouter_metadata: + $ref: '#/components/schemas/OpenRouterMetadata' type: enum: - - 'ping' + - 'message_stop' type: 'string' required: - 'type' type: 'object' - MessagesRequest: - description: 'Request schema for Anthropic Messages API endpoint' + MessagesStreamEvents: + description: 'Union of all possible streaming events' + discriminator: + mapping: + content_block_delta: '#/components/schemas/MessagesContentBlockDeltaEvent' + content_block_start: '#/components/schemas/MessagesContentBlockStartEvent' + content_block_stop: '#/components/schemas/MessagesContentBlockStopEvent' + error: '#/components/schemas/MessagesErrorEvent' + message_delta: '#/components/schemas/MessagesDeltaEvent' + message_start: '#/components/schemas/MessagesStartEvent' + message_stop: '#/components/schemas/MessagesStopEvent' + ping: '#/components/schemas/MessagesPingEvent' + propertyName: 'type' example: - max_tokens: 1024 - messages: - - content: 'Hello, how are you?' - role: 'user' - model: 'anthropic/claude-4.5-sonnet-20250929' - temperature: 0.7 + delta: + text: 'Hello' + type: 'text_delta' + index: 0 + type: 'content_block_delta' + oneOf: + - $ref: '#/components/schemas/MessagesStartEvent' + - $ref: '#/components/schemas/MessagesDeltaEvent' + - $ref: '#/components/schemas/MessagesStopEvent' + - $ref: '#/components/schemas/MessagesContentBlockStartEvent' + - $ref: '#/components/schemas/MessagesContentBlockDeltaEvent' + - $ref: '#/components/schemas/MessagesContentBlockStopEvent' + - $ref: '#/components/schemas/MessagesPingEvent' + - $ref: '#/components/schemas/MessagesErrorEvent' + MessagesStreamingResponse: + example: + data: + delta: + text: 'Hello' + type: 'text_delta' + index: 0 + type: 'content_block_delta' + event: 'content_block_delta' + properties: + data: + $ref: '#/components/schemas/MessagesStreamEvents' + event: + type: 'string' + required: + - 'event' + - 'data' + type: 'object' + MessagesToolAdditionBlock: + description: 'Loads a previously deferred tool (declared in `tools` with `defer_loading: true`) mid-conversation without invalidating the prompt cache. Only valid in `role: "system"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.' + example: + tool: + name: 'get_forecast' + type: 'tool_reference' + type: 'tool_addition' properties: cache_control: $ref: '#/components/schemas/AnthropicCacheControlDirective' - context_management: - properties: - edits: - items: - oneOf: - - properties: - clear_at_least: - $ref: '#/components/schemas/AnthropicInputTokensClearAtLeast' - clear_tool_inputs: - anyOf: - - type: 'boolean' - - items: - type: 'string' - type: 'array' - - type: 'null' - exclude_tools: - items: - type: 'string' - type: - - 'array' - - 'null' - keep: - $ref: '#/components/schemas/AnthropicToolUsesKeep' - trigger: - discriminator: - mapping: - input_tokens: '#/components/schemas/AnthropicInputTokensTrigger' - tool_uses: '#/components/schemas/AnthropicToolUsesTrigger' - propertyName: 'type' - oneOf: - - $ref: '#/components/schemas/AnthropicInputTokensTrigger' - - $ref: '#/components/schemas/AnthropicToolUsesTrigger' - type: - enum: - - 'clear_tool_uses_20250919' - type: 'string' - required: - - 'type' - type: 'object' - - properties: - keep: - anyOf: - - $ref: '#/components/schemas/AnthropicThinkingTurns' - - properties: - type: - enum: - - 'all' - type: 'string' - required: - - 'type' - type: 'object' - - enum: - - 'all' - type: 'string' - type: - enum: - - 'clear_thinking_20251015' - type: 'string' - required: - - 'type' - type: 'object' - - properties: - instructions: - type: - - 'string' - - 'null' - pause_after_compaction: - type: 'boolean' - trigger: - anyOf: - - allOf: - - $ref: '#/components/schemas/AnthropicInputTokensTrigger' - - properties: {} - type: 'object' - - type: 'null' - example: - type: 'input_tokens' - value: 100000 - type: - enum: - - 'compact_20260112' - type: 'string' - required: - - 'type' - type: 'object' - type: 'array' - type: - - 'object' - - 'null' - deferred_tools: - $ref: '#/components/schemas/DeferredToolsControl' - fallbacks: - description: 'Fallback models to try if the primary model fails or refuses, in order. Handled by OpenRouter multi-model routing rather than Anthropic server-side fallbacks; cannot be combined with `models`. Each entry accepts only `model`. Maximum of 3 entries.' - example: - - model: 'claude-opus-4-8' - items: - $ref: '#/components/schemas/MessagesFallbackParam' - type: - - 'array' - - 'null' - max_tokens: - type: 'integer' - messages: - items: - $ref: '#/components/schemas/MessagesMessageParam' - type: - - 'array' - - 'null' - metadata: - properties: - user_id: - type: - - 'string' - - 'null' - type: 'object' - model: - type: 'string' - models: - items: - type: 'string' - type: 'array' - output_config: - $ref: '#/components/schemas/MessagesOutputConfig' - plugins: - description: 'Plugins you want to enable for this request, including their settings.' - items: - discriminator: - mapping: - alignment: '#/components/schemas/AlignmentPlugin' - armor: '#/components/schemas/ArmorPlugin' - auto-beta-router: '#/components/schemas/AutoBetaRouterPlugin' - auto-router: '#/components/schemas/AutoRouterPlugin' - context-compression: '#/components/schemas/ContextCompressionPlugin' - file-parser: '#/components/schemas/FileParserPlugin' - fusion: '#/components/schemas/FusionPlugin' - jev-router: '#/components/schemas/JevRouterPlugin' - moderation: '#/components/schemas/ModerationPlugin' - pareto-router: '#/components/schemas/ParetoRouterPlugin' - response-healing: '#/components/schemas/ResponseHealingPlugin' - switchyard-router: '#/components/schemas/SwitchyardRouterPlugin' - web: '#/components/schemas/WebSearchPlugin' - web-fetch: '#/components/schemas/WebFetchPlugin' - propertyName: 'id' - oneOf: - - $ref: '#/components/schemas/AutoRouterPlugin' - - $ref: '#/components/schemas/AutoBetaRouterPlugin' - - $ref: '#/components/schemas/ModerationPlugin' - - $ref: '#/components/schemas/WebSearchPlugin' - - $ref: '#/components/schemas/WebFetchPlugin' - - $ref: '#/components/schemas/FileParserPlugin' - - $ref: '#/components/schemas/ResponseHealingPlugin' - - $ref: '#/components/schemas/ContextCompressionPlugin' - - $ref: '#/components/schemas/ParetoRouterPlugin' - - $ref: '#/components/schemas/FusionPlugin' - - $ref: '#/components/schemas/SwitchyardRouterPlugin' - - $ref: '#/components/schemas/JevRouterPlugin' - - $ref: '#/components/schemas/AlignmentPlugin' - - $ref: '#/components/schemas/ArmorPlugin' - type: 'array' - provider: - $ref: '#/components/schemas/ProviderPreferences' - route: - $ref: '#/components/schemas/DeprecatedRoute' - safeguards: - items: - $ref: '#/components/schemas/AnthropicSafeguard' - type: - - 'array' - - 'null' - service_tier: - type: 'string' - session_id: - description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.' - maxLength: 256 - type: 'string' - speed: - allOf: - - $ref: '#/components/schemas/AnthropicSpeed' - - description: 'Controls output generation speed. When set to `fast`, uses a higher-speed inference configuration at premium pricing. Defaults to `standard` when omitted.' - example: 'fast' - stop_sequences: - items: - type: 'string' - type: 'array' - stop_server_tools_when: - $ref: '#/components/schemas/StopServerToolsWhen' - stream: - type: 'boolean' - system: - anyOf: - - type: 'string' - - items: - $ref: '#/components/schemas/AnthropicTextBlockParam' - type: 'array' - temperature: - format: 'double' - type: 'number' - thinking: + tool: oneOf: - properties: - block_binding: - $ref: '#/components/schemas/AnthropicThinkingBlockBinding' - budget_tokens: - type: 'integer' - display: - $ref: '#/components/schemas/AnthropicThinkingDisplay' + name: + type: 'string' type: enum: - - 'enabled' + - 'tool_reference' type: 'string' required: - 'type' - - 'budget_tokens' + - 'name' type: 'object' - properties: + name: + type: 'string' + server_name: + type: 'string' type: enum: - - 'disabled' + - 'mcp_tool_reference' type: 'string' required: - 'type' + - 'name' + - 'server_name' type: 'object' - properties: - block_binding: - $ref: '#/components/schemas/AnthropicThinkingBlockBinding' - display: - $ref: '#/components/schemas/AnthropicThinkingDisplay' - type: - enum: - - 'adaptive' + server_name: type: 'string' - required: - - 'type' - type: 'object' - - additionalProperties: false - properties: type: enum: - - 'between_tools' + - 'mcp_toolset_reference' type: 'string' required: - 'type' + - 'server_name' type: 'object' - tool_choice: + type: + enum: + - 'tool_addition' + type: 'string' + required: + - 'type' + - 'tool' + type: 'object' + MessagesToolRemovalBlock: + description: 'Removes a tool from the conversation mid-conversation without invalidating the prompt cache. Only valid in `role: "system"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.' + example: + tool: + name: 'get_weather' + type: 'tool_reference' + type: 'tool_removal' + properties: + cache_control: + $ref: '#/components/schemas/AnthropicCacheControlDirective' + tool: oneOf: - properties: - disable_parallel_tool_use: - type: 'boolean' - type: - enum: - - 'auto' + name: type: 'string' - required: - - 'type' - type: 'object' - - properties: - disable_parallel_tool_use: - type: 'boolean' type: enum: - - 'any' + - 'tool_reference' type: 'string' required: - 'type' + - 'name' type: 'object' - properties: + name: + type: 'string' + server_name: + type: 'string' type: enum: - - 'none' + - 'mcp_tool_reference' type: 'string' required: - 'type' + - 'name' + - 'server_name' type: 'object' - properties: - disable_parallel_tool_use: - type: 'boolean' - name: + server_name: type: 'string' type: enum: - - 'tool' + - 'mcp_toolset_reference' type: 'string' required: - 'type' - - 'name' + - 'server_name' type: 'object' - tools: - items: - anyOf: - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - defer_loading: - type: 'boolean' - description: - type: 'string' - input_schema: - additionalProperties: {} - properties: - properties: {} - required: - items: - type: 'string' - type: - - 'array' - - 'null' - type: - default: 'object' - type: 'string' - type: 'object' - name: - type: 'string' - strict: - type: 'boolean' - type: - enum: - - 'custom' - type: 'string' - required: - - 'name' - - 'input_schema' - type: 'object' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - name: - enum: - - 'bash' - type: 'string' - type: - enum: - - 'bash_20250124' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - name: - enum: - - 'str_replace_editor' - type: 'string' - type: - enum: - - 'text_editor_20250124' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - allowed_domains: - items: - type: 'string' - type: - - 'array' - - 'null' - blocked_domains: - items: - type: 'string' - type: - - 'array' - - 'null' - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - max_uses: - type: - - 'integer' - - 'null' - name: - enum: - - 'web_search' - type: 'string' - type: - enum: - - 'web_search_20250305' - type: 'string' - user_location: - $ref: '#/components/schemas/AnthropicWebSearchToolUserLocation' - required: - - 'type' - - 'name' - type: 'object' - - properties: - allowed_callers: - $ref: '#/components/schemas/AnthropicAllowedCallers' - allowed_domains: - items: - type: 'string' - type: - - 'array' - - 'null' - blocked_domains: - items: - type: 'string' - type: - - 'array' - - 'null' - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - max_uses: - type: - - 'integer' - - 'null' - name: - enum: - - 'web_search' - type: 'string' - type: - enum: - - 'web_search_20260209' - type: 'string' - user_location: - $ref: '#/components/schemas/AnthropicWebSearchToolUserLocation' - required: - - 'type' - - 'name' - type: 'object' - - properties: - allowed_callers: - $ref: '#/components/schemas/AnthropicAllowedCallers' - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - caching: - anyOf: - - $ref: '#/components/schemas/AnthropicCacheControlDirective' - - type: 'null' - defer_loading: - type: 'boolean' - max_uses: - type: 'integer' - model: - type: 'string' - name: - enum: - - 'advisor' - type: 'string' - type: - enum: - - 'advisor_20260301' - type: 'string' - required: - - 'type' - - 'name' - - 'model' - type: 'object' - - $ref: '#/components/schemas/BashServerTool' - - $ref: '#/components/schemas/DatetimeServerTool' - - $ref: '#/components/schemas/ImageGenerationServerTool_OpenRouter' - - $ref: '#/components/schemas/MessagesSearchModelsServerTool' - - $ref: '#/components/schemas/WebFetchServerTool' - - $ref: '#/components/schemas/OpenRouterWebSearchServerTool' - - additionalProperties: {} - properties: - type: - type: 'string' - required: - - 'type' - type: 'object' - - $ref: '#/components/schemas/AnthropicToolSearchToolBm25' - - $ref: '#/components/schemas/AnthropicToolSearchToolRegex' - - $ref: '#/components/schemas/ShellServerTool_OpenRouter' - - $ref: '#/components/schemas/ToolSearchServerTool' - type: 'array' - top_k: - type: 'integer' - top_p: - format: 'double' - type: 'number' - trace: - $ref: '#/components/schemas/TraceConfig' - user: - description: 'A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters.' - maxLength: 256 - type: 'string' - required: - - 'model' - - 'messages' - type: 'object' - MessagesResult: - allOf: - - $ref: '#/components/schemas/BaseMessagesResult' - - properties: - context_management: - properties: - applied_edits: - items: - additionalProperties: {} - properties: - type: - type: 'string' - required: - - 'type' - type: 'object' - type: 'array' - required: - - 'applied_edits' - type: - - 'object' - - 'null' - openrouter_metadata: - $ref: '#/components/schemas/OpenRouterMetadata' - provider: - type: 'string' - safeguard_results: - items: - $ref: '#/components/schemas/AnthropicSafeguardResult' - type: - - 'array' - - 'null' - usage: - allOf: - - $ref: '#/components/schemas/AnthropicUsage' - - properties: - cost: - format: 'double' - type: - - 'number' - - 'null' - cost_details: - $ref: '#/components/schemas/CostDetails' - is_byok: - type: 'boolean' - iterations: - items: - $ref: '#/components/schemas/AnthropicUsageIteration' - type: 'array' - server_tool_use: - $ref: '#/components/schemas/ORAnthropicServerToolUsage' - service_tier: - type: - - 'string' - - 'null' - speed: - $ref: '#/components/schemas/AnthropicSpeed' - type: 'object' - example: - cache_creation: null - cache_creation_input_tokens: null - cache_read_input_tokens: null - inference_geo: null - input_tokens: 100 - output_tokens: 50 - output_tokens_details: null - server_tool_use: null - service_tier: 'standard' - type: 'object' - description: 'Non-streaming response from the Anthropic Messages API with OpenRouter extensions' - example: - container: null - content: - - citations: [] - text: 'Hello! I''m doing well, thank you for asking.' - type: 'text' - id: 'msg_01XFDUDYJgAACzvnptvVoYEL' - model: 'claude-sonnet-4-5-20250929' - role: 'assistant' - stop_details: null - stop_reason: 'end_turn' - stop_sequence: null - type: 'message' - usage: - cache_creation: null - cache_creation_input_tokens: null - cache_read_input_tokens: null - inference_geo: null - input_tokens: 12 - output_tokens: 15 - output_tokens_details: null - server_tool_use: null - service_tier: 'standard' - MessagesSearchModelsServerTool: - description: 'OpenRouter built-in server tool: searches and filters AI models available on OpenRouter' - example: - parameters: - max_results: 5 - type: 'openrouter:experimental__search_models' - properties: - parameters: - $ref: '#/components/schemas/SearchModelsServerToolConfig' type: enum: - - 'openrouter:experimental__search_models' + - 'tool_removal' type: 'string' required: - 'type' + - 'tool' type: 'object' - MessagesShellToolResultBlock: - description: 'Output of an `openrouter:shell` call from a prior assistant turn. Accepted on replay and dropped before the provider request — Anthropic has no equivalent block.' - example: - content: - output: - - outcome: - exit_code: 0 - type: 'exit' - stderr: '' - stdout: "README.md\n" - tool_use_id: 'srvtoolu_01abc' - type: 'openrouter_shell_tool_result' - properties: - container_id: - description: 'The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed.' - type: 'string' - content: - additionalProperties: {} - type: 'object' - files: - description: 'Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API.' - items: - properties: - container_id: - type: 'string' - end_index: - type: 'integer' - file_id: - type: 'string' - filename: - type: 'string' - start_index: - type: 'integer' - type: - enum: - - 'container_file_citation' - type: 'string' - required: - - 'type' - - 'container_id' - - 'file_id' - - 'filename' - - 'start_index' - - 'end_index' - type: 'object' - type: 'array' - tool_use_id: - type: 'string' - type: - enum: - - 'openrouter_shell_tool_result' - type: 'string' - required: - - 'type' - - 'tool_use_id' - - 'content' - type: 'object' - MessagesStartEvent: - description: 'Event sent at the start of a streaming message' - example: - message: - container: null - content: [] - id: 'msg_01XFDUDYJgAACzvnptvVoYEL' - model: 'claude-sonnet-4-5-20250929' - role: 'assistant' - stop_details: null - stop_reason: null - stop_sequence: null - type: 'message' - usage: - cache_creation: null - cache_creation_input_tokens: null - cache_read_input_tokens: null - inference_geo: null - input_tokens: 12 - output_tokens: 0 - output_tokens_details: null - server_tool_use: null - service_tier: 'standard' - type: 'message_start' - properties: - message: - properties: - container: - $ref: '#/components/schemas/AnthropicContainer' - content: - items: - $ref: '#/components/schemas/ORAnthropicContentBlock' - type: 'array' - id: - type: 'string' - input_transformations: - items: - $ref: '#/components/schemas/AnthropicInputTransformation' - type: - - 'array' - - 'null' - model: - type: 'string' - provider: - enum: - - 'AnyScale' - - 'Atoma' - - 'Cent-ML' - - 'CrofAI' - - 'Enfer' - - 'GoPomelo' - - 'HuggingFace' - - 'Hyperbolic' - - 'Hyperbolic 2' - - 'InoCloud' - - 'Kluster' - - 'Lambda' - - 'Lepton' - - 'Lynn 2' - - 'Lynn' - - 'Mancer' - - 'Modal' - - 'NCompass' - - 'Nineteen' - - 'OctoAI' - - 'Recursal' - - 'Reflection' - - 'Replicate' - - 'SambaNova 2' - - 'SF Compute' - - 'Targon' - - 'Together 2' - - 'Ubicloud' - - '01.AI' - - 'AkashML' - - 'AI21' - - 'AionLabs' - - 'Alibaba' - - 'Ambient' - - 'Baidu' - - 'Amazon Bedrock' - - 'Amazon Nova' - - 'Anthropic' - - 'Arcee AI' - - 'AssemblyAI' - - 'AtlasCloud' - - 'Avian' - - 'Azure' - - 'BaseTen' - - 'BytePlus' - - 'Black Forest Labs' - - 'Cerebras' - - 'Chutes' - - 'Cirrascale' - - 'Claude Platform on AWS' - - 'Clarifai' - - 'Cloudflare' - - 'Cohere' - - 'CoreWeave' - - 'Cosine' - - 'Crucible' - - 'Crusoe' - - 'Darkbloom' - - 'Databricks' - - 'Decart' - - 'Deepgram' - - 'DeepInfra' - - 'DeepSeek' - - 'DekaLLM' - - 'DigitalOcean' - - 'ElevenLabs' - - 'Featherless' - - 'Fireworks' - - 'Fish Audio' - - 'Friendli' - - 'GMICloud' - - 'Google' - - 'Google AI Studio' - - 'Groq' - - 'HeyGen' - - 'Inception' - - 'Inceptron' - - 'InferenceNet' - - 'Ionstream' - - 'Infermatic' - - 'Io Net' - - 'Inferact vLLM' - - 'Inflection' - - 'Liquid' - - 'Makora' - - 'Mara' - - 'Mancer 2' - - 'Meta' - - 'Minimax' - - 'ModelRun' - - 'Mistral' - - 'Modular' - - 'Moonshot AI' - - 'Morph' - - 'VoyageAI by MongoDB' - - 'TypeSafe' - - 'Near AI' - - 'Nebius' - - 'Nex AGI' - - 'NextBit' - - 'Novita' - - 'Nvidia' - - 'Ollama' - - 'OpenAI' - - 'OpenInference' - - 'Parasail' - - 'ParetoAlpha' - - 'Poolside' - - 'PrimeIntellect' - - 'Perceptron' - - 'Perplexity' - - 'Phala' - - 'Recraft' - - 'Recursive' - - 'Reka' - - 'Relace' - - 'Respan' - - 'Sail Research' - - 'Sakana AI' - - 'SambaNova' - - 'ScaleDown' - - 'Seed' - - 'SiliconFlow' - - 'Sourceful' - - 'StepFun' - - 'Stealth' - - 'StreamLake' - - 'Switchpoint' - - 'Tencent' - - 'Tenstorrent' - - 'Thinking Machines' - - 'Together' - - 'Unbiased' - - 'Upstage' - - 'Venice' - - 'Wafer' - - 'WandB' - - 'Quiver' - - 'Krea' - - 'Runway' - - 'Xiaomi' - - 'xAI' - - 'Z.AI' - - 'FakeProvider' - type: 'string' - x-speakeasy-unknown-values: 'allow' - role: - enum: - - 'assistant' - type: 'string' - stop_details: - $ref: '#/components/schemas/AnthropicRefusalStopDetails' - stop_reason: {} - stop_sequence: {} - type: - enum: - - 'message' - type: 'string' - usage: - allOf: - - $ref: '#/components/schemas/AnthropicUsage' - - properties: - iterations: - items: - $ref: '#/components/schemas/AnthropicUsageIteration' - type: 'array' - speed: - $ref: '#/components/schemas/AnthropicSpeed' - type: 'object' - example: - cache_creation: - ephemeral_1h_input_tokens: 0 - ephemeral_5m_input_tokens: 7381 - cache_creation_input_tokens: 7381 - cache_read_input_tokens: 0 - inference_geo: null - input_tokens: 100 - output_tokens: 1 - output_tokens_details: null - server_tool_use: null - service_tier: 'standard' - required: - - 'id' - - 'type' - - 'role' - - 'container' - - 'content' - - 'model' - - 'stop_reason' - - 'stop_details' - - 'stop_sequence' - - 'usage' - type: 'object' - type: - enum: - - 'message_start' - type: 'string' - required: - - 'type' - - 'message' - type: 'object' - MessagesStopEvent: - description: 'Event sent when the message is complete' - example: - type: 'message_stop' - properties: - openrouter_metadata: - $ref: '#/components/schemas/OpenRouterMetadata' - type: - enum: - - 'message_stop' - type: 'string' - required: - - 'type' - type: 'object' - MessagesStreamEvents: - description: 'Union of all possible streaming events' - discriminator: - mapping: - content_block_delta: '#/components/schemas/MessagesContentBlockDeltaEvent' - content_block_start: '#/components/schemas/MessagesContentBlockStartEvent' - content_block_stop: '#/components/schemas/MessagesContentBlockStopEvent' - error: '#/components/schemas/MessagesErrorEvent' - message_delta: '#/components/schemas/MessagesDeltaEvent' - message_start: '#/components/schemas/MessagesStartEvent' - message_stop: '#/components/schemas/MessagesStopEvent' - ping: '#/components/schemas/MessagesPingEvent' - propertyName: 'type' - example: - delta: - text: 'Hello' - type: 'text_delta' - index: 0 - type: 'content_block_delta' - oneOf: - - $ref: '#/components/schemas/MessagesStartEvent' - - $ref: '#/components/schemas/MessagesDeltaEvent' - - $ref: '#/components/schemas/MessagesStopEvent' - - $ref: '#/components/schemas/MessagesContentBlockStartEvent' - - $ref: '#/components/schemas/MessagesContentBlockDeltaEvent' - - $ref: '#/components/schemas/MessagesContentBlockStopEvent' - - $ref: '#/components/schemas/MessagesPingEvent' - - $ref: '#/components/schemas/MessagesErrorEvent' - MessagesStreamingResponse: - example: - data: - delta: - text: 'Hello' - type: 'text_delta' - index: 0 - type: 'content_block_delta' - event: 'content_block_delta' - properties: - data: - $ref: '#/components/schemas/MessagesStreamEvents' - event: - type: 'string' - required: - - 'event' - - 'data' - type: 'object' - MessagesToolAdditionBlock: - description: 'Loads a previously deferred tool (declared in `tools` with `defer_loading: true`) mid-conversation without invalidating the prompt cache. Only valid in `role: "system"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.' - example: - tool: - name: 'get_forecast' - type: 'tool_reference' - type: 'tool_addition' - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - tool: - oneOf: - - properties: - name: - type: 'string' - type: - enum: - - 'tool_reference' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - name: - type: 'string' - server_name: - type: 'string' - type: - enum: - - 'mcp_tool_reference' - type: 'string' - required: - - 'type' - - 'name' - - 'server_name' - type: 'object' - - properties: - server_name: - type: 'string' - type: - enum: - - 'mcp_toolset_reference' - type: 'string' - required: - - 'type' - - 'server_name' - type: 'object' - type: - enum: - - 'tool_addition' - type: 'string' - required: - - 'type' - - 'tool' - type: 'object' - MessagesToolRemovalBlock: - description: 'Removes a tool from the conversation mid-conversation without invalidating the prompt cache. Only valid in `role: "system"` messages. Not supported on Claude Sonnet 5 or models older than Claude Opus 4.8.' - example: - tool: - name: 'get_weather' - type: 'tool_reference' - type: 'tool_removal' - properties: - cache_control: - $ref: '#/components/schemas/AnthropicCacheControlDirective' - tool: - oneOf: - - properties: - name: - type: 'string' - type: - enum: - - 'tool_reference' - type: 'string' - required: - - 'type' - - 'name' - type: 'object' - - properties: - name: - type: 'string' - server_name: - type: 'string' - type: - enum: - - 'mcp_tool_reference' - type: 'string' - required: - - 'type' - - 'name' - - 'server_name' - type: 'object' - - properties: - server_name: - type: 'string' - type: - enum: - - 'mcp_toolset_reference' - type: 'string' - required: - - 'type' - - 'server_name' - type: 'object' - type: - enum: - - 'tool_removal' - type: 'string' - required: - - 'type' - - 'tool' - type: 'object' - MetadataLevel: - description: 'Opt-in level for surfacing routing metadata on the response under `openrouter_metadata`.' - enum: - - 'disabled' - - 'enabled' - example: 'enabled' - type: 'string' - x-speakeasy-unknown-values: allow - Model: - description: 'Information about an AI model available on OpenRouter' + MetadataLevel: + description: 'Opt-in level for surfacing routing metadata on the response under `openrouter_metadata`.' + enum: + - 'disabled' + - 'enabled' + example: 'enabled' + type: 'string' + x-speakeasy-unknown-values: allow + Model: + description: 'Information about an AI model available on OpenRouter' example: architecture: input_modalities: @@ -22262,6 +21264,7 @@ components: enum: - 'POST' - 'PUT' + title: 'ObservabilityWebhookDestinationMethod' type: 'string' x-speakeasy-unknown-values: allow url: @@ -23163,6 +22166,7 @@ components: - 'misalignment_policy_violation' - 'data_residency_mismatch' - 'permission_denied' + title: 'CodeEnum' type: 'string' x-speakeasy-unknown-values: allow message: @@ -27648,15 +26652,6 @@ components: - 'null' x-speakeasy-unknown-values: allow type: 'object' - ProvisionInternResponse: - additionalProperties: false - properties: - provisioning: - const: true - type: 'boolean' - required: - - 'provisioning' - type: 'object' PublicEndpoint: description: 'Information about a specific model endpoint' example: @@ -30039,63 +29034,6 @@ components: oneOf: - $ref: '#/components/schemas/ContainerAutoEnvironment' - $ref: '#/components/schemas/ContainerReferenceEnvironment' - SignInternDaemonRequest: - additionalProperties: false - properties: - bodySha256: - description: 'Lower-case hex SHA-256 of the exact bytes the CLI will send as the daemon request body.' - example: 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' - pattern: '^[0-9a-f]{64}$' - type: 'string' - route: - additionalProperties: false - description: 'The daemon request the proof is for. When present the response also carries the single-use, route-bound proof (`x-ori-invoke-signature-v2`, `x-ori-invoke-nonce`).' - properties: - method: - description: 'The HTTP method of the daemon request.' - enum: - - 'POST' - type: 'string' - path: - description: 'The daemon request path, percent-encoded as sent, without origin or query. The route-bound proof admits only this path.' - example: '/api/invoke' - pattern: '^\/[!"$->@-~]{0,2047}$' - type: 'string' - required: - - 'method' - - 'path' - type: 'object' - required: - - 'bodySha256' - type: 'object' - SignInternDaemonResponse: - additionalProperties: false - description: 'Headers the CLI copies onto the daemon request so the sidecar can verify who is asking.' - example: - x-ori-invoke-signature: 'MEUCIQ...' - x-ori-invoke-timestamp: '1789000000' - x-ori-invoke-user: 'user_2abc' - properties: - x-ori-invoke-nonce: - description: 'Present with `x-ori-invoke-signature-v2`: the single-use id that proof is bound to.' - type: 'string' - x-ori-invoke-signature: - description: 'Base64 Ed25519 signature over the intern id, timestamp, user and body digest.' - type: 'string' - x-ori-invoke-signature-v2: - description: 'Present when the request named a `route`: Base64 Ed25519 signature over the intern id, timestamp, nonce, user, method, path and body digest. The intern accepts it once.' - type: 'string' - x-ori-invoke-timestamp: - description: 'Unix seconds at signing; the daemon refuses proofs older than its window.' - type: 'string' - x-ori-invoke-user: - description: 'The verified OAuth subject the proof names. Never taken from the request.' - type: 'string' - required: - - 'x-ori-invoke-signature' - - 'x-ori-invoke-timestamp' - - 'x-ori-invoke-user' - type: 'object' SpeechInput: anyOf: - type: 'string' @@ -31312,15 +30250,6 @@ components: seed: type: 'boolean' type: 'object' - SuspendInternResponse: - additionalProperties: false - properties: - suspended: - const: true - type: 'boolean' - required: - - 'suspended' - type: 'object' SwitchyardRouterPlugin: example: algorithm: 'stage' @@ -32927,40 +31856,6 @@ components: required: - 'data' type: 'object' - UpdateInternRequest: - additionalProperties: false - description: 'Lifecycle settings to change. Omitted fields stay unchanged and null clears a field.' - example: - description: 'Researches customer questions' - model: 'openai/gpt-5.4' - properties: - description: - description: 'New free-form description. Null clears it.' - maxLength: 2000 - type: - - 'string' - - 'null' - instructions: - description: 'New standing instructions. Null clears them.' - maxLength: 100000 - type: - - 'string' - - 'null' - model: - description: 'New OpenRouter model slug in `author/slug` form (an optional `:variant` suffix is accepted). Other shapes are refused with 400. Null restores the workspace default. Takes effect on the next provision: until then `GET` shows this configured model while chat chunks show the model the running intern reports.' - maxLength: 200 - minLength: 1 - pattern: '^[A-Za-z0-9~._:@+-]+\/[A-Za-z0-9~._:@+-]+$' - type: - - 'string' - - 'null' - name: - description: 'New intern name, unique per creator within the workspace.' - maxLength: 17 - minLength: 2 - pattern: '^[a-z][a-z0-9]*(-[a-z0-9]+)*$' - type: 'string' - type: 'object' UpdateObservabilityDestinationRequest: example: enabled: false @@ -34848,2746 +33743,63 @@ paths: required: false schema: description: 'Filter by a single UTC date in the last 30 days (YYYY-MM-DD format).' - example: '2025-08-24' - type: 'string' - - description: 'Filter by API key hash (SHA-256 hex string, as returned by the keys API).' - in: 'query' - name: 'api_key_hash' - required: false - schema: - description: 'Filter by API key hash (SHA-256 hex string, as returned by the keys API).' - example: 'abc123def456...' - type: 'string' - - description: 'Filter by org member user ID. Only applicable for organization accounts.' - in: 'query' - name: 'user_id' - required: false - schema: - description: 'Filter by org member user ID. Only applicable for organization accounts.' - example: 'user_abc123' - type: 'string' - - description: 'Set to ''workspace'' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape.' - in: 'query' - name: 'group_by' - required: false - schema: - description: 'Set to ''workspace'' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape.' - enum: - - 'workspace' - example: 'workspace' - type: 'string' - - description: 'Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account.' - in: 'query' - name: 'workspace_id' - required: false - schema: - description: 'Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account.' - example: '550e8400-e29b-41d4-a716-446655440000' - type: 'string' - responses: - '200': - content: - application/json: - example: - data: - - byok_usage_inference: 0.012 - cached_tokens: 10 - completion_tokens: 125 - date: '2025-08-24' - endpoint_id: '550e8400-e29b-41d4-a716-446655440000' - model: 'openai/gpt-4.1' - model_permaslug: 'openai/gpt-4.1-2025-04-14' - prompt_tokens: 50 - provider_name: 'OpenAI' - reasoning_tokens: 25 - requests: 5 - usage: 0.015 - schema: - $ref: '#/components/schemas/ActivityResponse' - description: 'Returns user activity data grouped by endpoint' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Get user activity grouped by endpoint' - tags: - - 'Analytics' - x-speakeasy-max-method-params: 5 - /analytics/meta: - get: - description: 'Returns the available metrics, dimensions, filter operators, and granularities for the analytics query endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'getAnalyticsMeta' - responses: - '200': - content: - application/json: - example: - data: - dimensions: - - display_label: 'Model' - name: 'model' - granularities: - - display_label: 'Day' - name: 'day' - metrics: - - display_format: 'number' - display_label: 'Request Count' - is_rate: false - name: 'request_count' - operators: - - name: 'eq' - value_type: 'scalar' - schema: - properties: - data: - properties: - dimensions: - items: - properties: - display_label: - description: 'Human-readable label' - example: 'Model' - type: 'string' - name: - description: 'Dimension identifier used in query requests' - example: 'model' - type: 'string' - required: - - 'name' - - 'display_label' - type: 'object' - type: 'array' - granularities: - items: - properties: - display_label: - description: 'Human-readable label' - example: 'Day' - type: 'string' - name: - description: 'Granularity identifier' - enum: - - 'minute' - - 'hour' - - 'day' - - 'week' - - 'month' - example: 'day' - type: 'string' - x-speakeasy-unknown-values: allow - required: - - 'name' - - 'display_label' - type: 'object' - type: 'array' - metrics: - items: - properties: - display_format: - description: 'How this metric value should be formatted for display (e.g. percent → multiply by 100 and append %, currency → prefix with $)' - enum: - - 'number' - - 'currency' - - 'percent' - - 'latency' - - 'throughput' - example: 'number' - type: 'string' - x-speakeasy-unknown-values: allow - display_label: - description: 'Human-readable label' - example: 'Request Count' - type: 'string' - is_rate: - description: 'Whether this metric is a rate/ratio (averaged, not summed)' - type: 'boolean' - name: - description: 'Metric identifier used in query requests' - example: 'request_count' - type: 'string' - required: - - 'name' - - 'display_label' - - 'is_rate' - - 'display_format' - type: 'object' - type: 'array' - operators: - items: - properties: - name: - description: 'Operator identifier used in filter definitions' - enum: - - 'eq' - - 'neq' - - 'in' - - 'not_in' - - 'gt' - - 'gte' - - 'lt' - - 'lte' - example: 'eq' - type: 'string' - x-speakeasy-unknown-values: allow - value_type: - description: 'Whether the operator expects a single value or an array' - enum: - - 'scalar' - - 'array' - type: 'string' - x-speakeasy-unknown-values: allow - required: - - 'name' - - 'value_type' - type: 'object' - type: 'array' - required: - - 'metrics' - - 'dimensions' - - 'operators' - - 'granularities' - type: 'object' - required: - - 'data' - type: 'object' - description: 'Returns analytics query metadata' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Get available analytics metrics and dimensions' - tags: - - 'Analytics' - /analytics/query: - post: - description: 'Execute an analytics query with specified metrics, dimensions, filters, and time range. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'queryAnalytics' - requestBody: - content: - application/json: - example: - dimensions: - - 'model' - granularity: 'day' - limit: 100 - metrics: - - 'request_count' - time_range: - end: '2025-01-08T00:00:00Z' - start: '2025-01-01T00:00:00Z' - schema: - properties: - classifier_dimensions: - description: 'Group results by custom classifier tags, breaking down metrics by the specified dimension values. Requires an active classifier on the workspace.' - properties: - classifier_id: - description: 'UUID of the classifier whose tags to group by.' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - dimension_names: - items: - description: 'Classifier dimension name (snake_case identifier). Each name becomes its own column key in the response; providing two names cross-groups results by both dimensions. With no names, the response uses `clf_dimension_name`/`clf_dimension_value` columns (one row per dimension/value pair).' - example: 'department' - type: 'string' - maxItems: 2 - type: 'array' - include_nulls: - description: 'When true, also include generations that have no tag from this classifier. Defaults to false, which returns only classified generations.' - type: 'boolean' - required: - - 'classifier_id' - type: 'object' - classifier_filters: - description: 'Filter results to generations with specific classifier tag values. Can be combined with classifier_dimensions (must use the same classifier_id) or used independently with standard dimensions.' - properties: - classifier_id: - description: 'UUID of the classifier whose tags to filter by. Must match classifier_dimensions.classifier_id when both are specified.' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - filters: - items: - properties: - field: - description: 'Classifier dimension name to filter on (snake_case identifier, e.g. "department", "work_type").' - example: 'department' - type: 'string' - operator: - description: 'Filter operator. Only equality/set operators are supported (eq, neq, in, not_in) — ordered comparisons are not available because classification values are strings.' - example: 'eq' - type: 'string' - value: - anyOf: - - type: 'string' - - format: 'double' - type: 'number' - - items: - anyOf: - - type: 'string' - - format: 'double' - type: 'number' - type: 'array' - description: 'Filter value. Use a scalar (string or number) for eq/neq, or an array for in/not_in.' - example: 'Engineering' - required: - - 'field' - - 'operator' - - 'value' - type: 'object' - maxItems: 10 - minItems: 1 - type: 'array' - required: - - 'classifier_id' - - 'filters' - type: 'object' - dimensions: - items: - description: 'Dimension to group by (up to 2). Use the /meta endpoint for available dimensions.' - example: 'model' - type: 'string' - maxItems: 2 - type: 'array' - filters: - items: - properties: - field: - description: 'Dimension to filter on. Use the /meta endpoint for available dimensions.' - example: 'model' - type: 'string' - include_unset: - description: 'Include rows where the dimension has no value. Applies only to the `in` and `not_in` operators and dimensions that have an unset bucket.' - type: 'boolean' - operator: - description: 'Filter operator' - example: 'eq' - type: 'string' - value: - anyOf: - - type: 'string' - - format: 'double' - type: 'number' - - items: - anyOf: - - type: 'string' - - format: 'double' - type: 'number' - type: 'array' - description: 'Filter value (scalar or array depending on operator). Several dimensions are enriched in responses (returned as human-readable labels), but filters must use the underlying ID: `api_key_id` — numeric ID (from generation metadata) or key hash (64-char hex from GET /api/v1/keys, resolved server-side); `user` — Clerk user ID (e.g. "user_abc123"), not the display name; `workspace` — workspace UUID, not the workspace name (filtering or grouping by the account default workspace also covers activity recorded before workspace resolution existed, which is attributed to that default workspace); `app` — numeric app ID, not the app title; `model` — permaslug (e.g. "openai/gpt-4o"), not the display name. Other dimensions (provider, origin, country, etc.) are not enriched and accept the value as returned.' - required: - - 'field' - - 'operator' - - 'value' - type: 'object' - maxItems: 20 - type: 'array' - granularity: - description: 'Time granularity' - example: 'day' - type: 'string' - group_limit: - description: 'Maximum rows per distinct combination of dimensions. When omitted on time-series queries (granularity + dimensions), auto-computed to avoid truncating time windows. Explicit values override the default and may truncate time buckets if set lower than the number of buckets in the range. Ignored when no dimensions are specified.' - example: 100 - type: 'integer' - limit: - description: 'Maximum total rows returned. Defaults to 1000. On time-series queries with dimensions and no explicit group_limit, the server may raise this to accommodate the expected number of unique time-bucket/dimension combinations.' - type: 'integer' - metrics: - items: - description: 'Metric name' - example: 'request_count' - type: 'string' - minItems: 1 - type: 'array' - order_by: - properties: - direction: - enum: - - 'asc' - - 'desc' - type: 'string' - x-speakeasy-unknown-values: allow - field: - description: 'Field to order by: a metric included in `metrics` (or "request_count", which may be ordered by without being requested), a requested dimension, or "date".' - example: 'request_count' - type: 'string' - required: - - 'field' - - 'direction' - type: 'object' - time_range: - properties: - end: - description: 'ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' - example: '2027-12-31T23:59:59Z' - format: 'date-time' - type: 'string' - start: - description: 'ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' - example: '2027-12-31T23:59:59Z' - format: 'date-time' - type: 'string' - required: - - 'start' - - 'end' - type: 'object' - required: - - 'metrics' - type: 'object' - required: true - responses: - '200': - content: - application/json: - example: - data: - data: - - date__day: '2025-01-01T00:00:00.000Z' - request_count: 1500 - metadata: - query_time_ms: 42 - row_count: 1 - truncated: false - schema: - properties: - data: - properties: - cachedAt: - format: 'double' - type: 'number' - data: - items: - description: 'A row of analytics data with metric/dimension values' - type: 'object' - type: 'array' - metadata: - properties: - query_time_ms: - format: 'double' - type: 'number' - row_count: - type: 'integer' - truncated: - type: 'boolean' - required: - - 'query_time_ms' - - 'row_count' - - 'truncated' - type: 'object' - warnings: - description: 'Warnings about filter resolution issues (e.g. unresolvable api_key_id hashes). The query still runs normally; these inform the caller that some filter values could not be resolved.' - items: - type: 'string' - type: 'array' - required: - - 'data' - - 'metadata' - type: 'object' - required: - - 'data' - type: 'object' - description: 'Analytics query results' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out. Please try again later.' - schema: - $ref: '#/components/schemas/RequestTimeoutResponse' - description: 'Request Timeout - Operation exceeded time limit' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Query analytics data' - tags: - - 'Analytics' - /api/alpha/decisions: - post: - description: 'Submits a Decisions request to the Decisions router' - operationId: 'createApiAlphaDecisions' - requestBody: - content: - application/json: - example: - model: 'typesafe/jev-1.13' - questions: - is_bug: - criteria: - 'false': 'The customer is asking a question or requesting a feature.' - 'true': 'The customer describes broken or unexpected product behavior.' - instructions: 'Is the customer reporting a software defect?' - type: 'noul' - team: - criteria: - account: 'Login, permissions, or profile issues.' - frontend: 'Rendering, layout, or browser compatibility issues.' - payments: 'Checkout, billing, or payment processing issues.' - instructions: 'Which team should own this ticket?' - type: 'choice' - urgency: - criteria: - - 'Can wait for the next release' - - 'Should be fixed this week' - - 'Blocking revenue right now' - instructions: 'How urgent is this ticket?' - type: 'score' - state: - customer_tier: 'enterprise' - ticket: 'My checkout page shows a blank screen after I click Pay. I have tried two browsers.' - schema: - $ref: '#/components/schemas/DecisionsRequest' - required: true - responses: - '200': - content: - application/json: - example: - answers: - is_bug: - noul: 0.96 - type: 'noul' - team: - choice: 'payments' - confidence: 0.75 - probabilities: - account: 0 - frontend: 0.16 - payments: 0.84 - type: 'choice' - urgency: - confidence: 0.99 - legend: - '0': 'Can wait for the next release' - '1': 'Should be fixed this week' - '2': 'Blocking revenue right now' - probabilities: - '0': 0 - '1': 0.01 - '2': 0.99 - score: 1.99 - type: 'score' - id: 'gen-dec-1789738314-X5e5eKGQdvR9rblyX250' - model: 'typesafe/jev-1.13-20260917' - provider: 'TypeSafe' - usage: - cost: 0.000019992 - input_tokens: 476 - output_tokens: 70 - schema: - $ref: '#/components/schemas/DecisionsResponse' - description: 'Decisions response' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request payload too large' - schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': - content: - application/json: - example: - error: - code: 529 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - servers: - - url: 'https://openrouter.ai' - summary: 'Submit a Decisions request' - tags: - - 'alpha.decisions' - x-speakeasy-name-override: 'create' - /audio/speech: - post: - description: 'Synthesizes audio from the input text. Returns a raw audio bytestream in the requested format (e.g. mp3, pcm, wav).' - operationId: 'createAudioSpeech' - requestBody: - content: - application/json: - example: - input: 'Hello world' - model: 'mistralai/voxtral-mini-tts-2603' - response_format: 'pcm' - speed: 1 - voice: 'en_paul_neutral' - schema: - $ref: '#/components/schemas/SpeechRequest' - required: true - responses: - '200': - content: - audio/*: - schema: - description: 'Raw audio bytestream. Content-Type varies by requested format (audio/mpeg for mp3, audio/pcm for pcm — 16-bit little-endian).' - example: '' - format: 'binary' - type: 'string' - description: 'Audio bytes stream' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request payload too large' - schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': - content: - application/json: - example: - error: - code: 529 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Create speech' - tags: - - 'TTS' - x-speakeasy-max-method-params: 1 - x-speakeasy-name-override: 'createSpeech' - /audio/transcriptions: - post: - description: 'Transcribes audio into text. Accepts base64-encoded audio input as JSON, an OpenAI-style multipart/form-data file upload, or a URL the provider downloads directly, and returns the transcribed text.' - operationId: 'createAudioTranscriptions' - requestBody: - content: - application/json: - example: - input_audio: - data: 'UklGRiQA...' - format: 'wav' - language: 'en' - model: 'openai/whisper-large-v3' - schema: - $ref: '#/components/schemas/STTRequest' - multipart/form-data: - example: - file: 'audio.wav' - language: 'en' - model: 'openai/whisper-large-v3' - schema: - properties: - diarize: - description: 'Label each word with the speaker who said it (words[].speaker, words[].speaker_label). Requires response_format "verbose_json" (400 otherwise); word timestamps are included even when timestamp_granularities[] omits "word". Only supported by some providers; 400 when the selected model cannot diarize.' - type: 'boolean' - file: - description: 'The audio file to transcribe. The format is derived from the filename extension or the file part content type. Max 25 MB; send larger files as base64 JSON via input_audio, or by URL via source_url. Exactly one of file or source_url is required.' - format: 'binary' - type: 'string' - keyterms[]: - description: 'Domain terms, names, or phrases to bias recognition toward; repeat the part once per term (keyterms=... is also accepted). Only supported by some providers; 400 when the selected model cannot use keyterms.' - items: - type: 'string' - type: 'array' - language: - description: 'The language of the input audio (ISO-639-1).' - type: 'string' - model: - description: 'The model to use for transcription.' - type: 'string' - provider: - description: 'JSON-encoded provider preferences object, the same shape as the JSON body field: { "zdr": true, "data_collection": "deny", "options": { "": { ... } } }. Only options for the matched provider are forwarded. Must decode to a JSON object.' - type: 'string' - response_format: - description: 'The response format. "json" (default) returns { text, usage }; "verbose_json" additionally returns task, language, duration, and segment-level timestamps (OpenAI-compatible providers only).' - enum: - - 'json' - - 'verbose_json' - type: 'string' - x-speakeasy-unknown-values: allow - session_id: - description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence.' - maxLength: 256 - type: 'string' - source_url: - description: 'Publicly reachable http(s) URL of the audio file, downloaded by the provider directly (no size limit on our side). The format is derived from the URL path extension. Only supported by some providers; exactly one of file or source_url is required.' - format: 'uri' - type: 'string' - temperature: - description: 'The sampling temperature.' - type: 'number' - timestamp_granularities[]: - description: 'Timestamp detail levels to include when response_format is "verbose_json". "word" additionally returns word-level timestamps in the words array.' - items: - enum: - - 'word' - - 'segment' - type: 'string' - x-speakeasy-unknown-values: allow - type: 'array' - trace: - description: 'JSON-encoded trace metadata object (trace_id, trace_name, span_name, generation_name, parent_span_id and custom keys) attached to the Broadcast trace. Must decode to a JSON object.' - type: 'string' - user: - description: 'A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.' - maxLength: 256 - type: 'string' - required: - - 'model' - type: 'object' - required: true - responses: - '200': - content: - application/json: - example: - text: 'Hello, this is a test of OpenAI speech-to-text transcription.' - usage: - cost: 0.000508 - input_tokens: 83 - output_tokens: 30 - seconds: 9.2 - total_tokens: 113 - schema: - $ref: '#/components/schemas/STTResponse' - description: 'Transcription result' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request payload too large' - schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - '504': - content: - application/json: - example: - error: - code: 504 - message: 'The operation was aborted due to timeout' - schema: - $ref: '#/components/schemas/GatewayTimeoutResponse' - description: 'Gateway Timeout - Provider did not respond before the upstream deadline' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': - content: - application/json: - example: - error: - code: 529 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Create transcription' - tags: - - 'STT' - x-speakeasy-max-method-params: 1 - x-speakeasy-name-override: 'createTranscription' - /auth/keys: - post: - description: 'Exchange an authorization code from the PKCE flow for a user-controlled API key' - operationId: 'exchangeAuthCodeForAPIKey' - requestBody: - content: - application/json: - example: - code: 'auth_code_abc123def456' - code_challenge_method: 'S256' - code_verifier: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' - schema: - example: - code: 'auth_code_abc123def456' - code_challenge_method: 'S256' - code_verifier: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' - properties: - code: - description: 'The authorization code received from the OAuth redirect' - example: 'auth_code_abc123def456' - type: 'string' - code_challenge_method: - description: 'The method used to generate the code challenge' - enum: - - 'S256' - - 'plain' - - null - example: 'S256' - type: - - 'string' - - 'null' - x-speakeasy-unknown-values: allow - code_verifier: - description: 'The code verifier if code_challenge was used in the authorization request' - example: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' - type: 'string' - required: - - 'code' - type: 'object' - required: true - responses: - '200': - content: - application/json: - example: - key: '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' - user_id: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' - schema: - example: - key: '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' - user_id: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' - properties: - key: - description: 'The API key to use for OpenRouter requests' - example: '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' - type: 'string' - user_id: - description: 'User ID associated with the API key' - example: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' - type: - - 'string' - - 'null' - required: - - 'key' - - 'user_id' - type: 'object' - description: 'Successfully exchanged code for an API key' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Exchange authorization code for API key' - tags: - - 'OAuth' - /auth/keys/code: - post: - description: 'Create an authorization code for the PKCE flow to generate a user-controlled API key' - operationId: 'createAuthKeysCode' - requestBody: - content: - application/json: - example: - callback_url: 'https://myapp.com/auth/callback' - code_challenge: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' - code_challenge_method: 'S256' - limit: 100 - schema: - example: - callback_url: 'https://myapp.com/auth/callback' - code_challenge: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' - code_challenge_method: 'S256' - limit: 100 - properties: - callback_url: - description: 'The callback URL to redirect to after authorization. Supports https URLs and localhost/127.0.0.1 URLs on any port for local CLI tools.' - example: 'https://myapp.com/auth/callback' - format: 'uri' - type: 'string' - code_challenge: - description: 'PKCE code challenge for enhanced security' - example: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' - type: 'string' - code_challenge_method: - description: 'The method used to generate the code challenge' - enum: - - 'S256' - - 'plain' - example: 'S256' - type: 'string' - x-speakeasy-unknown-values: allow - expires_at: - description: 'Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' - example: '2027-12-31T23:59:59Z' - format: 'date-time' - type: - - 'string' - - 'null' - key_label: - description: 'Optional custom label for the API key. Defaults to the app name if not provided.' - example: 'My Custom Key' - maxLength: 100 - type: 'string' - limit: - description: 'Credit limit for the API key to be created' - example: 100 - format: 'double' - type: 'number' - spawn_agent: - description: 'Agent identifier for spawn telemetry' - example: 'my-agent' - type: 'string' - x-fern-ignore: true - x-speakeasy-ignore: true - spawn_cloud: - description: 'Cloud identifier for spawn telemetry' - example: 'aws-us-east-1' - type: 'string' - x-fern-ignore: true - x-speakeasy-ignore: true - usage_limit_type: - description: 'Optional credit limit reset interval. When set, the credit limit resets on this interval.' - enum: - - 'daily' - - 'weekly' - - 'monthly' - example: 'monthly' - type: 'string' - x-speakeasy-unknown-values: allow - workspace_id: - description: 'Optional workspace ID to associate the API key with' - format: 'uuid' - type: 'string' - required: - - 'callback_url' - type: 'object' - required: true - responses: - '200': - content: - application/json: - example: - data: - app_id: 12345 - created_at: '2025-08-24T10:30:00Z' - id: 'auth_code_xyz789' - schema: - example: - data: - app_id: 12345 - created_at: '2025-08-24T10:30:00Z' - id: 'auth_code_xyz789' - properties: - data: - description: 'Auth code data' - example: - app_id: 12345 - created_at: '2025-08-24T10:30:00Z' - id: 'auth_code_xyz789' - properties: - app_id: - description: 'The application ID associated with this auth code' - example: 12345 - type: 'integer' - created_at: - description: 'ISO 8601 timestamp of when the auth code was created' - example: '2025-08-24T10:30:00Z' - type: 'string' - id: - description: 'The authorization code ID to use in the exchange request' - example: 'auth_code_xyz789' - type: 'string' - required: - - 'id' - - 'app_id' - - 'created_at' - type: 'object' - required: - - 'data' - type: 'object' - description: 'Successfully created authorization code' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '409': - content: - application/json: - example: - error: - code: 409 - message: 'Resource conflict. Please try again later.' - schema: - $ref: '#/components/schemas/ConflictResponse' - description: 'Conflict - Resource conflict or concurrent modification' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Create authorization code' - tags: - - 'OAuth' - x-speakeasy-name-override: 'createAuthCode' - /batches: - get: - description: 'Lists batches in the workspace of the authenticating API key, newest first. To fetch the next page, pass the previous page''s `last_id` as `after`. List items omit `results`. Use `GET /batches/{id}` to get them. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' - operationId: 'listBatches' - parameters: - - description: 'Maximum number of batches to return, from 1 through 100.' - in: 'query' - name: 'limit' - required: false - schema: - description: 'Maximum number of batches to return, from 1 through 100.' - example: 20 - type: 'integer' - - description: 'Batch id from the previous page''s `last_id`.' - in: 'query' - name: 'after' - required: false - schema: - description: 'Batch id from the previous page''s `last_id`.' - example: 'batch_7a4b02' - minLength: 1 - type: 'string' - - description: 'Repeat this parameter to include more than one status.' - explode: true - in: 'query' - name: 'status' - required: false - schema: - description: 'Repeat this parameter to include more than one status.' - example: - - 'completed' - - 'failed' - items: - $ref: '#/components/schemas/BatchListStatus' - type: 'array' - style: 'form' - - description: 'Only include batches created strictly after this timestamp.' - in: 'query' - name: 'created_after' - required: false - schema: - $ref: '#/components/schemas/BatchListTimestamp' - - description: 'Only include batches created strictly before this timestamp.' - in: 'query' - name: 'created_before' - required: false - schema: - allOf: - - $ref: '#/components/schemas/BatchListTimestamp' - - description: 'Only include batches created strictly before this timestamp.' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BatchListResponse' - description: 'A newest-first page of batches.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid batch list query.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Malformed or unsupported batch list query parameters.' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'No auth credentials found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Missing or invalid API key.' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Batch API rate limit exceeded for the billable entity.' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal server error.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Unexpected error in the ingress or upstream batch-api.' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Upstream batch-api is unavailable.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' - summary: 'List batches' - tags: - - 'Batch' - x-speakeasy-name-override: 'list' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'after' - type: 'cursor' - outputs: - nextCursor: '$.last_id' - results: '$.data' - type: 'cursor' - post: - description: 'Creates a batch of requests that run asynchronously against a single endpoint (`/v1/chat/completions`, `/v1/responses`, `/v1/messages`, `/v1/embeddings`). Returns `202` with `status: "validating"`. Poll `GET /batches/{id}` for progress and results. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' - operationId: 'createBatches' - requestBody: - content: - application/json: - examples: - chatCompletions: - summary: 'Chat completions batch' - value: - endpoint: '/v1/chat/completions' - model: 'openai/gpt-4o' - requests: - - body: - messages: - - content: 'Summarize ...' - role: 'user' - model: 'openai/gpt-4o' - custom_id: 'req-0001' - messages: - summary: 'Messages batch' - value: - endpoint: '/v1/messages' - model: 'openai/gpt-5-nano' - requests: - - body: - max_tokens: 1024 - messages: - - content: 'Summarize ...' - role: 'user' - model: 'openai/gpt-5-nano' - custom_id: 'req-0001' - providerPinned: - summary: 'Batch pinned to Vertex' - value: - endpoint: '/v1/chat/completions' - model: 'google/gemini-3.6-flash' - provider: - only: - - 'google-vertex' - requests: - - body: - messages: - - content: 'Summarize ...' - role: 'user' - model: 'google/gemini-3.6-flash' - custom_id: 'req-0001' - responses: - summary: 'Responses batch' - value: - endpoint: '/v1/responses' - model: 'openai/gpt-4o' - requests: - - body: - input: - - content: - - text: 'Summarize ...' - type: 'input_text' - role: 'user' - model: 'openai/gpt-4o' - custom_id: 'req-0001' - schema: - $ref: '#/components/schemas/BatchSubmitBody' - description: 'The batch to create. Each item in `requests` has a unique `custom_id` and a `body` in the request format of the chosen `endpoint`.' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/BatchObject' - description: 'Batch payload durably persisted and queued for asynchronous validation and provider submission (`status: "validating"`).' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'custom_id is required on requests[0].' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Malformed batch input or an unknown/incompatible batch model.' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'No auth credentials found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Missing or invalid API key.' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient balance for this batch.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The estimated batch cost exceeds the available balance.' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'The selected provider or model is not allowed.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The resolved batch endpoint is blocked by account policy.' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Batch not found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'No batch exists for the given id.' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Batch input exceeds the 200 MB payload limit.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Batch input exceeds the maximum payload size.' - '422': - content: - application/json: - example: - error: - code: 422 - message: 'The batch request could not be processed.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The requested model variant or custom IDs violate Batch API constraints.' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Batch API rate limit exceeded for the billable entity.' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal server error.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Unexpected error in the ingress or upstream batch-api.' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Upstream batch-api is unavailable.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' - summary: 'Create a batch' - tags: - - 'Batch' - x-speakeasy-retries: - retryConnectionErrors: false - statusCodes: - - '429' - strategy: 'backoff' - /batches/{id}: - delete: - description: 'Deletes a batch in a terminal status (`completed`, `failed`, `expired`, or `cancelled`) and its stored requests and results. Batches still in progress return `409`. Billing and usage records are kept. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' - operationId: 'deleteBatch' - parameters: - - description: 'The batch job id returned from submit.' - in: 'path' - name: 'id' - required: true - schema: - description: 'The batch job id returned from submit.' - example: 'batch_abc123' - minLength: 1 - type: 'string' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BatchDeletedObject' - description: 'The batch was deleted; per-target outcomes are reported under `deletion`.' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'No auth credentials found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Missing or invalid API key.' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Batch not found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'No batch exists for the given id.' - '409': - content: - application/json: - example: - error: - code: 409 - message: 'Only completed, failed, expired, or cancelled batches can be deleted. Wait for the batch to finish and try again.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch is still processing, its required provider key is unavailable, or its state changed during deletion.' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Batch API rate limit exceeded for the billable entity.' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal server error.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Unexpected error in the ingress or upstream batch-api.' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Upstream batch-api is unavailable.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' - summary: 'Delete a batch' - tags: - - 'Batch' - x-speakeasy-name-override: 'delete' - get: - description: 'Returns a batch with its status and request counts. Batches in a terminal status include `results`. Failed batches report the reason in `error.message`. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' - operationId: 'getBatches' - parameters: - - description: 'The batch job id returned from submit.' - in: 'path' - name: 'id' - required: true - schema: - description: 'The batch job id returned from submit.' - example: 'batch_abc123' - minLength: 1 - type: 'string' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BatchObject' - description: 'The current batch job status.' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'No auth credentials found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Missing or invalid API key.' - '402': - content: - application/json: - schema: - $ref: '#/components/schemas/BatchPaymentRequiredResponse' - description: 'The finalized batch cost exceeds the available balance; metadata is returned with `results: null`. Top up credits and poll again to receive the persisted results.' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Batch not found.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'No batch exists for the given id.' - '410': - content: - application/json: - example: - error: - code: 410 - message: 'Batch results have expired. OpenRouter deletes batch results 30 days after the batch is created.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch results were deleted after the 30-day retention window.' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Batch API rate limit exceeded for the billable entity.' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal server error.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'Unexpected error in the ingress or upstream batch-api.' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Upstream batch-api is unavailable.' - schema: - $ref: '#/components/schemas/BatchErrorResponse' - description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' - summary: 'Get a batch' - tags: - - 'Batch' - /benchmarks: - get: - description: 'Unified benchmark endpoint that aggregates scores from multiple benchmark sources (Artificial Analysis, Design Arena, and OpenRouter''s own tau-bench, GPQA, and web-search evals). Filter by source to reproduce the exact shapes from the legacy per-source endpoints, or use task_type to find models suited for specific workloads. Use task_type=search (or a search_* benchmark_type) for OpenRouter''s search benchmarks, which publish each model''s highest-scoring eligible evaluation configuration with same-configuration runs combined by task-weighted mean. Authenticate with any valid OpenRouter API key. Rate-limited to 30 requests/minute per key and 500 requests/day per account.' - operationId: 'getBenchmarks' - parameters: - - description: 'Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources.' - in: 'query' - name: 'source' - required: false - schema: - description: 'Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources.' - enum: - - 'artificial-analysis' - - 'design-arena' - - 'openrouter' - example: 'artificial-analysis' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only.' - in: 'query' - name: 'task_type' - required: false - schema: - description: 'Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only.' - enum: - - 'coding' - - 'intelligence' - - 'agentic' - - 'search' - example: 'coding' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources'' items as they are.' - in: 'query' - name: 'benchmark_type' - required: false - schema: - description: 'Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources'' items as they are.' - enum: - - 'gpqa_diamond' - - 'tau_bench_verified_airline' - - 'search_browsecomp' - - 'search_hle' - - 'search_dsqa' - - 'search_widesearch' - example: 'search_widesearch' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract.' - in: 'query' - name: 'include_run_config' - required: false - schema: - default: false - description: 'Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract.' - example: true - type: 'boolean' - - description: 'OpenRouter search benchmarks only: filter by the search engine used.' - in: 'query' - name: 'search_engine' - required: false - schema: - description: 'OpenRouter search benchmarks only: filter by the search engine used.' - example: 'exa' - type: 'string' - - description: 'OpenRouter search benchmarks only: filter by the request surface the lane ran on.' - in: 'query' - name: 'search_surface' - required: false - schema: - description: 'OpenRouter search benchmarks only: filter by the request surface the lane ran on.' - enum: - - 'server-tool' - - 'plugin' - example: 'server-tool' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Design Arena only: arena to query. Defaults to `models` when source is `design-arena`.' - in: 'query' - name: 'arena' - required: false - schema: - description: 'Design Arena only: arena to query. Defaults to `models` when source is `design-arena`.' - enum: - - 'models' - - 'builders' - - 'agents' - example: 'models' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories.' - in: 'query' - name: 'category' - required: false - schema: - description: 'Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories.' - example: 'codecategories' - type: 'string' - - description: 'Maximum number of items to return. When omitted, all matching results are returned.' - in: 'query' - name: 'max_results' - required: false - schema: - description: 'Maximum number of items to return. When omitted, all matching results are returned.' - example: 50 - minimum: 1 - type: 'integer' - responses: - '200': - content: - application/json: - example: - data: - - agentic_index: 58.3 - coding_index: 65.8 - display_name: 'GPT-4o' - intelligence_index: 71.2 - model_permaslug: 'openai/gpt-4o' - pricing: - completion: '0.00001' - prompt: '0.0000025' - source: 'artificial-analysis' - - accuracy: 0.72 - accuracy_stddev: 0.03 - avg_cost_per_task: 0.002 - benchmark_type: 'gpqa_diamond' - display_name: 'GPT-4o' - last_run_timestamp: '2026-06-03T12:00:00Z' - model_permaslug: 'openai/gpt-4o' - source: 'openrouter' - total_tasks: 300 - meta: - as_of: '2026-06-03T12:00:00Z' - citation: null - model_count: 1 - source: null - source_url: null - task_type: null - version: 'v1' - schema: - $ref: '#/components/schemas/UnifiedBenchmarksResponse' - description: 'Benchmark results filtered by the specified source and optional task type.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'List Benchmarks' - tags: - - 'Benchmarks' - /byok: - get: - description: 'List the bring-your-own-key (BYOK) provider credentials for the authenticated entity''s default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace, or the `provider` query parameter to filter by upstream provider. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listBYOKKeys' - parameters: - - description: 'Number of records to skip for pagination' - in: 'query' - name: 'offset' - required: false - schema: - default: 0 - description: 'Number of records to skip for pagination' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 100)' - in: 'query' - name: 'limit' - required: false - schema: - default: 50 - description: 'Maximum number of records to return (max 100)' - example: 50 - maximum: 100 - minimum: 1 - type: 'integer' - - description: 'Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly.' - in: 'query' - name: 'workspace_id' - required: false - schema: - description: 'Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly.' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - - description: 'Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`).' - in: 'query' - name: 'provider' - required: false - schema: - description: 'Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`).' - enum: - - 'ai21' - - 'aion-labs' - - 'akashml' - - 'alibaba' - - 'amazon-bedrock' - - 'amazon-bedrock/claude-on-aws' - - 'amazon-nova' - - 'ambient' - - 'anthropic' - - 'anthropic/2' - - 'arcee-ai' - - 'assemblyai' - - 'atlas-cloud' - - 'avian' - - 'azure' - - 'baidu' - - 'baseten' - - 'black-forest-labs' - - 'byteplus' - - 'cerebras' - - 'chutes' - - 'cirrascale' - - 'clarifai' - - 'claude-on-aws' - - 'cloudflare' - - 'cohere' - - 'coreweave' - - 'cosine' - - 'crusoe' - - 'darkbloom' - - 'databricks' - - 'decart' - - 'deepgram' - - 'deepinfra' - - 'deepseek' - - 'dekallm' - - 'digitalocean' - - 'elevenlabs' - - 'featherless' - - 'fireworks' - - 'fish-audio' - - 'friendli' - - 'gmicloud' - - 'google-ai-studio' - - 'google-vertex' - - 'groq' - - 'heygen' - - 'inception' - - 'inceptron' - - 'inferact-vllm' - - 'inference-net' - - 'infermatic' - - 'inflection' - - 'io-net' - - 'ionstream' - - 'krea' - - 'liquid' - - 'makora' - - 'mancer' - - 'mara' - - 'meta' - - 'minimax' - - 'mistral' - - 'modal' - - 'modelrun' - - 'modular' - - 'moonshotai' - - 'morph' - - 'near-ai' - - 'nebius' - - 'nex-agi' - - 'nextbit' - - 'novita' - - 'nvidia' - - 'ollama' - - 'open-inference' - - 'openai' - - 'parasail' - - 'pareto-alpha' - - 'perceptron' - - 'perplexity' - - 'phala' - - 'poolside' - - 'primeintellect' - - 'quiver' - - 'recraft' - - 'recursive' - - 'reka' - - 'relace' - - 'respan' - - 'runway' - - 'sail-research' - - 'sakana' - - 'sakana-ai' - - 'sambanova' - - 'scaledown' - - 'seed' - - 'siliconflow' - - 'sourceful' - - 'stepfun' - - 'streamlake' - - 'switchpoint' - - 'tencent' - - 'tenstorrent' - - 'thinkingmachines' - - 'together' - - 'typesafe' - - 'unbiased' - - 'upstage' - - 'venice' - - 'voyageai' - - 'wafer' - - 'wandb' - - 'wandb-legacy' - - 'xai' - - 'xiaomi' - - 'z-ai' - example: 'openai' - type: 'string' - x-speakeasy-unknown-values: allow - responses: - '200': - content: - application/json: - example: - data: - - allowed_api_key_hashes: null - allowed_models: null - allowed_user_ids: null - created_at: '2025-08-24T10:30:00Z' - declared_region: null - declared_zdr: null - disabled: false - id: '11111111-2222-3333-4444-555555555555' - is_byok_only: false - is_fallback: false - is_required: false - label: 'sk-...AbCd' - name: 'Production OpenAI Key' - provider: 'openai' - sort_order: 0 - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - total_count: 1 - schema: - $ref: '#/components/schemas/ListBYOKKeysResponse' - description: 'List of BYOK credentials' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'List BYOK provider credentials' - tags: - - 'BYOK' - x-speakeasy-name-override: 'list' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - post: - description: 'Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. When `workspace_id` is omitted, the credential is created in the default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. Treat the raw key as write-only; it is never returned after creation. Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'createBYOKKey' - requestBody: - content: - application/json: - example: - key: 'sk-proj-abc123...' - name: 'Production OpenAI Key' - provider: 'openai' - schema: - $ref: '#/components/schemas/CreateBYOKKeyRequest' - required: true - responses: - '201': - content: - application/json: - example: - data: - allowed_api_key_hashes: null - allowed_models: null - allowed_user_ids: null - created_at: '2025-08-24T10:30:00Z' - declared_region: null - declared_zdr: null - disabled: false - id: '11111111-2222-3333-4444-555555555555' - is_byok_only: false - is_fallback: false - is_required: false - label: 'sk-...AbCd' - name: 'Production OpenAI Key' - provider: 'openai' - sort_order: 0 - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - schema: - $ref: '#/components/schemas/CreateBYOKKeyResponse' - description: 'BYOK credential created successfully' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Create a BYOK provider credential' - tags: - - 'BYOK' - x-speakeasy-name-override: 'create' - /byok/{id}: - delete: - description: 'Delete (soft-delete) a bring-your-own-key (BYOK) provider credential by its `id`. The encrypted key material is wiped and the record is marked as deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'deleteBYOKKey' - parameters: - - description: 'The BYOK credential ID (UUID).' - in: 'path' - name: 'id' - required: true - schema: - description: 'The BYOK credential ID (UUID).' - example: '11111111-2222-3333-4444-555555555555' - format: 'uuid' - type: 'string' - responses: - '200': - content: - application/json: - example: - deleted: true - schema: - $ref: '#/components/schemas/DeleteBYOKKeyResponse' - description: 'BYOK credential deleted successfully' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Delete a BYOK provider credential' - tags: - - 'BYOK' - x-speakeasy-name-override: 'delete' - get: - description: 'Get a single bring-your-own-key (BYOK) provider credential by its `id`. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'getBYOKKey' - parameters: - - description: 'The BYOK credential ID (UUID).' - in: 'path' - name: 'id' - required: true - schema: - description: 'The BYOK credential ID (UUID).' - example: '11111111-2222-3333-4444-555555555555' - format: 'uuid' - type: 'string' - responses: - '200': - content: - application/json: - example: - data: - allowed_api_key_hashes: null - allowed_models: null - allowed_user_ids: null - created_at: '2025-08-24T10:30:00Z' - declared_region: null - declared_zdr: null - disabled: false - id: '11111111-2222-3333-4444-555555555555' - is_byok_only: false - is_fallback: false - is_required: false - label: 'sk-...AbCd' - name: 'Production OpenAI Key' - provider: 'openai' - sort_order: 0 - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - schema: - $ref: '#/components/schemas/GetBYOKKeyResponse' - description: 'BYOK credential details' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Get a BYOK provider credential' - tags: - - 'BYOK' - x-speakeasy-name-override: 'get' - patch: - description: 'Update an existing bring-your-own-key (BYOK) provider credential by its `id`. Include the `key` field to rotate the raw provider API key in-place (the previous key material is overwritten). Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys (`null` clears the restriction). [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'updateBYOKKey' - parameters: - - description: 'The BYOK credential ID (UUID).' - in: 'path' - name: 'id' - required: true - schema: - description: 'The BYOK credential ID (UUID).' - example: '11111111-2222-3333-4444-555555555555' - format: 'uuid' - type: 'string' - requestBody: - content: - application/json: - example: - disabled: false - name: 'Updated OpenAI Key' - schema: - $ref: '#/components/schemas/UpdateBYOKKeyRequest' - required: true - responses: - '200': - content: - application/json: - example: - data: - allowed_api_key_hashes: null - allowed_models: null - allowed_user_ids: null - created_at: '2025-08-24T10:30:00Z' - declared_region: null - declared_zdr: null - disabled: false - id: '11111111-2222-3333-4444-555555555555' - is_byok_only: false - is_fallback: false - is_required: false - label: 'sk-...AbCd' - name: 'Updated OpenAI Key' - provider: 'openai' - sort_order: 0 - workspace_id: '550e8400-e29b-41d4-a716-446655440000' - schema: - $ref: '#/components/schemas/UpdateBYOKKeyResponse' - description: 'BYOK credential updated successfully' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '409': - content: - application/json: - example: - error: - code: 409 - message: 'Resource conflict. Please try again later.' - schema: - $ref: '#/components/schemas/ConflictResponse' - description: 'Conflict - Resource conflict or concurrent modification' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Update a BYOK provider credential' - tags: - - 'BYOK' - x-speakeasy-name-override: 'update' - /chat/completions: - post: - description: 'Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes.' - operationId: 'sendChatCompletionRequest' - parameters: - - description: 'Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility.' - example: 'enabled' - in: 'header' - name: 'X-OpenRouter-Metadata' + example: '2025-08-24' + type: 'string' + - description: 'Filter by API key hash (SHA-256 hex string, as returned by the keys API).' + in: 'query' + name: 'api_key_hash' required: false schema: - $ref: '#/components/schemas/MetadataLevel' - requestBody: - content: - application/json: - example: - max_tokens: 150 - messages: - - content: 'You are a helpful assistant.' - role: 'system' - - content: 'What is the capital of France?' - role: 'user' - model: 'openai/gpt-4' - temperature: 0.7 - schema: - $ref: '#/components/schemas/ChatRequest' - required: true + description: 'Filter by API key hash (SHA-256 hex string, as returned by the keys API).' + example: 'abc123def456...' + type: 'string' + - description: 'Filter by org member user ID. Only applicable for organization accounts.' + in: 'query' + name: 'user_id' + required: false + schema: + description: 'Filter by org member user ID. Only applicable for organization accounts.' + example: 'user_abc123' + type: 'string' + - description: 'Set to ''workspace'' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape.' + in: 'query' + name: 'group_by' + required: false + schema: + description: 'Set to ''workspace'' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape.' + enum: + - 'workspace' + example: 'workspace' + type: 'string' + - description: 'Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account.' + in: 'query' + name: 'workspace_id' + required: false + schema: + description: 'Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account.' + example: '550e8400-e29b-41d4-a716-446655440000' + type: 'string' responses: '200': content: application/json: - example: - choices: - - finish_reason: 'stop' - index: 0 - message: - content: 'The capital of France is Paris.' - role: 'assistant' - created: 1677652288 - id: 'chatcmpl-123' - model: 'openai/gpt-4' - object: 'chat.completion' - system_fingerprint: 'fp_44709d6fcb' - usage: - completion_tokens: 10 - prompt_tokens: 25 - total_tokens: 35 - schema: - $ref: '#/components/schemas/ChatResult' - text/event-stream: example: data: - choices: - - delta: - content: 'Hello' - role: 'assistant' - finish_reason: null - index: 0 - created: 1677652288 - id: 'chatcmpl-123' - model: 'openai/gpt-4' - object: 'chat.completion.chunk' + - byok_usage_inference: 0.012 + cached_tokens: 10 + completion_tokens: 125 + date: '2025-08-24' + endpoint_id: '550e8400-e29b-41d4-a716-446655440000' + model: 'openai/gpt-4.1' + model_permaslug: 'openai/gpt-4.1-2025-04-14' + prompt_tokens: 50 + provider_name: 'OpenAI' + reasoning_tokens: 25 + requests: 5 + usage: 0.015 schema: - $ref: '#/components/schemas/ChatStreamingResponse' - x-speakeasy-sse-sentinel: '[DONE]' - description: 'Successful chat completion response' + $ref: '#/components/schemas/ActivityResponse' + description: 'Returns user activity data grouped by endpoint' '400': content: application/json: @@ -37608,64 +33820,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '402': + '403': content: application/json: example: error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' - '403': - content: - application/json: - examples: - guardrail-blocked: - summary: 'Guardrail blocked the request' - value: - error: - code: 403 - message: 'Request blocked: prompt injection patterns detected' - metadata: - patterns: - - 'ignore all previous instructions' - openrouter_metadata: - attempt: 1 - endpoints: - available: - - model: 'openai/gpt-4o' - provider: 'OpenAI' - selected: false - total: 1 - is_byok: false - pipeline: - - data: - action: 'blocked' - detected: true - engines: - - 'regex' - patterns: - - 'ignore all previous instructions' - guardrail_id: 'grd_abc123' - guardrail_scope: 'api-key' - name: 'regex_pi_detection' - summary: 'Blocked: prompt injection detected (1 pattern matched)' - type: 'guardrail' - region: 'iad' - requested: 'openai/gpt-4o' - strategy: 'direct' - summary: 'available=1' - insufficient-permissions: - summary: 'Insufficient permissions' - value: - error: - code: 403 - message: 'Only management keys can perform this operation' + code: 403 + message: 'Only management keys can perform this operation' schema: $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions, or a guardrail blocked the request. When guardrails block and the `X-OpenRouter-Metadata: enabled` header is present, the response includes `openrouter_metadata` with full routing context and a `pipeline` array containing guardrail stage details.' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -37676,46 +33840,6 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out. Please try again later.' - schema: - $ref: '#/components/schemas/RequestTimeoutResponse' - description: 'Request Timeout - Operation exceeded time limit' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request payload too large' - schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' - '422': - content: - application/json: - example: - error: - code: 422 - message: 'Invalid argument' - schema: - $ref: '#/components/schemas/UnprocessableEntityResponse' - description: 'Unprocessable Entity - Semantic validation failure' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -37726,106 +33850,148 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': - content: - application/json: - example: - error: - code: 529 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Create a chat completion' + summary: 'Get user activity grouped by endpoint' tags: - - 'Chat' - x-speakeasy-group: 'chat' - x-speakeasy-name-override: 'send' - x-speakeasy-stream-request-field: 'stream' - /classifications/task: + - 'Analytics' + x-speakeasy-max-method-params: 5 + /analytics/meta: get: - description: "Returns the market-share breakdown of OpenRouter traffic by task classification\n(e.g. code generation, web search, summarization) over a trailing time window.\n\nEach classification reports its share of classified sampled requests (`usage_share`)\nand classified sampled token volume (`token_share`) as fractions between 0 and 1.\nThe unclassified `other` bucket is excluded. Absolute volumes are not exposed\nbecause the underlying data is sampled.\n\nEach classification also includes a `models` array listing the top models by\nrequest volume within that classification, with their within-tag usage and token shares.\n\nClassifications are grouped into macro-categories (Code, Data, Agent, General)\nwith aggregate shares provided for each.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this data, cite as:\n\"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}.\"" - operationId: 'getTaskClassifications' - parameters: - - description: 'Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported.' - in: 'query' - name: 'window' - required: false - schema: - default: '7d' - description: 'Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported.' - enum: - - '7d' - example: '7d' - type: 'string' + description: 'Returns the available metrics, dimensions, filter operators, and granularities for the analytics query endpoint. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getAnalyticsMeta' responses: '200': content: application/json: example: data: - as_of: '2026-06-17' - classifications: - - category_token_share: 0.48 - category_usage_share: 0.51 - display_name: 'Code Generation' - macro_category: 'code' - models: - - id: 'openai/gpt-4.1-mini' - tag_token_share: 0.75 - tag_usage_share: 0.55 - tag: 'code:general_impl' - token_share: 0.31 - usage_share: 0.23 - macro_categories: - - key: 'code' - label: 'Code' - token_share: 0.52 - usage_share: 0.45 - window_days: 7 - schema: - $ref: '#/components/schemas/TaskClassificationResponse' - description: 'Task classification market-share data for the requested trailing window.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' + dimensions: + - display_label: 'Model' + name: 'model' + granularities: + - display_label: 'Day' + name: 'day' + metrics: + - display_format: 'number' + display_label: 'Request Count' + is_rate: false + name: 'request_count' + operators: + - name: 'eq' + value_type: 'scalar' schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' + properties: + data: + properties: + dimensions: + items: + properties: + display_label: + description: 'Human-readable label' + example: 'Model' + type: 'string' + name: + description: 'Dimension identifier used in query requests' + example: 'model' + type: 'string' + required: + - 'name' + - 'display_label' + type: 'object' + type: 'array' + granularities: + items: + properties: + display_label: + description: 'Human-readable label' + example: 'Day' + type: 'string' + name: + description: 'Granularity identifier' + enum: + - 'minute' + - 'hour' + - 'day' + - 'week' + - 'month' + example: 'day' + type: 'string' + x-speakeasy-unknown-values: allow + required: + - 'name' + - 'display_label' + type: 'object' + type: 'array' + metrics: + items: + properties: + display_format: + description: 'How this metric value should be formatted for display (e.g. percent → multiply by 100 and append %, currency → prefix with $)' + enum: + - 'number' + - 'currency' + - 'percent' + - 'latency' + - 'throughput' + example: 'number' + type: 'string' + x-speakeasy-unknown-values: allow + display_label: + description: 'Human-readable label' + example: 'Request Count' + type: 'string' + is_rate: + description: 'Whether this metric is a rate/ratio (averaged, not summed)' + type: 'boolean' + name: + description: 'Metric identifier used in query requests' + example: 'request_count' + type: 'string' + required: + - 'name' + - 'display_label' + - 'is_rate' + - 'display_format' + type: 'object' + type: 'array' + operators: + items: + properties: + name: + description: 'Operator identifier used in filter definitions' + enum: + - 'eq' + - 'neq' + - 'in' + - 'not_in' + - 'gt' + - 'gte' + - 'lt' + - 'lte' + example: 'eq' + type: 'string' + x-speakeasy-unknown-values: allow + value_type: + description: 'Whether the operator expects a single value or an array' + enum: + - 'scalar' + - 'array' + type: 'string' + x-speakeasy-unknown-values: allow + required: + - 'name' + - 'value_type' + type: 'object' + type: 'array' + required: + - 'metrics' + - 'dimensions' + - 'operators' + - 'granularities' + type: 'object' + required: + - 'data' + type: 'object' + description: 'Returns analytics query metadata' '401': content: application/json: @@ -37836,16 +34002,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '429': + '403': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '500': content: application/json: @@ -37856,61 +34022,240 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Task classification market share' + summary: 'Get available analytics metrics and dimensions' tags: - - 'Classifications' - /containers/{container_id}/files: - get: - description: 'Lists the files in a container, in lexicographic path order. The container id is the canonical id returned in bash/shell tool results; a restarted session is a separate container with its own id. Paginate with `limit` and `after` (pass the previous page’s `last_id`); `has_more: true` always means the next page is fetchable that way. `last_id` is the resume cursor: it is the last listed file’s id, except when a page ends at the per-request scan bound on hidden bookkeeping objects, where it names the scan position instead and may not appear in `data` (which can then be empty).' - operationId: 'listContainerFiles' - parameters: - - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - in: 'path' - name: 'container_id' - required: true - schema: - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - example: 'sess_abc123' - type: 'string' - - description: 'Maximum number of files to return (1-1000). Defaults to 100 when absent.' - in: 'query' - name: 'limit' - required: false - schema: - default: 100 - description: 'Maximum number of files to return (1-1000). Defaults to 100 when absent.' - example: 100 - maximum: 1000 - minimum: 1 - type: 'integer' - - description: 'Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted.' - in: 'query' - name: 'after' - required: false - schema: - description: 'Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted.' - example: 'cfile_b3V0L3JlcG9ydC5jc3Y' - type: 'string' + - 'Analytics' + /analytics/query: + post: + description: 'Execute an analytics query with specified metrics, dimensions, filters, and time range. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'queryAnalytics' + requestBody: + content: + application/json: + example: + dimensions: + - 'model' + granularity: 'day' + limit: 100 + metrics: + - 'request_count' + time_range: + end: '2025-01-08T00:00:00Z' + start: '2025-01-01T00:00:00Z' + schema: + properties: + classifier_dimensions: + description: 'Group results by custom classifier tags, breaking down metrics by the specified dimension values. Requires an active classifier on the workspace.' + properties: + classifier_id: + description: 'UUID of the classifier whose tags to group by.' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' + type: 'string' + dimension_names: + items: + description: 'Classifier dimension name (snake_case identifier). Each name becomes its own column key in the response; providing two names cross-groups results by both dimensions. With no names, the response uses `clf_dimension_name`/`clf_dimension_value` columns (one row per dimension/value pair).' + example: 'department' + type: 'string' + maxItems: 2 + type: 'array' + include_nulls: + description: 'When true, also include generations that have no tag from this classifier. Defaults to false, which returns only classified generations.' + type: 'boolean' + required: + - 'classifier_id' + type: 'object' + classifier_filters: + description: 'Filter results to generations with specific classifier tag values. Can be combined with classifier_dimensions (must use the same classifier_id) or used independently with standard dimensions.' + properties: + classifier_id: + description: 'UUID of the classifier whose tags to filter by. Must match classifier_dimensions.classifier_id when both are specified.' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' + type: 'string' + filters: + items: + properties: + field: + description: 'Classifier dimension name to filter on (snake_case identifier, e.g. "department", "work_type").' + example: 'department' + type: 'string' + operator: + description: 'Filter operator. Only equality/set operators are supported (eq, neq, in, not_in) — ordered comparisons are not available because classification values are strings.' + example: 'eq' + type: 'string' + value: + anyOf: + - type: 'string' + - format: 'double' + type: 'number' + - items: + anyOf: + - type: 'string' + - format: 'double' + type: 'number' + type: 'array' + description: 'Filter value. Use a scalar (string or number) for eq/neq, or an array for in/not_in.' + example: 'Engineering' + required: + - 'field' + - 'operator' + - 'value' + type: 'object' + maxItems: 10 + minItems: 1 + type: 'array' + required: + - 'classifier_id' + - 'filters' + type: 'object' + dimensions: + items: + description: 'Dimension to group by (up to 2). Use the /meta endpoint for available dimensions.' + example: 'model' + type: 'string' + maxItems: 2 + type: 'array' + filters: + items: + properties: + field: + description: 'Dimension to filter on. Use the /meta endpoint for available dimensions.' + example: 'model' + type: 'string' + include_unset: + description: 'Include rows where the dimension has no value. Applies only to the `in` and `not_in` operators and dimensions that have an unset bucket.' + type: 'boolean' + operator: + description: 'Filter operator' + example: 'eq' + type: 'string' + value: + anyOf: + - type: 'string' + - format: 'double' + type: 'number' + - items: + anyOf: + - type: 'string' + - format: 'double' + type: 'number' + type: 'array' + description: 'Filter value (scalar or array depending on operator). Several dimensions are enriched in responses (returned as human-readable labels), but filters must use the underlying ID: `api_key_id` — numeric ID (from generation metadata) or key hash (64-char hex from GET /api/v1/keys, resolved server-side); `user` — Clerk user ID (e.g. "user_abc123"), not the display name; `workspace` — workspace UUID, not the workspace name (filtering or grouping by the account default workspace also covers activity recorded before workspace resolution existed, which is attributed to that default workspace); `app` — numeric app ID, not the app title; `model` — permaslug (e.g. "openai/gpt-4o"), not the display name. Other dimensions (provider, origin, country, etc.) are not enriched and accept the value as returned.' + required: + - 'field' + - 'operator' + - 'value' + type: 'object' + maxItems: 20 + type: 'array' + granularity: + description: 'Time granularity' + example: 'day' + type: 'string' + group_limit: + description: 'Maximum rows per distinct combination of dimensions. When omitted on time-series queries (granularity + dimensions), auto-computed to avoid truncating time windows. Explicit values override the default and may truncate time buckets if set lower than the number of buckets in the range. Ignored when no dimensions are specified.' + example: 100 + type: 'integer' + limit: + description: 'Maximum total rows returned. Defaults to 1000. On time-series queries with dimensions and no explicit group_limit, the server may raise this to accommodate the expected number of unique time-bucket/dimension combinations.' + type: 'integer' + metrics: + items: + description: 'Metric name' + example: 'request_count' + type: 'string' + minItems: 1 + type: 'array' + order_by: + properties: + direction: + enum: + - 'asc' + - 'desc' + type: 'string' + x-speakeasy-unknown-values: allow + field: + description: 'Field to order by: a metric included in `metrics` (or "request_count", which may be ordered by without being requested), a requested dimension, or "date".' + example: 'request_count' + type: 'string' + required: + - 'field' + - 'direction' + type: 'object' + time_range: + properties: + end: + description: 'ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' + example: '2027-12-31T23:59:59Z' + format: 'date-time' + type: 'string' + start: + description: 'ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' + example: '2027-12-31T23:59:59Z' + format: 'date-time' + type: 'string' + required: + - 'start' + - 'end' + type: 'object' + required: + - 'metrics' + type: 'object' + required: true responses: '200': content: application/json: example: data: - - bytes: 123 - container_id: 'sess_abc123' - created_at: 1755640000 - id: 'cfile_b3V0L3JlcG9ydC5jc3Y' - object: 'container.file' - path: 'out/report.csv' - source: 'assistant' - first_id: 'cfile_b3V0L3JlcG9ydC5jc3Y' - has_more: false - last_id: 'cfile_b3V0L3JlcG9ydC5jc3Y' - object: 'list' + data: + - date__day: '2025-01-01T00:00:00.000Z' + request_count: 1500 + metadata: + query_time_ms: 42 + row_count: 1 + truncated: false schema: - $ref: '#/components/schemas/ContainerFileListResponse' - description: 'The files in the container.' + properties: + data: + properties: + cachedAt: + format: 'double' + type: 'number' + data: + items: + description: 'A row of analytics data with metric/dimension values' + type: 'object' + type: 'array' + metadata: + properties: + query_time_ms: + format: 'double' + type: 'number' + row_count: + type: 'integer' + truncated: + type: 'boolean' + required: + - 'query_time_ms' + - 'row_count' + - 'truncated' + title: 'Metadata' + type: 'object' + warnings: + description: 'Warnings about filter resolution issues (e.g. unresolvable api_key_id hashes). The query still runs normally; these inform the caller that some filter values could not be resolved.' + items: + type: 'string' + type: 'array' + required: + - 'data' + - 'metadata' + type: 'object' + required: + - 'data' + type: 'object' + description: 'Analytics query results' '400': content: application/json: @@ -37941,16 +34286,16 @@ paths: schema: $ref: '#/components/schemas/ForbiddenResponse' description: 'Forbidden - Authentication successful but insufficient permissions' - '429': + '408': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 408 + message: 'Operation timed out. Please try again later.' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' + $ref: '#/components/schemas/RequestTimeoutResponse' + description: 'Request Timeout - Operation exceeded time limit' '500': content: application/json: @@ -37961,55 +34306,84 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'List container files' + summary: 'Query analytics data' tags: - - 'Containers' - /containers/{container_id}/files/{file_id}: - get: - description: 'Returns the metadata of a single file in a container.' - operationId: 'getContainerFile' - parameters: - - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - in: 'path' - name: 'container_id' - required: true - schema: - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - example: 'sess_abc123' - type: 'string' - - description: 'Container file id (`cfile_` + base64url of the file path).' - in: 'path' - name: 'file_id' - required: true - schema: - description: 'Container file id (`cfile_` + base64url of the file path).' - example: 'cfile_b3V0L3JlcG9ydC5jc3Y' - type: 'string' + - 'Analytics' + /api/alpha/decisions: + post: + description: 'Submits a Decisions request to the Decisions router' + operationId: 'createApiAlphaDecisions' + requestBody: + content: + application/json: + example: + model: 'typesafe/jev-1.13' + questions: + is_bug: + criteria: + 'false': 'The customer is asking a question or requesting a feature.' + 'true': 'The customer describes broken or unexpected product behavior.' + instructions: 'Is the customer reporting a software defect?' + type: 'noul' + team: + criteria: + account: 'Login, permissions, or profile issues.' + frontend: 'Rendering, layout, or browser compatibility issues.' + payments: 'Checkout, billing, or payment processing issues.' + instructions: 'Which team should own this ticket?' + type: 'choice' + urgency: + criteria: + - 'Can wait for the next release' + - 'Should be fixed this week' + - 'Blocking revenue right now' + instructions: 'How urgent is this ticket?' + type: 'score' + state: + customer_tier: 'enterprise' + ticket: 'My checkout page shows a blank screen after I click Pay. I have tried two browsers.' + schema: + $ref: '#/components/schemas/DecisionsRequest' + required: true responses: '200': content: application/json: example: - bytes: 123 - container_id: 'sess_abc123' - created_at: 1755640000 - id: 'cfile_b3V0L3JlcG9ydC5jc3Y' - object: 'container.file' - path: 'out/report.csv' - source: 'assistant' + answers: + is_bug: + noul: 0.96 + type: 'noul' + team: + choice: 'payments' + confidence: 0.75 + probabilities: + account: 0 + frontend: 0.16 + payments: 0.84 + type: 'choice' + urgency: + confidence: 0.99 + legend: + '0': 'Can wait for the next release' + '1': 'Should be fixed this week' + '2': 'Blocking revenue right now' + probabilities: + '0': 0 + '1': 0.01 + '2': 0.99 + score: 1.99 + type: 'score' + id: 'gen-dec-1789738314-X5e5eKGQdvR9rblyX250' + model: 'typesafe/jev-1.13-20260917' + provider: 'TypeSafe' + usage: + cost: 0.000019992 + input_tokens: 476 + output_tokens: 70 schema: - $ref: '#/components/schemas/ContainerFile' - description: 'The container file.' + $ref: '#/components/schemas/DecisionsResponse' + description: 'Decisions response' '400': content: application/json: @@ -38030,6 +34404,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' + '402': + content: + application/json: + example: + error: + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' + schema: + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: @@ -38050,6 +34434,16 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' + '413': + content: + application/json: + example: + error: + code: 413 + message: 'Request payload too large' + schema: + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' '429': content: application/json: @@ -38070,159 +34464,78 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Retrieve a container file' - tags: - - 'Containers' - /containers/{container_id}/files/{file_id}/content: - get: - description: 'Streams the raw bytes of a file in a container.' - operationId: 'downloadContainerFileContent' - parameters: - - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - in: 'path' - name: 'container_id' - required: true - schema: - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - example: 'sess_abc123' - type: 'string' - - description: 'Container file id (`cfile_` + base64url of the file path).' - in: 'path' - name: 'file_id' - required: true - schema: - description: 'Container file id (`cfile_` + base64url of the file path).' - example: 'cfile_b3V0L3JlcG9ydC5jc3Y' - type: 'string' - responses: - '200': - content: - application/octet-stream: - example: 'binary file contents' - schema: - format: 'binary' - type: 'string' - description: 'The raw file content.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' - schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + '502': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 502 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '429': + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + '524': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' + code: 524 + message: 'Request timed out. Please try again later.' schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '503': + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': content: application/json: example: error: - code: 503 - message: 'Service temporarily unavailable' + code: 529 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Download container file content' + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + servers: + - url: 'https://openrouter.ai' + summary: 'Submit a Decisions request' tags: - - 'Containers' - /containers/{container_id}/files/{file_id}/promote: + - 'alpha.decisions' + x-speakeasy-name-override: 'create' + /audio/speech: post: - description: 'Copies a file from the container''s sandbox prefix into the workspace''s durable document storage, so it outlives the container. Returns the new document in the Files API shape, with a durable file id in the documents namespace. The copy counts against the workspace''s storage quota. Unlike a direct upload, promoted files are downloadable.' - operationId: 'promoteContainerFile' - parameters: - - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - in: 'path' - name: 'container_id' - required: true - schema: - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' - example: 'sess_abc123' - type: 'string' - - description: 'Container file id (`cfile_` + base64url of the file path).' - in: 'path' - name: 'file_id' - required: true - schema: - description: 'Container file id (`cfile_` + base64url of the file path).' - example: 'cfile_b3V0L3JlcG9ydC5jc3Y' - type: 'string' + description: 'Synthesizes audio from the input text. Returns a raw audio bytestream in the requested format (e.g. mp3, pcm, wav).' + operationId: 'createAudioSpeech' + requestBody: + content: + application/json: + example: + input: 'Hello world' + model: 'mistralai/voxtral-mini-tts-2603' + response_format: 'pcm' + speed: 1 + voice: 'en_paul_neutral' + schema: + $ref: '#/components/schemas/SpeechRequest' + required: true responses: '200': content: - application/json: - example: - _shape: 'openrouter' - created_at: '2026-08-23T00:00:00Z' - downloadable: true - filename: 'out/report.csv' - id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - mime_type: 'text/csv' - size_bytes: 123 - type: 'file' + audio/*: schema: - $ref: '#/components/schemas/FileResponse' - description: 'The promoted file, as a workspace document.' + description: 'Raw audio bytestream. Content-Type varies by requested format (audio/mpeg for mp3, audio/pcm for pcm — 16-bit little-endian).' + example: '' + format: 'binary' + type: 'string' + description: 'Audio bytes stream' '400': content: application/json: @@ -38238,11 +34551,21 @@ paths: application/json: example: error: - code: 401 - message: 'Missing Authentication header' + code: 401 + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '402': + content: + application/json: + example: + error: + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: @@ -38283,16 +34606,6 @@ paths: schema: $ref: '#/components/schemas/TooManyRequestsResponse' description: 'Too Many Requests - Rate limit exceeded' - '499': - content: - application/json: - example: - error: - code: 499 - message: 'The request was cancelled.' - schema: - $ref: '#/components/schemas/ClientClosedRequestResponse' - description: 'Client Closed Request - The caller cancelled the request' '500': content: application/json: @@ -38303,243 +34616,147 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '503': + '502': content: application/json: example: error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Promote a container file into workspace documents' - tags: - - 'Containers' - /credits: - get: - description: 'Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'getCredits' - responses: - '200': - content: - application/json: - example: - data: - total_credits: 100.5 - total_usage: 25.75 + code: 502 + message: 'Provider returned error' schema: - description: 'Total credits purchased and used' - example: - data: - total_credits: 100.5 - total_usage: 25.75 - properties: - data: - example: - total_credits: 100.5 - total_usage: 25.75 - properties: - total_credits: - description: 'Total credits purchased' - example: 100.5 - format: 'double' - type: 'number' - total_usage: - description: 'Total credits used' - example: 25.75 - format: 'double' - type: 'number' - required: - - 'total_credits' - - 'total_usage' - type: 'object' - required: - - 'data' - type: 'object' - description: 'Returns the total credits purchased and used' - '401': + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': content: application/json: example: error: - code: 401 - message: 'Missing Authentication header' + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + '524': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 524 + message: 'Request timed out. Please try again later.' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '500': + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' + code: 529 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Get remaining credits' + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Create speech' tags: - - 'Credits' - x-speakeasy-name-override: 'getCredits' - /credits/coinbase: + - 'TTS' + x-speakeasy-max-method-params: 1 + x-speakeasy-name-override: 'createSpeech' + /audio/transcriptions: post: - deprecated: true - description: 'Deprecated. The Coinbase APIs used by this endpoint have been deprecated, so Coinbase Commerce charges have been removed. Use the web credits purchase flow instead.' - operationId: 'createCoinbaseCharge' - responses: - '200': - description: 'This endpoint is deprecated and will never return a 200 response.' - '410': - content: - application/json: - example: - error: - code: 410 - message: 'The Coinbase APIs used by this endpoint have been deprecated, so the Coinbase Commerce credits API has been removed. Use the web credits purchase flow instead.' - schema: - $ref: '#/components/schemas/GoneResponse' - description: 'Gone - Endpoint has been permanently removed or deprecated' - security: [] - summary: 'Deprecated Coinbase Commerce charge endpoint' - tags: - - 'Credits' - x-fern-ignore: true - x-speakeasy-ignore: true - x-speakeasy-name-override: 'createCoinbaseCharge' - /datasets/app-rankings: - get: - description: "Returns the top public apps on OpenRouter ranked by token usage inside the requested\ndate window, matching the public apps marketplace on openrouter.ai/apps. Token totals\nare `prompt_tokens + completion_tokens`; hidden and private apps are excluded and\ntraffic from related app aliases is merged into the canonical visible app.\n\n`sort=popular` (default) ranks by total token volume inside the window.\n`sort=trending` ranks by absolute excess token growth: window volume minus the average\nvolume of the three equal-length periods immediately preceding the window. Apps with\nno excess growth are omitted, so `trending` may return fewer than `limit` rows.\n\nFilter with `category` (marketplace category group, e.g. `coding`) or `subcategory`\n(e.g. `cli-agent`). Ranks are re-numbered 1..N after filtering. Page with `offset` —\n`rank` stays absolute, so the first row of `offset=50` is `rank: 51`.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this dataset, OpenRouter must be cited as:\n\"Source: OpenRouter (openrouter.ai/apps), as of {as_of}.\"\n\nToken counts come from each upstream provider's own tokenizer, so a token attributed\nto one app is not directly comparable to a token attributed to another app whose\ntraffic flows through a different provider.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." - operationId: 'getAppRankings' - parameters: - - description: 'Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group.' - in: 'query' - name: 'category' - required: false - schema: - description: 'Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group.' - enum: - - 'coding' - - 'creative' - - 'productivity' - - 'entertainment' - example: 'coding' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent.' - in: 'query' - name: 'subcategory' - required: false - schema: - description: 'Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent.' - enum: - - 'cli-agent' - - 'ide-extension' - - 'cloud-agent' - - 'programming-app' - - 'native-app-builder' - - 'creative-writing' - - 'video-gen' - - 'image-gen' - - 'audio-gen' - - 'roleplay' - - 'game' - - 'writing-assistant' - - 'general-chat' - - 'personal-agent' - - 'legal' - example: 'cli-agent' - type: 'string' - x-speakeasy-unknown-values: allow - - description: '`popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results.' - in: 'query' - name: 'sort' - required: false - schema: - default: 'popular' - description: '`popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results.' - enum: - - 'popular' - - 'trending' - example: 'popular' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' - in: 'query' - name: 'start_date' - required: false - schema: - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' - example: '2026-04-12' - pattern: '^\d{4}-\d{2}-\d{2}$' - type: 'string' - - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' - in: 'query' - name: 'end_date' - required: false - schema: - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' - example: '2026-05-11' - pattern: '^\d{4}-\d{2}-\d{2}$' - type: 'string' - - description: 'Maximum number of apps to return (1-100). Defaults to 50.' - in: 'query' - name: 'limit' - required: false - schema: - default: 50 - description: 'Maximum number of apps to return (1-100). Defaults to 50.' - example: 50 - maximum: 100 - minimum: 1 - type: 'integer' - - description: 'Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`.' - in: 'query' - name: 'offset' - required: false - schema: - default: 0 - description: 'Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`.' - example: 0 - maximum: 100 - minimum: 0 - type: - - 'integer' - - 'null' + description: 'Transcribes audio into text. Accepts base64-encoded audio input as JSON, an OpenAI-style multipart/form-data file upload, or a URL the provider downloads directly, and returns the transcribed text.' + operationId: 'createAudioTranscriptions' + requestBody: + content: + application/json: + example: + input_audio: + data: 'UklGRiQA...' + format: 'wav' + language: 'en' + model: 'openai/whisper-large-v3' + schema: + $ref: '#/components/schemas/STTRequest' + multipart/form-data: + example: + file: 'audio.wav' + language: 'en' + model: 'openai/whisper-large-v3' + schema: + properties: + diarize: + description: 'Label each word with the speaker who said it (words[].speaker, words[].speaker_label). Requires response_format "verbose_json" (400 otherwise); word timestamps are included even when timestamp_granularities[] omits "word". Only supported by some providers; 400 when the selected model cannot diarize.' + type: 'boolean' + file: + description: 'The audio file to transcribe. The format is derived from the filename extension or the file part content type. Max 25 MB; send larger files as base64 JSON via input_audio, or by URL via source_url. Exactly one of file or source_url is required.' + format: 'binary' + type: 'string' + keyterms[]: + description: 'Domain terms, names, or phrases to bias recognition toward; repeat the part once per term (keyterms=... is also accepted). Only supported by some providers; 400 when the selected model cannot use keyterms.' + items: + type: 'string' + type: 'array' + language: + description: 'The language of the input audio (ISO-639-1).' + type: 'string' + model: + description: 'The model to use for transcription.' + type: 'string' + provider: + description: 'JSON-encoded provider preferences object, the same shape as the JSON body field: { "zdr": true, "data_collection": "deny", "options": { "": { ... } } }. Only options for the matched provider are forwarded. Must decode to a JSON object.' + type: 'string' + response_format: + description: 'The response format. "json" (default) returns { text, usage }; "verbose_json" additionally returns task, language, duration, and segment-level timestamps (OpenAI-compatible providers only).' + enum: + - 'json' + - 'verbose_json' + type: 'string' + x-speakeasy-unknown-values: allow + session_id: + description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence.' + maxLength: 256 + type: 'string' + source_url: + description: 'Publicly reachable http(s) URL of the audio file, downloaded by the provider directly (no size limit on our side). The format is derived from the URL path extension. Only supported by some providers; exactly one of file or source_url is required.' + format: 'uri' + type: 'string' + temperature: + description: 'The sampling temperature.' + type: 'number' + timestamp_granularities[]: + description: 'Timestamp detail levels to include when response_format is "verbose_json". "word" additionally returns word-level timestamps in the words array.' + items: + enum: + - 'word' + - 'segment' + type: 'string' + x-speakeasy-unknown-values: allow + type: 'array' + trace: + description: 'JSON-encoded trace metadata object (trace_id, trace_name, span_name, generation_name, parent_span_id and custom keys) attached to the Broadcast trace. Must decode to a JSON object.' + type: 'string' + user: + description: 'A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider.' + maxLength: 256 + type: 'string' + required: + - 'model' + type: 'object' + required: true responses: '200': content: application/json: example: - data: - - app_id: 12345 - app_name: 'Cline' - rank: 1 - total_requests: 4321 - total_tokens: '12345678' - - app_id: 67890 - app_name: 'Roo Code' - rank: 2 - total_requests: 2109 - total_tokens: '9876543' - meta: - as_of: '2026-05-12T02:00:00Z' - end_date: '2026-05-11' - start_date: '2026-04-12' - version: 'v1' + text: 'Hello, this is a test of OpenAI speech-to-text transcription.' + usage: + cost: 0.000508 + input_tokens: 83 + output_tokens: 30 + seconds: 9.2 + total_tokens: 113 schema: - $ref: '#/components/schemas/AppRankingsResponse' - description: 'Apps ranked per the requested `sort`, re-numbered 1..N. `popular` sorts by `total_tokens` descending; `trending` sorts by absolute excess token growth descending and may return fewer than `limit` rows.' + $ref: '#/components/schemas/STTResponse' + description: 'Transcription result' '400': content: application/json: @@ -38560,183 +34777,46 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '429': + '402': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' + '403': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Top apps by token usage' - tags: - - 'Datasets' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - /datasets/rankings-daily: - get: - description: "Returns the top 50 public models per day by total token usage on OpenRouter, plus a\nsingle aggregated `other` row per day that sums every model outside that top 50.\nToken totals are `prompt_tokens + completion_tokens`, matching the public rankings\nchart on openrouter.ai/rankings.\n\nEach row is a distinct `(date, model_permaslug)` pair. The `other` row uses the\nreserved permaslug `other` and is always returned last within its date, so callers\ncan compute `top-50 traffic / total daily traffic` without a second request.\n\nOptional filters slice the dataset. `period` (`day`/`week`/`month`) sets the time\ngrain. `modality` and `context_bucket` narrow the exact dataset by output/input\nmodality (or tool-calling activity) and request context length. `category` and\n`language_type` instead read a sampled, upsampled dataset whose `total_tokens` are\nweekly-grain estimates — they cannot be combined with each other or with the exact\nfilters, and reject `period=day` with a 400.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this dataset, OpenRouter must be cited as:\n\"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}.\"\n\nToken counts come from each upstream provider's own tokenizer (Anthropic counts\nare as reported by Anthropic, OpenAI counts are as reported by OpenAI, etc.), so\na token in one row is not directly comparable to a token in another row from a\ndifferent provider.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." - operationId: 'getRankingsDaily' - parameters: - - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' - in: 'query' - name: 'start_date' - required: false - schema: - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' - example: '2026-04-12' - pattern: '^\d{4}-\d{2}-\d{2}$' - type: 'string' - - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' - in: 'query' - name: 'end_date' - required: false - schema: - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' - example: '2026-05-11' - pattern: '^\d{4}-\d{2}-\d{2}$' - type: 'string' - - description: 'Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries.' - in: 'query' - name: 'period' - required: false - schema: - description: 'Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries.' - enum: - - 'day' - - 'week' - - 'month' - example: 'day' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`.' - in: 'query' - name: 'modality' - required: false - schema: - description: 'Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`.' - enum: - - 'text' - - 'image' - - 'image_output' - - 'audio' - - 'tool_calling' - example: 'text' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`.' - in: 'query' - name: 'context_bucket' - required: false - schema: - description: 'Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`.' - enum: - - '1K' - - '10K' - - '100K' - - '1M' - - '10M' - example: '100K' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`.' - in: 'query' - name: 'category' - required: false - schema: - description: 'Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`.' - enum: - - 'programming' - - 'roleplay' - - 'marketing' - - 'marketing/seo' - - 'technology' - - 'science' - - 'translation' - - 'legal' - - 'finance' - - 'health' - - 'trivia' - - 'academia' - example: 'programming' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`.' - in: 'query' - name: 'language_type' - required: false - schema: - description: 'Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`.' - enum: - - 'natural' - - 'programming' - example: 'natural' - type: 'string' - x-speakeasy-unknown-values: allow - responses: - '200': - content: - application/json: - example: - data: - - date: '2026-05-11' - model_permaslug: 'openai/gpt-4o-2024-05-13' - total_tokens: '12345678' - - date: '2026-05-11' - model_permaslug: 'anthropic/claude-3.5-sonnet-20241022' - total_tokens: '9876543' - - date: '2026-05-11' - model_permaslug: 'other' - total_tokens: '4321098' - meta: - as_of: '2026-05-12T02:00:00Z' - end_date: '2026-05-11' - start_date: '2026-04-12' - version: 'v1' + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/RankingsDailyResponse' - description: 'Up to 51 rows per day — the top 50 public models by `total_tokens` plus a single aggregated `other` row covering every model outside that top 50. Sorted by `date` ascending, then by `total_tokens` descending, with `other` pinned last within its date.' - '400': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': content: application/json: example: error: - code: 400 - message: 'Invalid request parameters' + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '413': content: application/json: example: - error: - code: 401 - message: 'Missing Authentication header' + error: + code: 413 + message: 'Request payload too large' schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' '429': content: application/json: @@ -38757,87 +34837,128 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Daily token totals for top 50 models' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': + content: + application/json: + example: + error: + code: 503 + message: 'Service temporarily unavailable' + schema: + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + '504': + content: + application/json: + example: + error: + code: 504 + message: 'The operation was aborted due to timeout' + schema: + $ref: '#/components/schemas/GatewayTimeoutResponse' + description: 'Gateway Timeout - Provider did not respond before the upstream deadline' + '524': + content: + application/json: + example: + error: + code: 524 + message: 'Request timed out. Please try again later.' + schema: + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': + content: + application/json: + example: + error: + code: 529 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Create transcription' tags: - - 'Datasets' - /datasets/session-cost: - get: - description: "Returns weekly refreshed, aggregated cost-per-session cells for the published harnesses.\nSessions are never pooled across apps. Medians are of per-session USD spend, and\nprivacy-preserving aggregation never exposes clerk_user_id values or per-session rows.\n\nFilter by `app_slug`, `model`, or `turn_range`. Filtering by `model` alone works across apps\nfor harness-vs-harness comparison at a fixed model. Results refresh weekly and include the source snapshot\nwindow in `meta`.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." - operationId: 'getSessionCost' - parameters: - - description: 'Filter to one published harness slug.' - in: 'query' - name: 'app_slug' - required: false - schema: - description: 'Filter to one published harness slug.' - example: 'hermes-agent' - type: 'string' - - description: 'Exact model permaslug filter. Works across all harness apps.' - in: 'query' - name: 'model' - required: false - schema: - description: 'Exact model permaslug filter. Works across all harness apps.' - example: 'anthropic/claude-4.8-opus' - type: 'string' - - description: 'Filter by the inclusive number of turns in a session.' - in: 'query' - name: 'turn_range' - required: false - schema: - description: 'Filter by the inclusive number of turns in a session.' - enum: - - '1-turn' - - '2-9-turns' - - '10-49-turns' - - '50-plus-turns' - example: '10-49-turns' - type: 'string' - x-speakeasy-unknown-values: allow - - description: 'Maximum number of cells to return (1-500). Defaults to 100.' - in: 'query' - name: 'limit' - required: false - schema: - default: 100 - description: 'Maximum number of cells to return (1-500). Defaults to 100.' - example: 100 - maximum: 500 - minimum: 1 - type: 'integer' - - description: 'Number of sorted cells to skip (0-5000). Defaults to 0.' - in: 'query' - name: 'offset' - required: false - schema: - default: 0 - description: 'Number of sorted cells to skip (0-5000). Defaults to 0.' - example: 0 - maximum: 5000 - minimum: 0 - type: - - 'integer' - - 'null' + - 'STT' + x-speakeasy-max-method-params: 1 + x-speakeasy-name-override: 'createTranscription' + /auth/keys: + post: + description: 'Exchange an authorization code from the PKCE flow for a user-controlled API key' + operationId: 'exchangeAuthCodeForAPIKey' + requestBody: + content: + application/json: + example: + code: 'auth_code_abc123def456' + code_challenge_method: 'S256' + code_verifier: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' + schema: + example: + code: 'auth_code_abc123def456' + code_challenge_method: 'S256' + code_verifier: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' + properties: + code: + description: 'The authorization code received from the OAuth redirect' + example: 'auth_code_abc123def456' + type: 'string' + code_challenge_method: + description: 'The method used to generate the code challenge' + enum: + - 'S256' + - 'plain' + - null + example: 'S256' + type: + - 'string' + - 'null' + x-speakeasy-unknown-values: allow + code_verifier: + description: 'The code verifier if code_challenge was used in the authorization request' + example: 'dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk' + type: 'string' + required: + - 'code' + type: 'object' + required: true responses: '200': content: application/json: example: - data: - - app_name: 'Hermes Agent' - app_slug: 'hermes-agent' - median_session_cost_usd: 1.74 - model_permaslug: 'anthropic/claude-4.8-opus' - turn_range: '10-49-turns' - meta: - as_of: '2026-05-12T02:00:00.000Z' - version: 'v1' - window_days: 30 - window_end_date: '2026-05-11' + key: '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' + user_id: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' schema: - $ref: '#/components/schemas/SessionCostResponse' - description: 'Aggregated cost-per-session cells for the requested filters.' + example: + key: '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' + user_id: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' + properties: + key: + description: 'The API key to use for OpenRouter requests' + example: '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' + type: 'string' + user_id: + description: 'User ID associated with the API key' + example: 'user_2yOPcMpKoQhcd4bVgSMlELRaIah' + type: + - 'string' + - 'null' + required: + - 'key' + - 'user_id' + type: 'object' + description: 'Successfully exchanged code for an API key' '400': content: application/json: @@ -38848,26 +34969,16 @@ paths: schema: $ref: '#/components/schemas/BadRequestResponse' description: 'Bad Request - Invalid request parameters or malformed input' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '429': + '403': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '500': content: application/json: @@ -38878,271 +34989,135 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Cost per session by harness and model' + summary: 'Exchange authorization code for API key' tags: - - 'Datasets' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - /embeddings: + - 'OAuth' + /auth/keys/code: post: - description: 'Submits an embedding request to the embeddings router' - operationId: 'createEmbeddings' + description: 'Create an authorization code for the PKCE flow to generate a user-controlled API key' + operationId: 'createAuthKeysCode' requestBody: content: application/json: + example: + callback_url: 'https://myapp.com/auth/callback' + code_challenge: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' + code_challenge_method: 'S256' + limit: 100 schema: - description: 'Embeddings request input' example: - dimensions: 1536 - input: 'The quick brown fox jumps over the lazy dog' - model: 'openai/text-embedding-3-small' + callback_url: 'https://myapp.com/auth/callback' + code_challenge: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' + code_challenge_method: 'S256' + limit: 100 properties: - dimensions: - description: 'The number of dimensions for the output embeddings' - example: 1536 - minimum: 1 - type: 'integer' - encoding_format: - description: 'The format of the output embeddings' + callback_url: + description: 'The callback URL to redirect to after authorization. Supports https URLs and localhost/127.0.0.1 URLs on any port for local CLI tools.' + example: 'https://myapp.com/auth/callback' + format: 'uri' + type: 'string' + code_challenge: + description: 'PKCE code challenge for enhanced security' + example: 'E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM' + type: 'string' + code_challenge_method: + description: 'The method used to generate the code challenge' enum: - - 'float' - - 'base64' - example: 'float' + - 'S256' + - 'plain' + example: 'S256' type: 'string' x-speakeasy-unknown-values: allow - input: - anyOf: - - minLength: 1 - type: 'string' - - items: - minLength: 1 - type: 'string' - type: 'array' - - items: - type: 'number' - type: 'array' - - items: - items: - type: 'number' - type: 'array' - type: 'array' - - items: - properties: - content: - items: - oneOf: - - properties: - text: - minLength: 1 - type: 'string' - type: - enum: - - 'text' - type: 'string' - required: - - 'type' - - 'text' - type: 'object' - - properties: - image_url: - properties: - url: - type: 'string' - required: - - 'url' - type: 'object' - type: - enum: - - 'image_url' - type: 'string' - required: - - 'type' - - 'image_url' - type: 'object' - - $ref: '#/components/schemas/ContentPartInputAudio' - - $ref: '#/components/schemas/ContentPartInputVideo' - - $ref: '#/components/schemas/ContentPartInputFile' - minItems: 1 - type: 'array' - required: - - 'content' - type: 'object' - type: 'array' - description: 'Text, token, or multimodal input(s) to embed' - example: 'The quick brown fox jumps over the lazy dog' - input_type: - description: 'The type of input (e.g. search_query, search_document)' - example: 'search_query' + expires_at: + description: 'Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected.' + example: '2027-12-31T23:59:59Z' + format: 'date-time' + type: + - 'string' + - 'null' + key_label: + description: 'Optional custom label for the API key. Defaults to the app name if not provided.' + example: 'My Custom Key' + maxLength: 100 type: 'string' - model: - description: 'The model to use for embeddings' - example: 'openai/text-embedding-3-small' + limit: + description: 'Credit limit for the API key to be created' + example: 100 + format: 'double' + type: 'number' + spawn_agent: + description: 'Agent identifier for spawn telemetry' + example: 'my-agent' type: 'string' - provider: - allOf: - - $ref: '#/components/schemas/ProviderPreferences' - - description: 'Provider routing preferences for the request.' - session_id: - description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.' - example: 'session-1234' - maxLength: 256 + x-fern-ignore: true + x-speakeasy-ignore: true + spawn_cloud: + description: 'Cloud identifier for spawn telemetry' + example: 'aws-us-east-1' type: 'string' - trace: - $ref: '#/components/schemas/TraceConfig' - user: - description: 'A unique identifier for the end-user' - example: 'user-1234' + x-fern-ignore: true + x-speakeasy-ignore: true + usage_limit_type: + description: 'Optional credit limit reset interval. When set, the credit limit resets on this interval.' + enum: + - 'daily' + - 'weekly' + - 'monthly' + example: 'monthly' + type: 'string' + x-speakeasy-unknown-values: allow + workspace_id: + description: 'Optional workspace ID to associate the API key with' + format: 'uuid' type: 'string' required: - - 'input' - - 'model' + - 'callback_url' type: 'object' required: true responses: '200': content: application/json: + example: + data: + app_id: 12345 + created_at: '2025-08-24T10:30:00Z' + id: 'auth_code_xyz789' schema: - description: 'Embeddings response containing embedding vectors' example: data: - - embedding: - - 0.0023064255 - - -0.009327292 - - 0.015797347 - index: 0 - object: 'embedding' - model: 'openai/text-embedding-3-small' - object: 'list' - usage: - prompt_tokens: 8 - total_tokens: 8 + app_id: 12345 + created_at: '2025-08-24T10:30:00Z' + id: 'auth_code_xyz789' properties: data: - description: 'List of embedding objects' - example: - - embedding: - - 0.0023064255 - - -0.009327292 - - 0.015797347 - index: 0 - object: 'embedding' - items: - description: 'A single embedding object' - example: - embedding: - - 0.0023064255 - - -0.009327292 - - 0.015797347 - index: 0 - object: 'embedding' - properties: - embedding: - anyOf: - - items: - type: 'number' - type: 'array' - - type: 'string' - description: 'Embedding vector as an array of floats or a base64 string' - example: - - 0.0023064255 - - -0.009327292 - - 0.015797347 - index: - description: 'Index of the embedding in the input list' - example: 0 - type: 'integer' - object: - enum: - - 'embedding' - type: 'string' - required: - - 'object' - - 'embedding' - type: 'object' - type: 'array' - id: - description: 'Unique identifier for the embeddings response' - example: 'embd-1234567890' - type: 'string' - model: - description: 'The model used for embeddings' - example: 'openai/text-embedding-3-small' - type: 'string' - object: - enum: - - 'list' - type: 'string' - usage: - description: 'Token usage statistics' - example: - prompt_tokens: 8 - total_tokens: 8 - properties: - cost: - description: 'Cost of the request in credits' - example: 0.0001 - format: 'double' - type: 'number' - cost_details: - $ref: '#/components/schemas/CostDetails' - is_byok: - description: 'Whether a request was made using a Bring Your Own Key configuration' - type: 'boolean' - prompt_tokens: - description: 'Number of tokens in the input' - example: 8 - type: 'integer' - prompt_tokens_details: - description: 'Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included.' - properties: - audio_tokens: - description: 'Number of audio tokens in the input' - type: 'integer' - file_tokens: - description: 'Number of file/document tokens in the input' - type: 'integer' - image_tokens: - description: 'Number of image tokens in the input' - example: 258 - type: 'integer' - text_tokens: - description: 'Number of text tokens in the input' - example: 8 - type: 'integer' - video_tokens: - description: 'Number of video tokens in the input' - type: 'integer' - type: 'object' - total_tokens: - description: 'Total number of tokens used' - example: 8 + description: 'Auth code data' + example: + app_id: 12345 + created_at: '2025-08-24T10:30:00Z' + id: 'auth_code_xyz789' + properties: + app_id: + description: 'The application ID associated with this auth code' + example: 12345 type: 'integer' + created_at: + description: 'ISO 8601 timestamp of when the auth code was created' + example: '2025-08-24T10:30:00Z' + type: 'string' + id: + description: 'The authorization code ID to use in the exchange request' + example: 'auth_code_xyz789' + type: 'string' required: - - 'prompt_tokens' - - 'total_tokens' + - 'id' + - 'app_id' + - 'created_at' type: 'object' required: - - 'object' - 'data' - - 'model' type: 'object' - text/event-stream: - example: 'data: [DONE]' - schema: - description: 'Not used for embeddings - embeddings do not support streaming' - type: 'string' - x-speakeasy-sse-sentinel: '[DONE]' - description: 'Embedding response' + description: 'Successfully created authorization code' '400': content: application/json: @@ -39163,166 +35138,619 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' + '403': + content: + application/json: + example: + error: + code: 403 + message: 'Only management keys can perform this operation' + schema: + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '409': + content: + application/json: + example: + error: + code: 409 + message: 'Resource conflict. Please try again later.' + schema: + $ref: '#/components/schemas/ConflictResponse' + description: 'Conflict - Resource conflict or concurrent modification' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Create authorization code' + tags: + - 'OAuth' + x-speakeasy-name-override: 'createAuthCode' + /batches: + get: + description: 'Lists batches in the workspace of the authenticating API key, newest first. To fetch the next page, pass the previous page''s `last_id` as `after`. List items omit `results`. Use `GET /batches/{id}` to get them. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' + operationId: 'listBatches' + parameters: + - description: 'Maximum number of batches to return, from 1 through 100.' + in: 'query' + name: 'limit' + required: false + schema: + description: 'Maximum number of batches to return, from 1 through 100.' + example: 20 + type: 'integer' + - description: 'Batch id from the previous page''s `last_id`.' + in: 'query' + name: 'after' + required: false + schema: + description: 'Batch id from the previous page''s `last_id`.' + example: 'batch_7a4b02' + minLength: 1 + type: 'string' + - description: 'Repeat this parameter to include more than one status.' + explode: true + in: 'query' + name: 'status' + required: false + schema: + description: 'Repeat this parameter to include more than one status.' + example: + - 'completed' + - 'failed' + items: + $ref: '#/components/schemas/BatchListStatus' + type: 'array' + style: 'form' + - description: 'Only include batches created strictly after this timestamp.' + in: 'query' + name: 'created_after' + required: false + schema: + $ref: '#/components/schemas/BatchListTimestamp' + - description: 'Only include batches created strictly before this timestamp.' + in: 'query' + name: 'created_before' + required: false + schema: + allOf: + - $ref: '#/components/schemas/BatchListTimestamp' + - description: 'Only include batches created strictly before this timestamp.' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BatchListResponse' + description: 'A newest-first page of batches.' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid batch list query.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Malformed or unsupported batch list query parameters.' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'No auth credentials found.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Missing or invalid API key.' + '429': + content: + application/json: + example: + error: + code: 429 + message: 'Rate limit exceeded.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Batch API rate limit exceeded for the billable entity.' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal server error.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Unexpected error in the ingress or upstream batch-api.' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Upstream batch-api is unavailable.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' + summary: 'List batches' + tags: + - 'Batch' + x-speakeasy-name-override: 'list' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'after' + type: 'cursor' + outputs: + nextCursor: '$.last_id' + results: '$.data' + type: 'cursor' + post: + description: 'Creates a batch of requests that run asynchronously against a single endpoint (`/v1/chat/completions`, `/v1/responses`, `/v1/messages`, `/v1/embeddings`). Returns `202` with `status: "validating"`. Poll `GET /batches/{id}` for progress and results. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' + operationId: 'createBatches' + requestBody: + content: + application/json: + examples: + chatCompletions: + summary: 'Chat completions batch' + value: + endpoint: '/v1/chat/completions' + model: 'openai/gpt-4o' + requests: + - body: + messages: + - content: 'Summarize ...' + role: 'user' + model: 'openai/gpt-4o' + custom_id: 'req-0001' + messages: + summary: 'Messages batch' + value: + endpoint: '/v1/messages' + model: 'openai/gpt-5-nano' + requests: + - body: + max_tokens: 1024 + messages: + - content: 'Summarize ...' + role: 'user' + model: 'openai/gpt-5-nano' + custom_id: 'req-0001' + providerPinned: + summary: 'Batch pinned to Vertex' + value: + endpoint: '/v1/chat/completions' + model: 'google/gemini-3.6-flash' + provider: + only: + - 'google-vertex' + requests: + - body: + messages: + - content: 'Summarize ...' + role: 'user' + model: 'google/gemini-3.6-flash' + custom_id: 'req-0001' + responses: + summary: 'Responses batch' + value: + endpoint: '/v1/responses' + model: 'openai/gpt-4o' + requests: + - body: + input: + - content: + - text: 'Summarize ...' + type: 'input_text' + role: 'user' + model: 'openai/gpt-4o' + custom_id: 'req-0001' + schema: + $ref: '#/components/schemas/BatchSubmitBody' + description: 'The batch to create. Each item in `requests` has a unique `custom_id` and a `body` in the request format of the chosen `endpoint`.' + required: true + responses: + '202': + content: + application/json: + schema: + $ref: '#/components/schemas/BatchObject' + description: 'Batch payload durably persisted and queued for asynchronous validation and provider submission (`status: "validating"`).' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'custom_id is required on requests[0].' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Malformed batch input or an unknown/incompatible batch model.' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'No auth credentials found.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Missing or invalid API key.' '402': content: application/json: example: error: code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' + message: 'Insufficient balance for this batch.' schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The estimated batch cost exceeds the available balance.' '403': content: application/json: example: error: code: 403 - message: 'Only management keys can perform this operation' + message: 'The selected provider or model is not allowed.' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The resolved batch endpoint is blocked by account policy.' '404': content: application/json: example: error: code: 404 - message: 'Resource not found' + message: 'Batch not found.' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '408': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'No batch exists for the given id.' + '413': content: application/json: example: error: - code: 408 - message: 'Operation timed out. Please try again later.' + code: 413 + message: 'Batch input exceeds the 200 MB payload limit.' schema: - $ref: '#/components/schemas/RequestTimeoutResponse' - description: 'Request Timeout - Operation exceeded time limit' - '413': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Batch input exceeds the maximum payload size.' + '422': content: application/json: example: error: - code: 413 - message: 'Request payload too large' + code: 422 + message: 'The batch request could not be processed.' schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The requested model variant or custom IDs violate Batch API constraints.' '429': content: application/json: example: error: code: 429 - message: 'Rate limit exceeded' + message: 'Rate limit exceeded.' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '499': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Batch API rate limit exceeded for the billable entity.' + '500': content: application/json: example: error: - code: 499 - message: 'The request was cancelled.' + code: 500 + message: 'Internal server error.' schema: - $ref: '#/components/schemas/ClientClosedRequestResponse' - description: 'Client Closed Request - The caller cancelled the request' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Unexpected error in the ingress or upstream batch-api.' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Upstream batch-api is unavailable.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' + summary: 'Create a batch' + tags: + - 'Batch' + x-speakeasy-retries: + retryConnectionErrors: false + statusCodes: + - '429' + strategy: 'backoff' + /batches/{id}: + delete: + description: 'Deletes a batch in a terminal status (`completed`, `failed`, `expired`, or `cancelled`) and its stored requests and results. Batches still in progress return `409`. Billing and usage records are kept. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' + operationId: 'deleteBatch' + parameters: + - description: 'The batch job id returned from submit.' + in: 'path' + name: 'id' + required: true + schema: + description: 'The batch job id returned from submit.' + example: 'batch_abc123' + minLength: 1 + type: 'string' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BatchDeletedObject' + description: 'The batch was deleted; per-target outcomes are reported under `deletion`.' + '401': + content: + application/json: + example: + error: + code: 401 + message: 'No auth credentials found.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Missing or invalid API key.' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Batch not found.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'No batch exists for the given id.' + '409': + content: + application/json: + example: + error: + code: 409 + message: 'Only completed, failed, expired, or cancelled batches can be deleted. Wait for the batch to finish and try again.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch is still processing, its required provider key is unavailable, or its state changed during deletion.' + '429': + content: + application/json: + example: + error: + code: 429 + message: 'Rate limit exceeded.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Batch API rate limit exceeded for the billable entity.' '500': content: application/json: example: error: code: 500 - message: 'Internal Server Error' + message: 'Internal server error.' schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Unexpected error in the ingress or upstream batch-api.' '502': content: application/json: example: error: code: 502 - message: 'Provider returned error' + message: 'Upstream batch-api is unavailable.' schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' + summary: 'Delete a batch' + tags: + - 'Batch' + x-speakeasy-name-override: 'delete' + get: + description: 'Returns a batch with its status and request counts. Batches in a terminal status include `results`. Failed batches report the reason in `error.message`. See the [Batch API Quickstart](https://openrouter.ai/docs/batch-quickstart).' + operationId: 'getBatches' + parameters: + - description: 'The batch job id returned from submit.' + in: 'path' + name: 'id' + required: true + schema: + description: 'The batch job id returned from submit.' + example: 'batch_abc123' + minLength: 1 + type: 'string' + responses: + '200': + content: + application/json: + schema: + $ref: '#/components/schemas/BatchObject' + description: 'The current batch job status.' + '401': content: application/json: example: error: - code: 503 - message: 'Service temporarily unavailable' + code: 401 + message: 'No auth credentials found.' schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - '504': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Missing or invalid API key.' + '402': + content: + application/json: + schema: + $ref: '#/components/schemas/BatchPaymentRequiredResponse' + description: 'The finalized batch cost exceeds the available balance; metadata is returned with `results: null`. Top up credits and poll again to receive the persisted results.' + '404': content: application/json: example: error: - code: 504 - message: 'The operation was aborted due to timeout' + code: 404 + message: 'Batch not found.' schema: - $ref: '#/components/schemas/GatewayTimeoutResponse' - description: 'Gateway Timeout - Provider did not respond before the upstream deadline' - '524': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'No batch exists for the given id.' + '410': content: application/json: example: error: - code: 524 - message: 'Request timed out. Please try again later.' + code: 410 + message: 'Batch results have expired. OpenRouter deletes batch results 30 days after the batch is created.' schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch results were deleted after the 30-day retention window.' + '429': content: application/json: example: error: - code: 529 - message: 'Provider returned error' + code: 429 + message: 'Rate limit exceeded.' schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Submit an embedding request' + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Batch API rate limit exceeded for the billable entity.' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal server error.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'Unexpected error in the ingress or upstream batch-api.' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Upstream batch-api is unavailable.' + schema: + $ref: '#/components/schemas/BatchErrorResponse' + description: 'The batch service is unavailable, or an upstream provider operation failed, including batch or file cleanup.' + summary: 'Get a batch' tags: - - 'Embeddings' - x-speakeasy-name-override: 'generate' - /embeddings/models: + - 'Batch' + /benchmarks: get: - description: 'Returns a list of all available embeddings models and their properties' - operationId: 'listEmbeddingsModels' + description: 'Unified benchmark endpoint that aggregates scores from multiple benchmark sources (Artificial Analysis, Design Arena, and OpenRouter''s own tau-bench, GPQA, and web-search evals). Filter by source to reproduce the exact shapes from the legacy per-source endpoints, or use task_type to find models suited for specific workloads. Use task_type=search (or a search_* benchmark_type) for OpenRouter''s search benchmarks, which publish each model''s highest-scoring eligible evaluation configuration with same-configuration runs combined by task-weighted mean. Authenticate with any valid OpenRouter API key. Rate-limited to 30 requests/minute per key and 500 requests/day per account.' + operationId: 'getBenchmarks' parameters: - - description: 'Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned' + - description: 'Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources.' in: 'query' - name: 'offset' + name: 'source' required: false schema: - default: 0 - description: 'Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned' + description: 'Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources.' + enum: + - 'artificial-analysis' + - 'design-arena' + - 'openrouter' + example: 'artificial-analysis' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only.' in: 'query' - name: 'limit' + name: 'task_type' required: false schema: - default: 500 - description: 'Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned' - example: 500 - maximum: 1000 + description: 'Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only.' + enum: + - 'coding' + - 'intelligence' + - 'agentic' + - 'search' + example: 'coding' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources'' items as they are.' + in: 'query' + name: 'benchmark_type' + required: false + schema: + description: 'Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources'' items as they are.' + enum: + - 'gpqa_diamond' + - 'tau_bench_verified_airline' + - 'search_browsecomp' + - 'search_hle' + - 'search_dsqa' + - 'search_widesearch' + example: 'search_widesearch' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract.' + in: 'query' + name: 'include_run_config' + required: false + schema: + default: false + description: 'Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract.' + example: true + type: 'boolean' + - description: 'OpenRouter search benchmarks only: filter by the search engine used.' + in: 'query' + name: 'search_engine' + required: false + schema: + description: 'OpenRouter search benchmarks only: filter by the search engine used.' + example: 'exa' + type: 'string' + - description: 'OpenRouter search benchmarks only: filter by the request surface the lane ran on.' + in: 'query' + name: 'search_surface' + required: false + schema: + description: 'OpenRouter search benchmarks only: filter by the request surface the lane ran on.' + enum: + - 'server-tool' + - 'plugin' + example: 'server-tool' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Design Arena only: arena to query. Defaults to `models` when source is `design-arena`.' + in: 'query' + name: 'arena' + required: false + schema: + description: 'Design Arena only: arena to query. Defaults to `models` when source is `design-arena`.' + enum: + - 'models' + - 'builders' + - 'agents' + example: 'models' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories.' + in: 'query' + name: 'category' + required: false + schema: + description: 'Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories.' + example: 'codecategories' + type: 'string' + - description: 'Maximum number of items to return. When omitted, all matching results are returned.' + in: 'query' + name: 'max_results' + required: false + schema: + description: 'Maximum number of items to return. When omitted, all matching results are returned.' + example: 50 minimum: 1 type: 'integer' responses: @@ -39331,40 +35759,35 @@ paths: application/json: example: data: - - architecture: - input_modalities: - - 'text' - instruct_type: null - modality: 'text->embeddings' - output_modalities: - - 'embeddings' - tokenizer: 'GPT' - canonical_slug: 'openai/text-embedding-3-small' - context_length: 8192 - created: 1692901234 - default_parameters: null - description: 'OpenAI text embedding model optimized for performance.' - expiration_date: null - id: 'openai/text-embedding-3-small' - knowledge_cutoff: null - links: - details: '/api/v1/models/openai/text-embedding-3-small/endpoints' - name: 'Text Embedding 3 Small' - per_request_limits: null + - agentic_index: 58.3 + coding_index: 65.8 + display_name: 'GPT-4o' + intelligence_index: 71.2 + model_permaslug: 'openai/gpt-4o' pricing: - completion: '0' - image: '0' - prompt: '0.00000002' - request: '0' - supported_parameters: [] - supported_voices: null - top_provider: - context_length: 8192 - is_moderated: false - max_completion_tokens: null + completion: '0.00001' + prompt: '0.0000025' + source: 'artificial-analysis' + - accuracy: 0.72 + accuracy_stddev: 0.03 + avg_cost_per_task: 0.002 + benchmark_type: 'gpqa_diamond' + display_name: 'GPT-4o' + last_run_timestamp: '2026-06-03T12:00:00Z' + model_permaslug: 'openai/gpt-4o' + source: 'openrouter' + total_tasks: 300 + meta: + as_of: '2026-06-03T12:00:00Z' + citation: null + model_count: 1 + source: null + source_url: null + task_type: null + version: 'v1' schema: - $ref: '#/components/schemas/ModelsListResponse' - description: 'Returns a list of embeddings models' + $ref: '#/components/schemas/UnifiedBenchmarksResponse' + description: 'Benchmark results filtered by the specified source and optional task type.' '400': content: application/json: @@ -39375,138 +35798,26 @@ paths: schema: $ref: '#/components/schemas/BadRequestResponse' description: 'Bad Request - Invalid request parameters or malformed input' - '500': + '401': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'List all embeddings models' - tags: - - 'Embeddings' - x-speakeasy-name-override: 'listModels' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - /endpoints/zdr: - get: - operationId: 'listEndpointsZdr' - responses: - '200': - content: - application/json: - example: - data: - - context_length: 8192 - latency_last_30m: - p50: 0.25 - p75: 0.35 - p90: 0.48 - p99: 0.85 - max_completion_tokens: 4096 - max_prompt_tokens: 8192 - model_id: 'openai/gpt-4' - model_name: 'GPT-4' - name: 'OpenAI: GPT-4' - native_tools: {} - pricing: - completion: '0.00006' - image: '0' - prompt: '0.00003' - request: '0' - provider_name: 'OpenAI' - quantization: 'fp16' - status: 0 - supported_parameters: - - 'temperature' - - 'top_p' - - 'max_tokens' - supports_diarization: false - supports_image_reference: false - supports_implicit_caching: true - supports_multiple_audio_references: false - supports_voice_cloning: false - tag: 'openai' - throughput_last_30m: - p50: 45.2 - p75: 38.5 - p90: 28.3 - p99: 15.1 - uptime_last_1d: 99.8 - uptime_last_30m: 99.5 - uptime_last_5m: 100 + code: 401 + message: 'Missing Authentication header' schema: - example: - data: - - context_length: 8192 - latency_last_30m: - p50: 0.25 - p75: 0.35 - p90: 0.48 - p99: 0.85 - max_completion_tokens: 4096 - max_prompt_tokens: 8192 - model_id: 'openai/gpt-4' - model_name: 'GPT-4' - name: 'OpenAI: GPT-4' - native_tools: {} - pricing: - completion: '0.00006' - image: '0' - prompt: '0.00003' - request: '0' - provider_name: 'OpenAI' - quantization: 'fp16' - status: 0 - supported_parameters: - - 'temperature' - - 'top_p' - - 'max_tokens' - supports_diarization: false - supports_image_reference: false - supports_implicit_caching: true - supports_multiple_audio_references: false - supports_voice_cloning: false - tag: 'openai' - throughput_last_30m: - p50: 45.2 - p75: 38.5 - p90: 28.3 - p99: 15.1 - uptime_last_1d: 99.8 - uptime_last_30m: 99.5 - uptime_last_5m: 100 - properties: - data: - items: - $ref: '#/components/schemas/PublicEndpoint' - type: 'array' - required: - - 'data' - type: 'object' - description: 'Returns a list of endpoints' - '403': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '429': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -39517,14 +35828,13 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Preview the impact of ZDR on the available endpoints' + summary: 'List Benchmarks' tags: - - 'Endpoints' - x-speakeasy-name-override: 'listZdrEndpoints' - /external-users: + - 'Benchmarks' + /byok: get: - description: 'List registrations belonging to the authenticated organization. Inactive registrations are excluded by default. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listExternalUsers' + description: 'List the bring-your-own-key (BYOK) provider credentials for the authenticated entity''s default workspace. Use the `workspace_id` query parameter to scope the result to a different workspace, or the `provider` query parameter to filter by upstream provider. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listBYOKKeys' parameters: - description: 'Number of records to skip for pagination' in: 'query' @@ -39549,40 +35859,168 @@ paths: maximum: 100 minimum: 1 type: 'integer' - - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + - description: 'Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly.' in: 'query' - name: 'user' + name: 'workspace_id' required: false schema: - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' - example: 'employee_123' - maxLength: 512 - minLength: 1 - pattern: '^[^\u0000]+$' + description: 'Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly.' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' - - description: 'Include deactivated registrations.' + - description: 'Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`).' in: 'query' - name: 'include_inactive' + name: 'provider' required: false schema: - default: false - description: 'Include deactivated registrations.' - example: false - type: 'boolean' + description: 'Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`).' + enum: + - 'ai21' + - 'aion-labs' + - 'akashml' + - 'alibaba' + - 'amazon-bedrock' + - 'amazon-bedrock/claude-on-aws' + - 'amazon-nova' + - 'ambient' + - 'anthropic' + - 'anthropic/2' + - 'arcee-ai' + - 'assemblyai' + - 'atlas-cloud' + - 'avian' + - 'azure' + - 'baidu' + - 'baseten' + - 'black-forest-labs' + - 'byteplus' + - 'cerebras' + - 'chutes' + - 'cirrascale' + - 'clarifai' + - 'claude-on-aws' + - 'cloudflare' + - 'cohere' + - 'coreweave' + - 'cosine' + - 'crusoe' + - 'darkbloom' + - 'databricks' + - 'decart' + - 'deepgram' + - 'deepinfra' + - 'deepseek' + - 'dekallm' + - 'digitalocean' + - 'elevenlabs' + - 'featherless' + - 'fireworks' + - 'fish-audio' + - 'friendli' + - 'gmicloud' + - 'google-ai-studio' + - 'google-vertex' + - 'groq' + - 'heygen' + - 'inception' + - 'inceptron' + - 'inferact-vllm' + - 'inference-net' + - 'infermatic' + - 'inflection' + - 'io-net' + - 'ionstream' + - 'krea' + - 'liquid' + - 'makora' + - 'mancer' + - 'mara' + - 'meta' + - 'minimax' + - 'mistral' + - 'modal' + - 'modelrun' + - 'modular' + - 'moonshotai' + - 'morph' + - 'near-ai' + - 'nebius' + - 'nex-agi' + - 'nextbit' + - 'novita' + - 'nvidia' + - 'ollama' + - 'open-inference' + - 'openai' + - 'parasail' + - 'pareto-alpha' + - 'perceptron' + - 'perplexity' + - 'phala' + - 'poolside' + - 'primeintellect' + - 'quiver' + - 'recraft' + - 'recursive' + - 'reka' + - 'relace' + - 'respan' + - 'runway' + - 'sail-research' + - 'sakana' + - 'sakana-ai' + - 'sambanova' + - 'scaledown' + - 'seed' + - 'siliconflow' + - 'sourceful' + - 'stepfun' + - 'streamlake' + - 'switchpoint' + - 'tencent' + - 'tenstorrent' + - 'thinkingmachines' + - 'together' + - 'typesafe' + - 'unbiased' + - 'upstage' + - 'venice' + - 'voyageai' + - 'wafer' + - 'wandb' + - 'wandb-legacy' + - 'xai' + - 'xiaomi' + - 'z-ai' + example: 'openai' + type: 'string' + x-speakeasy-unknown-values: allow responses: '200': content: application/json: example: data: - - created_at: '2026-09-16T12:00:00Z' - is_active: true - updated_at: '2026-09-16T12:00:00Z' - user: 'employee_123' + - allowed_api_key_hashes: null + allowed_models: null + allowed_user_ids: null + created_at: '2025-08-24T10:30:00Z' + declared_region: null + declared_zdr: null + disabled: false + id: '11111111-2222-3333-4444-555555555555' + is_byok_only: false + is_fallback: false + is_required: false + label: 'sk-...AbCd' + name: 'Production OpenAI Key' + provider: 'openai' + sort_order: 0 + workspace_id: '550e8400-e29b-41d4-a716-446655440000' total_count: 1 schema: - $ref: '#/components/schemas/ListExternalUsersResponse' - description: 'Matching registrations and their total count.' + $ref: '#/components/schemas/ListBYOKKeysResponse' + description: 'List of BYOK credentials' '400': content: application/json: @@ -39613,16 +36051,6 @@ paths: schema: $ref: '#/components/schemas/ForbiddenResponse' description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' '500': content: application/json: @@ -39633,10 +36061,9 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List registered external users' + summary: 'List BYOK provider credentials' tags: - - 'External Users' - x-speakeasy-group: 'externalUsers' + - 'BYOK' x-speakeasy-name-override: 'list' x-speakeasy-pagination: inputs: @@ -39650,15 +36077,17 @@ paths: results: '$.data' type: 'offsetLimit' post: - description: 'Register a caller-supplied tracking ID under the authenticated organization. No login account, policy, or credentials are created. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'createExternalUser' + description: 'Create a new bring-your-own-key (BYOK) provider credential. The raw key is encrypted at rest and never returned in API responses. When `workspace_id` is omitted, the credential is created in the default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. Treat the raw key as write-only; it is never returned after creation. Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'createBYOKKey' requestBody: content: application/json: example: - user: 'employee_123' + key: 'sk-proj-abc123...' + name: 'Production OpenAI Key' + provider: 'openai' schema: - $ref: '#/components/schemas/CreateExternalUserRequest' + $ref: '#/components/schemas/CreateBYOKKeyRequest' required: true responses: '201': @@ -39666,13 +36095,25 @@ paths: application/json: example: data: - created_at: '2026-09-16T12:00:00Z' - is_active: true - updated_at: '2026-09-16T12:00:00Z' - user: 'employee_123' + allowed_api_key_hashes: null + allowed_models: null + allowed_user_ids: null + created_at: '2025-08-24T10:30:00Z' + declared_region: null + declared_zdr: null + disabled: false + id: '11111111-2222-3333-4444-555555555555' + is_byok_only: false + is_fallback: false + is_required: false + label: 'sk-...AbCd' + name: 'Production OpenAI Key' + provider: 'openai' + sort_order: 0 + workspace_id: '550e8400-e29b-41d4-a716-446655440000' schema: - $ref: '#/components/schemas/ExternalUserResponse' - description: 'The registered external user. No generated public identifier is returned.' + $ref: '#/components/schemas/CreateBYOKKeyResponse' + description: 'BYOK credential created successfully' '400': content: application/json: @@ -39693,26 +36134,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '409': + '403': content: application/json: example: error: - code: 409 - message: 'This tracking ID is already registered' + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/ConflictResponse' - description: 'The tracking ID is already registered in this organization, active or not.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '500': content: application/json: @@ -39723,40 +36154,33 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Register an external user' + summary: 'Create a BYOK provider credential' tags: - - 'External Users' - x-speakeasy-group: 'externalUsers' + - 'BYOK' x-speakeasy-name-override: 'create' - /external-users/{user}: + /byok/{id}: delete: - description: 'Soft-deactivate a registration while retaining its tracking ID. Repeat deactivation succeeds. This does not block inference; reactivate through PATCH. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'deleteExternalUser' + description: 'Delete (soft-delete) a bring-your-own-key (BYOK) provider credential by its `id`. The encrypted key material is wiped and the record is marked as deleted. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'deleteBYOKKey' parameters: - - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + - description: 'The BYOK credential ID (UUID).' in: 'path' - name: 'user' + name: 'id' required: true schema: - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' - example: 'employee_123' - maxLength: 512 - minLength: 1 - pattern: '^[^\u0000]+$' + description: 'The BYOK credential ID (UUID).' + example: '11111111-2222-3333-4444-555555555555' + format: 'uuid' type: 'string' responses: - '204': - description: 'Registration is inactive.' - '400': + '200': content: application/json: example: - error: - code: 400 - message: 'Invalid request parameters' + deleted: true schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' + $ref: '#/components/schemas/DeleteBYOKKeyResponse' + description: 'BYOK credential deleted successfully' '401': content: application/json: @@ -39767,6 +36191,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' + '403': + content: + application/json: + example: + error: + code: 403 + message: 'Only management keys can perform this operation' + schema: + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -39787,25 +36221,22 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Deactivate a registered external user' + summary: 'Delete a BYOK provider credential' tags: - - 'External Users' - x-speakeasy-group: 'externalUsers' + - 'BYOK' x-speakeasy-name-override: 'delete' get: - description: 'Retrieve an active or inactive registration by its URL-encoded, caller-supplied tracking ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'getExternalUser' + description: 'Get a single bring-your-own-key (BYOK) provider credential by its `id`. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getBYOKKey' parameters: - - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + - description: 'The BYOK credential ID (UUID).' in: 'path' - name: 'user' + name: 'id' required: true schema: - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' - example: 'employee_123' - maxLength: 512 - minLength: 1 - pattern: '^[^\u0000]+$' + description: 'The BYOK credential ID (UUID).' + example: '11111111-2222-3333-4444-555555555555' + format: 'uuid' type: 'string' responses: '200': @@ -39813,23 +36244,25 @@ paths: application/json: example: data: - created_at: '2026-09-16T12:00:00Z' - is_active: true - updated_at: '2026-09-16T12:00:00Z' - user: 'employee_123' - schema: - $ref: '#/components/schemas/ExternalUserResponse' - description: 'The registered external user. No generated public identifier is returned.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' + allowed_api_key_hashes: null + allowed_models: null + allowed_user_ids: null + created_at: '2025-08-24T10:30:00Z' + declared_region: null + declared_zdr: null + disabled: false + id: '11111111-2222-3333-4444-555555555555' + is_byok_only: false + is_fallback: false + is_required: false + label: 'sk-...AbCd' + name: 'Production OpenAI Key' + provider: 'openai' + sort_order: 0 + workspace_id: '550e8400-e29b-41d4-a716-446655440000' schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' + $ref: '#/components/schemas/GetBYOKKeyResponse' + description: 'BYOK credential details' '401': content: application/json: @@ -39870,33 +36303,31 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Get a registered external user' + summary: 'Get a BYOK provider credential' tags: - - 'External Users' - x-speakeasy-group: 'externalUsers' + - 'BYOK' x-speakeasy-name-override: 'get' patch: - description: 'Update registration state without changing identity. State changes do not enforce inference access. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'updateExternalUser' + description: 'Update an existing bring-your-own-key (BYOK) provider credential by its `id`. Include the `key` field to rotate the raw provider API key in-place (the previous key material is overwritten). Use `allowed_api_key_hashes` to restrict the credential to specific OpenRouter API keys (`null` clears the restriction). [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'updateBYOKKey' parameters: - - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + - description: 'The BYOK credential ID (UUID).' in: 'path' - name: 'user' + name: 'id' required: true schema: - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' - example: 'employee_123' - maxLength: 512 - minLength: 1 - pattern: '^[^\u0000]+$' + description: 'The BYOK credential ID (UUID).' + example: '11111111-2222-3333-4444-555555555555' + format: 'uuid' type: 'string' requestBody: content: application/json: example: - is_active: true + disabled: false + name: 'Updated OpenAI Key' schema: - $ref: '#/components/schemas/UpdateExternalUserRequest' + $ref: '#/components/schemas/UpdateBYOKKeyRequest' required: true responses: '200': @@ -39904,13 +36335,25 @@ paths: application/json: example: data: - created_at: '2026-09-16T12:00:00Z' - is_active: true - updated_at: '2026-09-16T12:00:00Z' - user: 'employee_123' + allowed_api_key_hashes: null + allowed_models: null + allowed_user_ids: null + created_at: '2025-08-24T10:30:00Z' + declared_region: null + declared_zdr: null + disabled: false + id: '11111111-2222-3333-4444-555555555555' + is_byok_only: false + is_fallback: false + is_required: false + label: 'sk-...AbCd' + name: 'Updated OpenAI Key' + provider: 'openai' + sort_order: 0 + workspace_id: '550e8400-e29b-41d4-a716-446655440000' schema: - $ref: '#/components/schemas/ExternalUserResponse' - description: 'The registered external user. No generated public identifier is returned.' + $ref: '#/components/schemas/UpdateBYOKKeyResponse' + description: 'BYOK credential updated successfully' '400': content: application/json: @@ -39931,6 +36374,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' + '403': + content: + application/json: + example: + error: + code: 403 + message: 'Only management keys can perform this operation' + schema: + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -39941,6 +36394,16 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' + '409': + content: + application/json: + example: + error: + code: 409 + message: 'Resource conflict. Please try again later.' + schema: + $ref: '#/components/schemas/ConflictResponse' + description: 'Conflict - Resource conflict or concurrent modification' '500': content: application/json: @@ -39951,106 +36414,76 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Update a registered external user' + summary: 'Update a BYOK provider credential' tags: - - 'External Users' - x-speakeasy-group: 'externalUsers' + - 'BYOK' x-speakeasy-name-override: 'update' - /files: - get: - description: 'Lists files belonging to the workspace of the authenticating API key.' - operationId: 'listFiles' + /chat/completions: + post: + description: 'Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes.' + operationId: 'sendChatCompletionRequest' parameters: - - description: 'Maximum number of files to return (1–1000).' - in: 'query' - name: 'limit' - required: false - schema: - description: 'Maximum number of files to return (1–1000).' - example: 100 - maximum: 1000 - minimum: 1 - type: 'integer' - - description: 'Opaque pagination cursor from a previous response.' - in: 'query' - name: 'cursor' - required: false - schema: - description: 'Opaque pagination cursor from a previous response.' - example: 'eyJjdXJzb3IiOiJvcl9maWxlXzAxMUNOaGE4aUNKY1Uxd1hOUjZxNFY4dyJ9' - type: 'string' - - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - in: 'query' - name: 'workspace_id' - required: false - schema: - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' - format: 'uuid' - type: 'string' - - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' - example: 'openai' - in: 'query' - name: 'provider' - required: false - schema: - $ref: '#/components/schemas/FileProvider' - - description: 'OpenAI-style forward cursor: the id to list after.' - in: 'query' - name: 'after' - required: false - schema: - description: 'OpenAI-style forward cursor: the id to list after.' - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - type: 'string' - - description: 'Anthropic-style forward cursor: the id to list after.' - in: 'query' - name: 'after_id' - required: false - schema: - description: 'Anthropic-style forward cursor: the id to list after.' - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - type: 'string' - - description: 'Anthropic-style reverse cursor. Not supported by OpenRouter storage.' - in: 'query' - name: 'before_id' - required: false - schema: - description: 'Anthropic-style reverse cursor. Not supported by OpenRouter storage.' - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - type: 'string' - - description: 'Sort direction. Only `asc` is supported by OpenRouter storage.' - in: 'query' - name: 'order' + - description: 'Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility.' + example: 'enabled' + in: 'header' + name: 'X-OpenRouter-Metadata' required: false schema: - description: 'Sort direction. Only `asc` is supported by OpenRouter storage.' - enum: - - 'asc' - - 'desc' - example: 'asc' - type: 'string' - x-speakeasy-unknown-values: allow + $ref: '#/components/schemas/MetadataLevel' + requestBody: + content: + application/json: + example: + max_tokens: 150 + messages: + - content: 'You are a helpful assistant.' + role: 'system' + - content: 'What is the capital of France?' + role: 'user' + model: 'openai/gpt-4' + temperature: 0.7 + schema: + $ref: '#/components/schemas/ChatRequest' + required: true responses: '200': content: application/json: example: - cursor: null + choices: + - finish_reason: 'stop' + index: 0 + message: + content: 'The capital of France is Paris.' + role: 'assistant' + created: 1677652288 + id: 'chatcmpl-123' + model: 'openai/gpt-4' + object: 'chat.completion' + system_fingerprint: 'fp_44709d6fcb' + usage: + completion_tokens: 10 + prompt_tokens: 25 + total_tokens: 35 + schema: + $ref: '#/components/schemas/ChatResult' + text/event-stream: + example: data: - - created_at: '2025-01-01T00:00:00Z' - downloadable: false - filename: 'document.pdf' - id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - mime_type: 'application/pdf' - size_bytes: 1024000 - type: 'file' - first_id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - has_more: false - last_id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + choices: + - delta: + content: 'Hello' + role: 'assistant' + finish_reason: null + index: 0 + created: 1677652288 + id: 'chatcmpl-123' + model: 'openai/gpt-4' + object: 'chat.completion.chunk' schema: - $ref: '#/components/schemas/FileListResponse' - description: 'A page of files.' + $ref: '#/components/schemas/ChatStreamingResponse' + x-speakeasy-sse-sentinel: '[DONE]' + description: 'Successful chat completion response' '400': content: application/json: @@ -40071,148 +36504,84 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Rate limit exceeded' - schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': + '402': content: application/json: example: error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'List files' - tags: - - 'Files' - x-speakeasy-name-override: 'list' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'cursor' - type: 'cursor' - outputs: - nextCursor: '$.cursor' - results: '$.data' - type: 'cursor' - post: - description: 'Uploads a file to be referenced in future API calls. The file is stored under the workspace of the authenticating API key. Maximum file size: 100 MB; empty files are rejected. The file type is determined from the file contents — not the filename or the declared content type — and must be a PDF, a PNG/JPEG/GIF/WebP image, a DOCX/XLSX/PPTX document, an MP3/WAV/FLAC/OGG audio file, or UTF-8 text. Text is reported by its structure as `application/json`, `application/x-ndjson`, `text/csv`, `text/markdown`, or `text/plain`.' - operationId: 'uploadFile' - parameters: - - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - in: 'query' - name: 'workspace_id' - required: false - schema: - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' - format: 'uuid' - type: 'string' - - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' - example: 'openai' - in: 'query' - name: 'provider' - required: false - schema: - $ref: '#/components/schemas/FileProvider' - requestBody: - content: - multipart/form-data: - example: - file: 'document.pdf' - schema: - properties: - file: - format: 'binary' - type: 'string' - required: - - 'file' - type: 'object' - required: true - responses: - '200': - content: - application/json: - example: - created_at: '2025-01-01T00:00:00Z' - downloadable: false - filename: 'document.pdf' - id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - mime_type: 'application/pdf' - size_bytes: 1024000 - type: 'file' + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' schema: - $ref: '#/components/schemas/FileResponse' - description: 'The uploaded file metadata.' - '400': + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' + '403': content: application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' + examples: + guardrail-blocked: + summary: 'Guardrail blocked the request' + value: + error: + code: 403 + message: 'Request blocked: prompt injection patterns detected' + metadata: + patterns: + - 'ignore all previous instructions' + openrouter_metadata: + attempt: 1 + endpoints: + available: + - model: 'openai/gpt-4o' + provider: 'OpenAI' + selected: false + total: 1 + is_byok: false + pipeline: + - data: + action: 'blocked' + detected: true + engines: + - 'regex' + patterns: + - 'ignore all previous instructions' + guardrail_id: 'grd_abc123' + guardrail_scope: 'api-key' + name: 'regex_pi_detection' + summary: 'Blocked: prompt injection detected (1 pattern matched)' + type: 'guardrail' + region: 'iad' + requested: 'openai/gpt-4o' + strategy: 'direct' + summary: 'available=1' + insufficient-permissions: + summary: 'Insufficient permissions' + value: + error: + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' - '401': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions, or a guardrail blocked the request. When guardrails block and the `X-OpenRouter-Metadata: enabled` header is present, the response includes `openrouter_metadata` with full routing context and a `pipeline` array containing guardrail stage details.' + '404': content: application/json: example: error: - code: 401 - message: 'Missing Authentication header' + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '408': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 408 + message: 'Operation timed out. Please try again later.' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' + $ref: '#/components/schemas/RequestTimeoutResponse' + description: 'Request Timeout - Operation exceeded time limit' '413': content: application/json: @@ -40223,26 +36592,26 @@ paths: schema: $ref: '#/components/schemas/PayloadTooLargeResponse' description: 'Payload Too Large - Request payload exceeds size limits' - '429': + '422': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 422 + message: 'Invalid argument' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '499': + $ref: '#/components/schemas/UnprocessableEntityResponse' + description: 'Unprocessable Entity - Semantic validation failure' + '429': content: application/json: example: error: - code: 499 - message: 'The request was cancelled.' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/ClientClosedRequestResponse' - description: 'Client Closed Request - The caller cancelled the request' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -40273,80 +36642,96 @@ paths: schema: $ref: '#/components/schemas/ServiceUnavailableResponse' description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Upload a file' + '524': + content: + application/json: + example: + error: + code: 524 + message: 'Request timed out. Please try again later.' + schema: + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': + content: + application/json: + example: + error: + code: 529 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Create a chat completion' tags: - - 'Files' - x-speakeasy-name-override: 'upload' - /files/{file_id}: - delete: - description: 'Deletes a file owned by the requesting workspace. Deletion is irreversible.' - operationId: 'deleteFile' + - 'Chat' + x-speakeasy-group: 'chat' + x-speakeasy-name-override: 'send' + x-speakeasy-stream-request-field: 'stream' + /classifications/task: + get: + description: "Returns the market-share breakdown of OpenRouter traffic by task classification\n(e.g. code generation, web search, summarization) over a trailing time window.\n\nEach classification reports its share of classified sampled requests (`usage_share`)\nand classified sampled token volume (`token_share`) as fractions between 0 and 1.\nThe unclassified `other` bucket is excluded. Absolute volumes are not exposed\nbecause the underlying data is sampled.\n\nEach classification also includes a `models` array listing the top models by\nrequest volume within that classification, with their within-tag usage and token shares.\n\nClassifications are grouped into macro-categories (Code, Data, Agent, General)\nwith aggregate shares provided for each.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this data, cite as:\n\"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}.\"" + operationId: 'getTaskClassifications' parameters: - - in: 'path' - name: 'file_id' - required: true - schema: - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - maxLength: 256 - minLength: 1 - pattern: '^[\w-]+$' - type: 'string' - - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + - description: 'Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported.' in: 'query' - name: 'workspace_id' + name: 'window' required: false schema: - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' - format: 'uuid' + default: '7d' + description: 'Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported.' + enum: + - '7d' + example: '7d' type: 'string' - - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' - example: 'openai' - in: 'query' - name: 'provider' - required: false - schema: - $ref: '#/components/schemas/FileProvider' responses: '200': content: application/json: example: - id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - type: 'file_deleted' - schema: - $ref: '#/components/schemas/FileDeleteResponse' - description: 'The file was deleted.' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' + data: + as_of: '2026-06-17' + classifications: + - category_token_share: 0.48 + category_usage_share: 0.51 + display_name: 'Code Generation' + macro_category: 'code' + models: + - id: 'openai/gpt-4.1-mini' + tag_token_share: 0.75 + tag_usage_share: 0.55 + tag: 'code:general_impl' + token_share: 0.31 + usage_share: 0.23 + macro_categories: + - key: 'code' + label: 'Code' + token_share: 0.52 + usage_share: 0.45 + window_days: 7 schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': + $ref: '#/components/schemas/TaskClassificationResponse' + description: 'Task classification market-share data for the requested trailing window.' + '400': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '429': content: application/json: @@ -40367,74 +36752,71 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '503': - content: - application/json: - example: - error: - code: 503 - message: 'Service temporarily unavailable' - schema: - $ref: '#/components/schemas/ServiceUnavailableResponse' - description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Delete a file' + summary: 'Task classification market share' tags: - - 'Files' - x-speakeasy-name-override: 'delete' + - 'Classifications' + /containers/{container_id}/files: get: - description: 'Retrieves metadata for a single file owned by the requesting workspace.' - operationId: 'getFileMetadata' + description: 'Lists the files in a container, in lexicographic path order. The container id is the canonical id returned in bash/shell tool results; a restarted session is a separate container with its own id. Paginate with `limit` and `after` (pass the previous page’s `last_id`); `has_more: true` always means the next page is fetchable that way. `last_id` is the resume cursor: it is the last listed file’s id, except when a page ends at the per-request scan bound on hidden bookkeeping objects, where it names the scan position instead and may not appear in `data` (which can then be empty).' + operationId: 'listContainerFiles' parameters: - - in: 'path' - name: 'file_id' + - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + in: 'path' + name: 'container_id' required: true schema: - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - maxLength: 256 - minLength: 1 - pattern: '^[\w-]+$' + description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + example: 'sess_abc123' type: 'string' - - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + - description: 'Maximum number of files to return (1-1000). Defaults to 100 when absent.' in: 'query' - name: 'workspace_id' + name: 'limit' required: false schema: - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' - format: 'uuid' - type: 'string' - - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' - example: 'openai' + default: 100 + description: 'Maximum number of files to return (1-1000). Defaults to 100 when absent.' + example: 100 + maximum: 1000 + minimum: 1 + type: 'integer' + - description: 'Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted.' in: 'query' - name: 'provider' + name: 'after' required: false schema: - $ref: '#/components/schemas/FileProvider' + description: 'Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted.' + example: 'cfile_b3V0L3JlcG9ydC5jc3Y' + type: 'string' responses: '200': content: application/json: example: - created_at: '2025-01-01T00:00:00Z' - downloadable: false - filename: 'document.pdf' - id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - mime_type: 'application/pdf' - size_bytes: 1024000 - type: 'file' + data: + - bytes: 123 + container_id: 'sess_abc123' + created_at: 1755640000 + id: 'cfile_b3V0L3JlcG9ydC5jc3Y' + object: 'container.file' + path: 'out/report.csv' + source: 'assistant' + first_id: 'cfile_b3V0L3JlcG9ydC5jc3Y' + has_more: false + last_id: 'cfile_b3V0L3JlcG9ydC5jc3Y' + object: 'list' schema: - $ref: '#/components/schemas/FileResponse' - description: 'The file metadata.' + $ref: '#/components/schemas/ContainerFileListResponse' + description: 'The files in the container.' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' + schema: + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: @@ -40455,16 +36837,6 @@ paths: schema: $ref: '#/components/schemas/ForbiddenResponse' description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' '429': content: application/json: @@ -40485,16 +36857,6 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' '503': content: application/json: @@ -40505,49 +36867,45 @@ paths: schema: $ref: '#/components/schemas/ServiceUnavailableResponse' description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Get file metadata' + summary: 'List container files' tags: - - 'Files' - x-speakeasy-name-override: 'retrieve' - /files/{file_id}/content: + - 'Containers' + /containers/{container_id}/files/{file_id}: get: - description: 'Downloads the raw bytes of a file. Only files created server-side are downloadable; uploaded files return 400.' - operationId: 'downloadFileContent' + description: 'Returns the metadata of a single file in a container.' + operationId: 'getContainerFile' parameters: - - in: 'path' - name: 'file_id' + - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + in: 'path' + name: 'container_id' required: true schema: - example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' - maxLength: 256 - minLength: 1 - pattern: '^[\w-]+$' + description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + example: 'sess_abc123' type: 'string' - - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - in: 'query' - name: 'workspace_id' - required: false + - description: 'Container file id (`cfile_` + base64url of the file path).' + in: 'path' + name: 'file_id' + required: true schema: - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' - example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' - format: 'uuid' + description: 'Container file id (`cfile_` + base64url of the file path).' + example: 'cfile_b3V0L3JlcG9ydC5jc3Y' type: 'string' - - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' - example: 'openai' - in: 'query' - name: 'provider' - required: false - schema: - $ref: '#/components/schemas/FileProvider' responses: '200': content: - application/octet-stream: - example: 'binary file contents' + application/json: + example: + bytes: 123 + container_id: 'sess_abc123' + created_at: 1755640000 + id: 'cfile_b3V0L3JlcG9ydC5jc3Y' + object: 'container.file' + path: 'out/report.csv' + source: 'assistant' schema: - format: 'binary' - type: 'string' - description: 'The raw file content.' + $ref: '#/components/schemas/ContainerFile' + description: 'The container file.' '400': content: application/json: @@ -40608,16 +36966,6 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' '503': content: application/json: @@ -40628,76 +36976,39 @@ paths: schema: $ref: '#/components/schemas/ServiceUnavailableResponse' description: 'Service Unavailable - Service temporarily unavailable' - summary: 'Download file content' + summary: 'Retrieve a container file' tags: - - 'Files' - x-speakeasy-name-override: 'download' - /generation: + - 'Containers' + /containers/{container_id}/files/{file_id}/content: get: - operationId: 'getGeneration' + description: 'Streams the raw bytes of a file in a container.' + operationId: 'downloadContainerFileContent' parameters: - - description: 'The generation ID' - in: 'query' - name: 'id' + - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + in: 'path' + name: 'container_id' required: true schema: - description: 'The generation ID' - example: 'gen-1234567890' - maxLength: 128 - pattern: '^gen-[0-9A-Za-z-]+$' + description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + example: 'sess_abc123' + type: 'string' + - description: 'Container file id (`cfile_` + base64url of the file path).' + in: 'path' + name: 'file_id' + required: true + schema: + description: 'Container file id (`cfile_` + base64url of the file path).' + example: 'cfile_b3V0L3JlcG9ydC5jc3Y' type: 'string' responses: '200': content: - application/json: - example: - data: - api_type: 'completions' - app_id: 12345 - cache_discount: null - cancelled: false - created_at: '2024-07-15T23:33:19.433273+00:00' - data_region: 'global' - external_user: 'user-123' - finish_reason: 'stop' - generation_time: 1200 - http_referer: 'https://openrouter.ai/' - id: 'gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG' - is_byok: false - latency: 1250 - model: 'sao10k/l3-stheno-8b' - moderation_latency: 50 - native_finish_reason: 'stop' - native_tokens_cached: 3 - native_tokens_completion: 25 - native_tokens_completion_images: 0 - native_tokens_prompt: 10 - native_tokens_reasoning: 5 - num_fetches: 0 - num_input_audio_prompt: 0 - num_media_completion: 0 - num_media_prompt: 1 - num_search_results: 5 - origin: 'https://openrouter.ai/' - preset_id: 'a9e8d400-592a-494f-908c-375efa66cafd' - provider_name: 'Infermatic' - provider_responses: null - request_id: 'req-1727282430-aBcDeFgHiJkLmNoPqRsT' - router: 'openrouter/auto' - service_tier: 'priority' - session_id: null - streamed: true - tokens_completion: 25 - tokens_prompt: 10 - total_cost: 0.0015 - upstream_id: 'chatcmpl-791bcf62-080e-4568-87d0-94c72e3b4946' - upstream_inference_cost: 0.0012 - usage: 0.0015 - user_agent: 'Mozilla/5.0' - web_search_engine: 'exa' + application/octet-stream: + example: 'binary file contents' schema: - $ref: '#/components/schemas/GenerationResponse' - description: 'Returns the request metadata for this generation' + format: 'binary' + type: 'string' + description: 'The raw file content.' '400': content: application/json: @@ -40718,26 +37029,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: example: error: code: 403 - message: 'Management key does not have permission for this request' + message: 'Only management keys can perform this operation' schema: $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - The management key does not have permission for this request' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -40768,70 +37069,56 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - '502': - content: - application/json: - example: - error: - code: 502 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': + '503': content: application/json: example: error: - code: 529 - message: 'Provider returned error' + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Get request & usage metadata for a generation' + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Download container file content' tags: - - 'Generations' - /generation/content: - get: - operationId: 'listGenerationContent' + - 'Containers' + /containers/{container_id}/files/{file_id}/promote: + post: + description: 'Copies a file from the container''s sandbox prefix into the workspace''s durable document storage, so it outlives the container. Returns the new document in the Files API shape, with a durable file id in the documents namespace. The copy counts against the workspace''s storage quota. Unlike a direct upload, promoted files are downloadable.' + operationId: 'promoteContainerFile' parameters: - - description: 'The generation ID' - in: 'query' - name: 'id' + - description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + in: 'path' + name: 'container_id' required: true schema: - description: 'The generation ID' - example: 'gen-1234567890' - maxLength: 128 - pattern: '^gen-[0-9A-Za-z-]+$' + description: 'The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent.' + example: 'sess_abc123' + type: 'string' + - description: 'Container file id (`cfile_` + base64url of the file path).' + in: 'path' + name: 'file_id' + required: true + schema: + description: 'Container file id (`cfile_` + base64url of the file path).' + example: 'cfile_b3V0L3JlcG9ydC5jc3Y' type: 'string' responses: '200': content: application/json: example: - data: - error: null - input: - messages: - - content: 'What is the meaning of life?' - role: 'user' - output: - completion: 'The meaning of life is a philosophical question...' - reasoning: null + _shape: 'openrouter' + created_at: '2026-08-23T00:00:00Z' + downloadable: true + filename: 'out/report.csv' + id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + mime_type: 'text/csv' + size_bytes: 123 + type: 'file' schema: - $ref: '#/components/schemas/GenerationContentResponse' - description: 'Returns the stored prompt and completion content, plus the failure error when the generation failed' + $ref: '#/components/schemas/FileResponse' + description: 'The promoted file, as a workspace document.' '400': content: application/json: @@ -40872,93 +37159,101 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' - '429': + '413': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 413 + message: 'Request payload too large' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' - '500': + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' + '429': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - '502': + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '499': content: application/json: example: error: - code: 502 - message: 'Provider returned error' + code: 499 + message: 'The request was cancelled.' schema: - $ref: '#/components/schemas/BadGatewayResponse' - description: 'Bad Gateway - Provider/upstream API failure' - '524': + $ref: '#/components/schemas/ClientClosedRequestResponse' + description: 'Client Closed Request - The caller cancelled the request' + '500': content: application/json: example: error: - code: 524 - message: 'Request timed out. Please try again later.' + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '503': content: application/json: example: error: - code: 529 - message: 'Provider returned error' + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Get stored prompt, completion, and error content for a generation' + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Promote a container file into workspace documents' tags: - - 'Generations' - /generation/feedback: - post: - description: 'Submit structured feedback on a generation the authenticated user made. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'submitGenerationFeedback' - requestBody: - content: - application/json: - example: - category: 'incorrect_response' - comment: 'The model repeated the same paragraph three times.' - generation_id: 'gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG' - schema: - $ref: '#/components/schemas/SubmitGenerationFeedbackRequest' - required: true + - 'Containers' + /credits: + get: + description: 'Get total credits purchased and used for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getCredits' responses: '200': content: application/json: example: data: - success: true - schema: - $ref: '#/components/schemas/SubmitGenerationFeedbackResponse' - description: 'Feedback recorded successfully' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid request parameters' + total_credits: 100.5 + total_usage: 25.75 schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' + description: 'Total credits purchased and used' + example: + data: + total_credits: 100.5 + total_usage: 25.75 + properties: + data: + example: + total_credits: 100.5 + total_usage: 25.75 + properties: + total_credits: + description: 'Total credits purchased' + example: 100.5 + format: 'double' + type: 'number' + total_usage: + description: 'Total credits used' + example: 25.75 + format: 'double' + type: 'number' + required: + - 'total_credits' + - 'total_usage' + type: 'object' + required: + - 'data' + type: 'object' + description: 'Returns the total credits purchased and used' '401': content: application/json: @@ -40969,36 +37264,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '409': - content: - application/json: - example: - error: - code: 409 - message: 'Feedback was already submitted for this generation' - schema: - $ref: '#/components/schemas/ConflictResponse' - description: 'Conflict - Feedback was already submitted for this generation by this account. The first submission is kept.' - '429': + '403': content: application/json: example: error: - code: 429 - message: 'Rate limit exceeded' + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/TooManyRequestsResponse' - description: 'Too Many Requests - Rate limit exceeded' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '500': content: application/json: @@ -41009,74 +37284,158 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Submit feedback for a generation' + summary: 'Get remaining credits' tags: - - 'Generations' - x-speakeasy-name-override: 'submitFeedback' - /guardrails: + - 'Credits' + x-speakeasy-name-override: 'getCredits' + /credits/coinbase: + post: + deprecated: true + description: 'Deprecated. The Coinbase APIs used by this endpoint have been deprecated, so Coinbase Commerce charges have been removed. Use the web credits purchase flow instead.' + operationId: 'createCoinbaseCharge' + responses: + '200': + description: 'This endpoint is deprecated and will never return a 200 response.' + '410': + content: + application/json: + example: + error: + code: 410 + message: 'The Coinbase APIs used by this endpoint have been deprecated, so the Coinbase Commerce credits API has been removed. Use the web credits purchase flow instead.' + schema: + $ref: '#/components/schemas/GoneResponse' + description: 'Gone - Endpoint has been permanently removed or deprecated' + security: [] + summary: 'Deprecated Coinbase Commerce charge endpoint' + tags: + - 'Credits' + x-fern-ignore: true + x-speakeasy-ignore: true + x-speakeasy-name-override: 'createCoinbaseCharge' + /datasets/app-rankings: get: - description: 'List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listGuardrails' + description: "Returns the top public apps on OpenRouter ranked by token usage inside the requested\ndate window, matching the public apps marketplace on openrouter.ai/apps. Token totals\nare `prompt_tokens + completion_tokens`; hidden and private apps are excluded and\ntraffic from related app aliases is merged into the canonical visible app.\n\n`sort=popular` (default) ranks by total token volume inside the window.\n`sort=trending` ranks by absolute excess token growth: window volume minus the average\nvolume of the three equal-length periods immediately preceding the window. Apps with\nno excess growth are omitted, so `trending` may return fewer than `limit` rows.\n\nFilter with `category` (marketplace category group, e.g. `coding`) or `subcategory`\n(e.g. `cli-agent`). Ranks are re-numbered 1..N after filtering. Page with `offset` —\n`rank` stays absolute, so the first row of `offset=50` is `rank: 51`.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this dataset, OpenRouter must be cited as:\n\"Source: OpenRouter (openrouter.ai/apps), as of {as_of}.\"\n\nToken counts come from each upstream provider's own tokenizer, so a token attributed\nto one app is not directly comparable to a token attributed to another app whose\ntraffic flows through a different provider.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." + operationId: 'getAppRankings' parameters: - - description: 'Number of records to skip for pagination' + - description: 'Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group.' in: 'query' - name: 'offset' + name: 'category' required: false schema: - default: 0 - description: 'Number of records to skip for pagination' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 100)' + description: 'Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group.' + enum: + - 'coding' + - 'creative' + - 'productivity' + - 'entertainment' + example: 'coding' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent.' + in: 'query' + name: 'subcategory' + required: false + schema: + description: 'Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent.' + enum: + - 'cli-agent' + - 'ide-extension' + - 'cloud-agent' + - 'programming-app' + - 'native-app-builder' + - 'creative-writing' + - 'video-gen' + - 'image-gen' + - 'audio-gen' + - 'roleplay' + - 'game' + - 'writing-assistant' + - 'general-chat' + - 'personal-agent' + - 'legal' + example: 'cli-agent' + type: 'string' + x-speakeasy-unknown-values: allow + - description: '`popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results.' + in: 'query' + name: 'sort' + required: false + schema: + default: 'popular' + description: '`popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results.' + enum: + - 'popular' + - 'trending' + example: 'popular' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' + in: 'query' + name: 'start_date' + required: false + schema: + description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' + example: '2026-04-12' + pattern: '^\d{4}-\d{2}-\d{2}$' + type: 'string' + - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' + in: 'query' + name: 'end_date' + required: false + schema: + description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' + example: '2026-05-11' + pattern: '^\d{4}-\d{2}-\d{2}$' + type: 'string' + - description: 'Maximum number of apps to return (1-100). Defaults to 50.' in: 'query' name: 'limit' required: false schema: default: 50 - description: 'Maximum number of records to return (max 100)' + description: 'Maximum number of apps to return (1-100). Defaults to 50.' example: 50 maximum: 100 minimum: 1 type: 'integer' - - description: 'Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned.' + - description: 'Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`.' in: 'query' - name: 'workspace_id' + name: 'offset' required: false schema: - description: 'Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned.' - example: '0df9e665-d932-5740-b2c7-b52af166bc11' - format: 'uuid' - type: 'string' + default: 0 + description: 'Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`.' + example: 0 + maximum: 100 + minimum: 0 + type: + - 'integer' + - 'null' responses: '200': content: application/json: example: data: - - allowed_models: null - allowed_providers: - - 'openai' - - 'anthropic' - - 'google' - created_at: '2025-08-24T10:30:00Z' - description: 'Guardrail for production environment' - enforce_zdr: false - id: '550e8400-e29b-41d4-a716-446655440000' - ignored_models: null - ignored_providers: null - include_byok_in_budgets: false - limit_usd: 100 - name: 'Production Guardrail' - reset_interval: 'monthly' - updated_at: '2025-08-24T15:45:00Z' - workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' - total_count: 1 + - app_id: 12345 + app_name: 'Cline' + rank: 1 + total_requests: 4321 + total_tokens: '12345678' + - app_id: 67890 + app_name: 'Roo Code' + rank: 2 + total_requests: 2109 + total_tokens: '9876543' + meta: + as_of: '2026-05-12T02:00:00Z' + end_date: '2026-05-11' + start_date: '2026-04-12' + version: 'v1' schema: - $ref: '#/components/schemas/ListGuardrailsResponse' - description: 'List of guardrails' + $ref: '#/components/schemas/AppRankingsResponse' + description: 'Apps ranked per the requested `sort`, re-numbered 1..N. `popular` sorts by `total_tokens` descending; `trending` sorts by absolute excess token growth descending and may return fewer than `limit` rows.' '400': content: application/json: @@ -41097,16 +37456,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': + '429': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -41117,10 +37476,9 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List guardrails' + summary: 'Top apps by token usage' tags: - - 'Guardrails' - x-speakeasy-name-override: 'list' + - 'Datasets' x-speakeasy-pagination: inputs: - in: 'parameters' @@ -41132,65 +37490,129 @@ paths: outputs: results: '$.data' type: 'offsetLimit' - post: - description: 'Create a new guardrail for the authenticated user. A newly created guardrail enforces nothing until it is assigned to API keys or organization members; `workspace_id` places the guardrail in a workspace but does not apply it to that workspace''s traffic. To restrict all traffic in a workspace, update the workspace''s default guardrail instead. Set `allowed_data_regions` to enforce [In-Region Routing](/docs/guides/features/in-region-routing#enforcing-in-region-routing-with-guardrails): governed requests must arrive through one of the listed OpenRouter domains and are rejected with a 403 otherwise. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'createGuardrail' - requestBody: - content: - application/json: - example: - allowed_data_regions: - - 'europe' - allowed_models: null - allowed_providers: - - 'openai' - - 'anthropic' - - 'deepseek' - description: 'A guardrail for limiting API usage' - enforce_zdr_anthropic: true - enforce_zdr_google: false - enforce_zdr_openai: true - enforce_zdr_other: false - enforce_zdr_xai: false - ignored_models: null - ignored_providers: null - limit_usd: 50 - name: 'My New Guardrail' - reset_interval: 'monthly' - schema: - $ref: '#/components/schemas/CreateGuardrailRequest' - required: true - responses: - '201': - content: - application/json: - example: - data: - allowed_models: null - allowed_providers: - - 'openai' - - 'anthropic' - - 'google' - created_at: '2025-08-24T10:30:00Z' - description: 'A guardrail for limiting API usage' - enforce_zdr: null - enforce_zdr_anthropic: true - enforce_zdr_google: false - enforce_zdr_openai: true - enforce_zdr_other: false - enforce_zdr_xai: false - id: '550e8400-e29b-41d4-a716-446655440000' - ignored_models: null - ignored_providers: null - include_byok_in_budgets: false - limit_usd: 50 - name: 'My New Guardrail' - reset_interval: 'monthly' - updated_at: null - workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + /datasets/rankings-daily: + get: + description: "Returns the top 50 public models per day by total token usage on OpenRouter, plus a\nsingle aggregated `other` row per day that sums every model outside that top 50.\nToken totals are `prompt_tokens + completion_tokens`, matching the public rankings\nchart on openrouter.ai/rankings.\n\nEach row is a distinct `(date, model_permaslug)` pair. The `other` row uses the\nreserved permaslug `other` and is always returned last within its date, so callers\ncan compute `top-50 traffic / total daily traffic` without a second request.\n\nOptional filters slice the dataset. `period` (`day`/`week`/`month`) sets the time\ngrain. `modality` and `context_bucket` narrow the exact dataset by output/input\nmodality (or tool-calling activity) and request context length. `category` and\n`language_type` instead read a sampled, upsampled dataset whose `total_tokens` are\nweekly-grain estimates — they cannot be combined with each other or with the exact\nfilters, and reject `period=day` with a 400.\n\nAuthenticate with any valid OpenRouter API key (same key used for inference).\nRate-limited to 30 requests/minute per key and 500 requests/day per account.\n\nWhen republishing or quoting this dataset, OpenRouter must be cited as:\n\"Source: OpenRouter (openrouter.ai/rankings), as of {as_of}.\"\n\nToken counts come from each upstream provider's own tokenizer (Anthropic counts\nare as reported by Anthropic, OpenAI counts are as reported by OpenAI, etc.), so\na token in one row is not directly comparable to a token in another row from a\ndifferent provider.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." + operationId: 'getRankingsDaily' + parameters: + - description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' + in: 'query' + name: 'start_date' + required: false + schema: + description: 'Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`.' + example: '2026-04-12' + pattern: '^\d{4}-\d{2}-\d{2}$' + type: 'string' + - description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' + in: 'query' + name: 'end_date' + required: false + schema: + description: 'End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400.' + example: '2026-05-11' + pattern: '^\d{4}-\d{2}-\d{2}$' + type: 'string' + - description: 'Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries.' + in: 'query' + name: 'period' + required: false + schema: + description: 'Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries.' + enum: + - 'day' + - 'week' + - 'month' + example: 'day' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`.' + in: 'query' + name: 'modality' + required: false + schema: + description: 'Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`.' + enum: + - 'text' + - 'image' + - 'image_output' + - 'audio' + - 'tool_calling' + example: 'text' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`.' + in: 'query' + name: 'context_bucket' + required: false + schema: + description: 'Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`.' + enum: + - '1K' + - '10K' + - '100K' + - '1M' + - '10M' + example: '100K' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`.' + in: 'query' + name: 'category' + required: false + schema: + description: 'Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`.' + enum: + - 'programming' + - 'roleplay' + - 'marketing' + - 'marketing/seo' + - 'technology' + - 'science' + - 'translation' + - 'legal' + - 'finance' + - 'health' + - 'trivia' + - 'academia' + example: 'programming' + type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`.' + in: 'query' + name: 'language_type' + required: false + schema: + description: 'Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`.' + enum: + - 'natural' + - 'programming' + example: 'natural' + type: 'string' + x-speakeasy-unknown-values: allow + responses: + '200': + content: + application/json: + example: + data: + - date: '2026-05-11' + model_permaslug: 'openai/gpt-4o-2024-05-13' + total_tokens: '12345678' + - date: '2026-05-11' + model_permaslug: 'anthropic/claude-3.5-sonnet-20241022' + total_tokens: '9876543' + - date: '2026-05-11' + model_permaslug: 'other' + total_tokens: '4321098' + meta: + as_of: '2026-05-12T02:00:00Z' + end_date: '2026-05-11' + start_date: '2026-04-12' + version: 'v1' schema: - $ref: '#/components/schemas/CreateGuardrailResponse' - description: 'Guardrail created successfully' + $ref: '#/components/schemas/RankingsDailyResponse' + description: 'Up to 51 rows per day — the top 50 public models by `total_tokens` plus a single aggregated `other` row covering every model outside that top 50. Sorted by `date` ascending, then by `total_tokens` descending, with `other` pinned last within its date.' '400': content: application/json: @@ -41211,16 +37633,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': + '429': content: application/json: example: error: - code: 403 - message: 'Only management keys can perform this operation' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'The management key does not have permission for this request, the workspace is not owned by this account, or the workspace does not allow a person-name or address sensitive-info filter.' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -41231,116 +37653,97 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Create a guardrail' + summary: 'Daily token totals for top 50 models' tags: - - 'Guardrails' - x-speakeasy-name-override: 'create' - /guardrails/{id}: - delete: - description: 'Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'deleteGuardrail' + - 'Datasets' + /datasets/session-cost: + get: + description: "Returns weekly refreshed, aggregated cost-per-session cells for the published harnesses.\nSessions are never pooled across apps. Medians are of per-session USD spend, and\nprivacy-preserving aggregation never exposes clerk_user_id values or per-session rows.\n\nFilter by `app_slug`, `model`, or `turn_range`. Filtering by `model` alone works across apps\nfor harness-vs-harness comparison at a fixed model. Results refresh weekly and include the source snapshot\nwindow in `meta`.\n\nLicensed under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/): reuse and republish with attribution to OpenRouter." + operationId: 'getSessionCost' parameters: - - description: 'The unique identifier of the guardrail to delete' - in: 'path' - name: 'id' - required: true + - description: 'Filter to one published harness slug.' + in: 'query' + name: 'app_slug' + required: false schema: - description: 'The unique identifier of the guardrail to delete' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' + description: 'Filter to one published harness slug.' + example: 'hermes-agent' + type: 'string' + - description: 'Exact model permaslug filter. Works across all harness apps.' + in: 'query' + name: 'model' + required: false + schema: + description: 'Exact model permaslug filter. Works across all harness apps.' + example: 'anthropic/claude-4.8-opus' + type: 'string' + - description: 'Filter by the inclusive number of turns in a session.' + in: 'query' + name: 'turn_range' + required: false + schema: + description: 'Filter by the inclusive number of turns in a session.' + enum: + - '1-turn' + - '2-9-turns' + - '10-49-turns' + - '50-plus-turns' + example: '10-49-turns' type: 'string' + x-speakeasy-unknown-values: allow + - description: 'Maximum number of cells to return (1-500). Defaults to 100.' + in: 'query' + name: 'limit' + required: false + schema: + default: 100 + description: 'Maximum number of cells to return (1-500). Defaults to 100.' + example: 100 + maximum: 500 + minimum: 1 + type: 'integer' + - description: 'Number of sorted cells to skip (0-5000). Defaults to 0.' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of sorted cells to skip (0-5000). Defaults to 0.' + example: 0 + maximum: 5000 + minimum: 0 + type: + - 'integer' + - 'null' responses: '200': content: application/json: example: - deleted: true - schema: - $ref: '#/components/schemas/DeleteGuardrailResponse' - description: 'Guardrail deleted successfully' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' + data: + - app_name: 'Hermes Agent' + app_slug: 'hermes-agent' + median_session_cost_usd: 1.74 + model_permaslug: 'anthropic/claude-4.8-opus' + turn_range: '10-49-turns' + meta: + as_of: '2026-05-12T02:00:00.000Z' + version: 'v1' + window_days: 30 + window_end_date: '2026-05-11' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '500': + $ref: '#/components/schemas/SessionCostResponse' + description: 'Aggregated cost-per-session cells for the requested filters.' + '400': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'Delete a guardrail' - tags: - - 'Guardrails' - x-speakeasy-name-override: 'delete' - get: - description: 'Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'getGuardrail' - parameters: - - description: 'The unique identifier of the guardrail to retrieve' - in: 'path' - name: 'id' - required: true - schema: - description: 'The unique identifier of the guardrail to retrieve' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - responses: - '200': - content: - application/json: - example: - data: - allowed_models: null - allowed_providers: - - 'openai' - - 'anthropic' - - 'google' - created_at: '2025-08-24T10:30:00Z' - description: 'Guardrail for production environment' - enforce_zdr: false - id: '550e8400-e29b-41d4-a716-446655440000' - ignored_models: null - ignored_providers: null - include_byok_in_budgets: false - limit_usd: 100 - name: 'Production Guardrail' - reset_interval: 'monthly' - updated_at: '2025-08-24T15:45:00Z' - workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/GetGuardrailResponse' - description: 'Guardrail details' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: @@ -41351,26 +37754,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + '429': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Guardrail not found, or the workspace default guardrail has not been configured yet.' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -41381,63 +37774,271 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Get a guardrail' + summary: 'Cost per session by harness and model' tags: - - 'Guardrails' - x-speakeasy-name-override: 'get' - patch: - description: 'Update an existing guardrail, or materialize an unconfigured workspace default guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'updateGuardrail' - parameters: - - description: 'The unique identifier of the guardrail to update' - in: 'path' - name: 'id' - required: true - schema: - description: 'The unique identifier of the guardrail to update' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' + - 'Datasets' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + /embeddings: + post: + description: 'Submits an embedding request to the embeddings router' + operationId: 'createEmbeddings' requestBody: content: application/json: - example: - description: 'Updated description' - limit_usd: 75 - name: 'Updated Guardrail Name' - reset_interval: 'weekly' schema: - $ref: '#/components/schemas/UpdateGuardrailRequest' + description: 'Embeddings request input' + example: + dimensions: 1536 + input: 'The quick brown fox jumps over the lazy dog' + model: 'openai/text-embedding-3-small' + properties: + dimensions: + description: 'The number of dimensions for the output embeddings' + example: 1536 + minimum: 1 + type: 'integer' + encoding_format: + description: 'The format of the output embeddings' + enum: + - 'float' + - 'base64' + example: 'float' + type: 'string' + x-speakeasy-unknown-values: allow + input: + anyOf: + - minLength: 1 + type: 'string' + - items: + minLength: 1 + type: 'string' + type: 'array' + - items: + type: 'number' + type: 'array' + - items: + items: + type: 'number' + type: 'array' + type: 'array' + - items: + properties: + content: + items: + oneOf: + - properties: + text: + minLength: 1 + type: 'string' + type: + enum: + - 'text' + type: 'string' + required: + - 'type' + - 'text' + type: 'object' + - properties: + image_url: + properties: + url: + type: 'string' + required: + - 'url' + type: 'object' + type: + enum: + - 'image_url' + type: 'string' + required: + - 'type' + - 'image_url' + type: 'object' + - $ref: '#/components/schemas/ContentPartInputAudio' + - $ref: '#/components/schemas/ContentPartInputVideo' + - $ref: '#/components/schemas/ContentPartInputFile' + minItems: 1 + type: 'array' + required: + - 'content' + type: 'object' + type: 'array' + description: 'Text, token, or multimodal input(s) to embed' + example: 'The quick brown fox jumps over the lazy dog' + input_type: + description: 'The type of input (e.g. search_query, search_document)' + example: 'search_query' + type: 'string' + model: + description: 'The model to use for embeddings' + example: 'openai/text-embedding-3-small' + type: 'string' + provider: + allOf: + - $ref: '#/components/schemas/ProviderPreferences' + - description: 'Provider routing preferences for the request.' + session_id: + description: 'A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters.' + example: 'session-1234' + maxLength: 256 + type: 'string' + trace: + $ref: '#/components/schemas/TraceConfig' + user: + description: 'A unique identifier for the end-user' + example: 'user-1234' + type: 'string' + required: + - 'input' + - 'model' + type: 'object' required: true responses: '200': content: application/json: - example: - data: - allowed_models: null - allowed_providers: - - 'openai' - created_at: '2025-08-24T10:30:00Z' - description: 'Updated description' - enforce_zdr: null - enforce_zdr_anthropic: true - enforce_zdr_google: true - enforce_zdr_openai: true - enforce_zdr_other: true - enforce_zdr_xai: true - id: '550e8400-e29b-41d4-a716-446655440000' - ignored_models: null - ignored_providers: null - include_byok_in_budgets: true - limit_usd: 75 - name: 'Updated Guardrail Name' - reset_interval: 'weekly' - updated_at: '2025-08-24T16:00:00Z' - workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' schema: - $ref: '#/components/schemas/UpdateGuardrailResponse' - description: 'Guardrail updated successfully' + description: 'Embeddings response containing embedding vectors' + example: + data: + - embedding: + - 0.0023064255 + - -0.009327292 + - 0.015797347 + index: 0 + object: 'embedding' + model: 'openai/text-embedding-3-small' + object: 'list' + usage: + prompt_tokens: 8 + total_tokens: 8 + properties: + data: + description: 'List of embedding objects' + example: + - embedding: + - 0.0023064255 + - -0.009327292 + - 0.015797347 + index: 0 + object: 'embedding' + items: + description: 'A single embedding object' + example: + embedding: + - 0.0023064255 + - -0.009327292 + - 0.015797347 + index: 0 + object: 'embedding' + properties: + embedding: + anyOf: + - items: + type: 'number' + type: 'array' + - type: 'string' + description: 'Embedding vector as an array of floats or a base64 string' + example: + - 0.0023064255 + - -0.009327292 + - 0.015797347 + index: + description: 'Index of the embedding in the input list' + example: 0 + type: 'integer' + object: + enum: + - 'embedding' + type: 'string' + required: + - 'object' + - 'embedding' + type: 'object' + type: 'array' + id: + description: 'Unique identifier for the embeddings response' + example: 'embd-1234567890' + type: 'string' + model: + description: 'The model used for embeddings' + example: 'openai/text-embedding-3-small' + type: 'string' + object: + enum: + - 'list' + type: 'string' + usage: + description: 'Token usage statistics' + example: + prompt_tokens: 8 + total_tokens: 8 + properties: + cost: + description: 'Cost of the request in credits' + example: 0.0001 + format: 'double' + type: 'number' + cost_details: + $ref: '#/components/schemas/CostDetails' + is_byok: + description: 'Whether a request was made using a Bring Your Own Key configuration' + type: 'boolean' + prompt_tokens: + description: 'Number of tokens in the input' + example: 8 + type: 'integer' + prompt_tokens_details: + description: 'Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included.' + properties: + audio_tokens: + description: 'Number of audio tokens in the input' + type: 'integer' + file_tokens: + description: 'Number of file/document tokens in the input' + type: 'integer' + image_tokens: + description: 'Number of image tokens in the input' + example: 258 + type: 'integer' + text_tokens: + description: 'Number of text tokens in the input' + example: 8 + type: 'integer' + video_tokens: + description: 'Number of video tokens in the input' + type: 'integer' + type: 'object' + total_tokens: + description: 'Total number of tokens used' + example: 8 + type: 'integer' + required: + - 'prompt_tokens' + - 'total_tokens' + type: 'object' + required: + - 'object' + - 'data' + - 'model' + type: 'object' + text/event-stream: + example: 'data: [DONE]' + schema: + description: 'Not used for embeddings - embeddings do not support streaming' + type: 'string' + x-speakeasy-sse-sentinel: '[DONE]' + description: 'Embedding response' '400': content: application/json: @@ -41447,7 +38048,7 @@ paths: message: 'Invalid request parameters' schema: $ref: '#/components/schemas/BadRequestResponse' - description: 'Invalid request, or an attempt to change a workspace default guardrail''s name (which is derived from its workspace and not editable; sending the current name unchanged is accepted).' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: @@ -41458,6 +38059,16 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' + '402': + content: + application/json: + example: + error: + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' + schema: + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: @@ -41467,7 +38078,7 @@ paths: message: 'Only management keys can perform this operation' schema: $ref: '#/components/schemas/ForbiddenResponse' - description: 'The management key does not have permission for this request, or the update would add a person-name or address sensitive-info filter to a workspace that does not allow it.' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -41478,16 +38089,46 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' - '409': + '408': content: application/json: example: error: - code: 409 - message: 'Resource conflict. Please try again later.' + code: 408 + message: 'Operation timed out. Please try again later.' schema: - $ref: '#/components/schemas/ConflictResponse' - description: 'Guardrail name conflict — another guardrail in this workspace already uses the requested name.' + $ref: '#/components/schemas/RequestTimeoutResponse' + description: 'Request Timeout - Operation exceeded time limit' + '413': + content: + application/json: + example: + error: + code: 413 + message: 'Request payload too large' + schema: + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' + '429': + content: + application/json: + example: + error: + code: 429 + message: 'Rate limit exceeded' + schema: + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '499': + content: + application/json: + example: + error: + code: 499 + message: 'The request was cancelled.' + schema: + $ref: '#/components/schemas/ClientClosedRequestResponse' + description: 'Client Closed Request - The caller cancelled the request' '500': content: application/json: @@ -41498,45 +38139,86 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Update a guardrail' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': + content: + application/json: + example: + error: + code: 503 + message: 'Service temporarily unavailable' + schema: + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + '504': + content: + application/json: + example: + error: + code: 504 + message: 'The operation was aborted due to timeout' + schema: + $ref: '#/components/schemas/GatewayTimeoutResponse' + description: 'Gateway Timeout - Provider did not respond before the upstream deadline' + '524': + content: + application/json: + example: + error: + code: 524 + message: 'Request timed out. Please try again later.' + schema: + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': + content: + application/json: + example: + error: + code: 529 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Submit an embedding request' tags: - - 'Guardrails' - x-speakeasy-name-override: 'update' - /guardrails/{id}/assignments/keys: + - 'Embeddings' + x-speakeasy-name-override: 'generate' + /embeddings/models: get: - description: 'List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listGuardrailKeyAssignments' + description: 'Returns a list of all available embeddings models and their properties' + operationId: 'listEmbeddingsModels' parameters: - - description: 'The unique identifier of the guardrail' - in: 'path' - name: 'id' - required: true - schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' - - description: 'Number of records to skip for pagination' + - description: 'Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned' in: 'query' name: 'offset' required: false schema: default: 0 - description: 'Number of records to skip for pagination' + description: 'Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned' example: 0 minimum: 0 type: - 'integer' - 'null' - - description: 'Maximum number of records to return (max 100)' + - description: 'Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned' in: 'query' name: 'limit' required: false schema: - default: 50 - description: 'Maximum number of records to return (max 100)' - example: 50 - maximum: 100 + default: 500 + description: 'Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned' + example: 500 + maximum: 1000 minimum: 1 type: 'integer' responses: @@ -41545,47 +38227,50 @@ paths: application/json: example: data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' - key_label: 'prod-key' - key_name: 'Production Key' - total_count: 1 - schema: - $ref: '#/components/schemas/ListKeyAssignmentsResponse' - description: 'List of key assignments' - '401': - content: - application/json: - example: - error: - code: 401 - message: 'Missing Authentication header' - schema: - $ref: '#/components/schemas/UnauthorizedResponse' - description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' + - architecture: + input_modalities: + - 'text' + instruct_type: null + modality: 'text->embeddings' + output_modalities: + - 'embeddings' + tokenizer: 'GPT' + canonical_slug: 'openai/text-embedding-3-small' + context_length: 8192 + created: 1692901234 + default_parameters: null + description: 'OpenAI text embedding model optimized for performance.' + expiration_date: null + id: 'openai/text-embedding-3-small' + knowledge_cutoff: null + links: + details: '/api/v1/models/openai/text-embedding-3-small/endpoints' + name: 'Text Embedding 3 Small' + per_request_limits: null + pricing: + completion: '0' + image: '0' + prompt: '0.00000002' + request: '0' + supported_parameters: [] + supported_voices: null + top_provider: + context_length: 8192 + is_moderated: false + max_completion_tokens: null schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + $ref: '#/components/schemas/ModelsListResponse' + description: 'Returns a list of embeddings models' + '400': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '500': content: application/json: @@ -41596,10 +38281,10 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List key assignments for a guardrail' + summary: 'List all embeddings models' tags: - - 'Guardrails' - x-speakeasy-name-override: 'listGuardrailKeyAssignments' + - 'Embeddings' + x-speakeasy-name-override: 'listModels' x-speakeasy-pagination: inputs: - in: 'parameters' @@ -41611,37 +38296,189 @@ paths: outputs: results: '$.data' type: 'offsetLimit' - post: - description: 'Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'bulkAssignKeysToGuardrail' + /endpoints/zdr: + get: + operationId: 'listEndpointsZdr' + responses: + '200': + content: + application/json: + example: + data: + - context_length: 8192 + latency_last_30m: + p50: 0.25 + p75: 0.35 + p90: 0.48 + p99: 0.85 + max_completion_tokens: 4096 + max_prompt_tokens: 8192 + model_id: 'openai/gpt-4' + model_name: 'GPT-4' + name: 'OpenAI: GPT-4' + native_tools: {} + pricing: + completion: '0.00006' + image: '0' + prompt: '0.00003' + request: '0' + provider_name: 'OpenAI' + quantization: 'fp16' + status: 0 + supported_parameters: + - 'temperature' + - 'top_p' + - 'max_tokens' + supports_diarization: false + supports_image_reference: false + supports_implicit_caching: true + supports_multiple_audio_references: false + supports_voice_cloning: false + tag: 'openai' + throughput_last_30m: + p50: 45.2 + p75: 38.5 + p90: 28.3 + p99: 15.1 + uptime_last_1d: 99.8 + uptime_last_30m: 99.5 + uptime_last_5m: 100 + schema: + example: + data: + - context_length: 8192 + latency_last_30m: + p50: 0.25 + p75: 0.35 + p90: 0.48 + p99: 0.85 + max_completion_tokens: 4096 + max_prompt_tokens: 8192 + model_id: 'openai/gpt-4' + model_name: 'GPT-4' + name: 'OpenAI: GPT-4' + native_tools: {} + pricing: + completion: '0.00006' + image: '0' + prompt: '0.00003' + request: '0' + provider_name: 'OpenAI' + quantization: 'fp16' + status: 0 + supported_parameters: + - 'temperature' + - 'top_p' + - 'max_tokens' + supports_diarization: false + supports_image_reference: false + supports_implicit_caching: true + supports_multiple_audio_references: false + supports_voice_cloning: false + tag: 'openai' + throughput_last_30m: + p50: 45.2 + p75: 38.5 + p90: 28.3 + p99: 15.1 + uptime_last_1d: 99.8 + uptime_last_30m: 99.5 + uptime_last_5m: 100 + properties: + data: + items: + $ref: '#/components/schemas/PublicEndpoint' + type: 'array' + required: + - 'data' + type: 'object' + description: 'Returns a list of endpoints' + '403': + content: + application/json: + example: + error: + code: 403 + message: 'Only management keys can perform this operation' + schema: + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '500': + content: + application/json: + example: + error: + code: 500 + message: 'Internal Server Error' + schema: + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Preview the impact of ZDR on the available endpoints' + tags: + - 'Endpoints' + x-speakeasy-name-override: 'listZdrEndpoints' + /external-users: + get: + description: 'List registrations belonging to the authenticated organization. Inactive registrations are excluded by default. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listExternalUsers' parameters: - - description: 'The unique identifier of the guardrail' - in: 'path' - name: 'id' - required: true + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + in: 'query' + name: 'user' + required: false + schema: + description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + example: 'employee_123' + maxLength: 512 + minLength: 1 + pattern: '^[^\u0000]+$' type: 'string' - requestBody: - content: - application/json: - example: - key_hashes: - - 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' - schema: - $ref: '#/components/schemas/BulkAssignKeysRequest' - required: true + - description: 'Include deactivated registrations.' + in: 'query' + name: 'include_inactive' + required: false + schema: + default: false + description: 'Include deactivated registrations.' + example: false + type: 'boolean' responses: '200': content: application/json: example: - assigned_count: 3 + data: + - created_at: '2026-09-16T12:00:00Z' + is_active: true + updated_at: '2026-09-16T12:00:00Z' + user: 'employee_123' + total_count: 1 schema: - $ref: '#/components/schemas/BulkAssignKeysResponse' - description: 'Assignment result' + $ref: '#/components/schemas/ListExternalUsersResponse' + description: 'Matching registrations and their total count.' '400': content: application/json: @@ -41671,7 +38508,7 @@ paths: message: 'Only management keys can perform this operation' schema: $ref: '#/components/schemas/ForbiddenResponse' - description: 'The management key does not have permission for this request, or the guardrail has no workspace and carries a person-name or address sensitive-info filter, and at least one target key belongs to a workspace that does not allow that filter.' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -41692,42 +38529,46 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Bulk assign keys to a guardrail' + summary: 'List registered external users' tags: - - 'Guardrails' - x-speakeasy-name-override: 'bulkAssignKeys' - /guardrails/{id}/assignments/keys/remove: + - 'External Users' + x-speakeasy-group: 'externalUsers' + x-speakeasy-name-override: 'list' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' post: - description: 'Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'bulkUnassignKeysFromGuardrail' - parameters: - - description: 'The unique identifier of the guardrail' - in: 'path' - name: 'id' - required: true - schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' - type: 'string' + description: 'Register a caller-supplied tracking ID under the authenticated organization. No login account, policy, or credentials are created. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'createExternalUser' requestBody: content: application/json: example: - key_hashes: - - 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + user: 'employee_123' schema: - $ref: '#/components/schemas/BulkUnassignKeysRequest' + $ref: '#/components/schemas/CreateExternalUserRequest' required: true responses: - '200': + '201': content: application/json: example: - unassigned_count: 3 + data: + created_at: '2026-09-16T12:00:00Z' + is_active: true + updated_at: '2026-09-16T12:00:00Z' + user: 'employee_123' schema: - $ref: '#/components/schemas/BulkUnassignKeysResponse' - description: 'Unassignment result' + $ref: '#/components/schemas/ExternalUserResponse' + description: 'The registered external user. No generated public identifier is returned.' '400': content: application/json: @@ -41748,16 +38589,6 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -41768,6 +38599,16 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' + '409': + content: + application/json: + example: + error: + code: 409 + message: 'This tracking ID is already registered' + schema: + $ref: '#/components/schemas/ConflictResponse' + description: 'The tracking ID is already registered in this organization, active or not.' '500': content: application/json: @@ -41778,63 +38619,40 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Bulk unassign keys from a guardrail' + summary: 'Register an external user' tags: - - 'Guardrails' - x-speakeasy-name-override: 'bulkUnassignKeys' - /guardrails/{id}/assignments/members: - get: - description: 'List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listGuardrailMemberAssignments' + - 'External Users' + x-speakeasy-group: 'externalUsers' + x-speakeasy-name-override: 'create' + /external-users/{user}: + delete: + description: 'Soft-deactivate a registration while retaining its tracking ID. Repeat deactivation succeeds. This does not block inference; reactivate through PATCH. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'deleteExternalUser' parameters: - - description: 'The unique identifier of the guardrail' + - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' in: 'path' - name: 'id' + name: 'user' required: true schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' + description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + example: 'employee_123' + maxLength: 512 + minLength: 1 + pattern: '^[^\u0000]+$' type: 'string' - - description: 'Number of records to skip for pagination' - in: 'query' - name: 'offset' - required: false - schema: - default: 0 - description: 'Number of records to skip for pagination' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 100)' - in: 'query' - name: 'limit' - required: false - schema: - default: 50 - description: 'Maximum number of records to return (max 100)' - example: 50 - maximum: 100 - minimum: 1 - type: 'integer' responses: - '200': + '204': + description: 'Registration is inactive.' + '400': content: application/json: example: - data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - organization_id: 'org_xyz789' - user_id: 'user_abc123' - total_count: 1 + error: + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/ListMemberAssignmentsResponse' - description: 'List of member assignments' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: @@ -41845,16 +38663,6 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -41875,53 +38683,39 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List member assignments for a guardrail' + summary: 'Deactivate a registered external user' tags: - - 'Guardrails' - x-speakeasy-name-override: 'listGuardrailMemberAssignments' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - post: - description: 'Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'bulkAssignMembersToGuardrail' + - 'External Users' + x-speakeasy-group: 'externalUsers' + x-speakeasy-name-override: 'delete' + get: + description: 'Retrieve an active or inactive registration by its URL-encoded, caller-supplied tracking ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getExternalUser' parameters: - - description: 'The unique identifier of the guardrail' + - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' in: 'path' - name: 'id' + name: 'user' required: true schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' + description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + example: 'employee_123' + maxLength: 512 + minLength: 1 + pattern: '^[^\u0000]+$' type: 'string' - requestBody: - content: - application/json: - example: - member_user_ids: - - 'user_abc123' - - 'user_def456' - schema: - $ref: '#/components/schemas/BulkAssignMembersRequest' - required: true responses: '200': content: application/json: example: - assigned_count: 2 + data: + created_at: '2026-09-16T12:00:00Z' + is_active: true + updated_at: '2026-09-16T12:00:00Z' + user: 'employee_123' schema: - $ref: '#/components/schemas/BulkAssignMembersResponse' - description: 'Assignment result' + $ref: '#/components/schemas/ExternalUserResponse' + description: 'The registered external user. No generated public identifier is returned.' '400': content: application/json: @@ -41972,43 +38766,47 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Bulk assign members to a guardrail' + summary: 'Get a registered external user' tags: - - 'Guardrails' - x-speakeasy-name-override: 'bulkAssignMembers' - /guardrails/{id}/assignments/members/remove: - post: - description: 'Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'bulkUnassignMembersFromGuardrail' + - 'External Users' + x-speakeasy-group: 'externalUsers' + x-speakeasy-name-override: 'get' + patch: + description: 'Update registration state without changing identity. State changes do not enforce inference access. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'updateExternalUser' parameters: - - description: 'The unique identifier of the guardrail' + - description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' in: 'path' - name: 'id' + name: 'user' required: true schema: - description: 'The unique identifier of the guardrail' - example: '550e8400-e29b-41d4-a716-446655440000' - format: 'uuid' + description: 'Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter.' + example: 'employee_123' + maxLength: 512 + minLength: 1 + pattern: '^[^\u0000]+$' type: 'string' requestBody: content: application/json: example: - member_user_ids: - - 'user_abc123' - - 'user_def456' + is_active: true schema: - $ref: '#/components/schemas/BulkUnassignMembersRequest' + $ref: '#/components/schemas/UpdateExternalUserRequest' required: true responses: '200': content: application/json: example: - unassigned_count: 2 + data: + created_at: '2026-09-16T12:00:00Z' + is_active: true + updated_at: '2026-09-16T12:00:00Z' + user: 'employee_123' schema: - $ref: '#/components/schemas/BulkUnassignMembersResponse' - description: 'Unassignment result' + $ref: '#/components/schemas/ExternalUserResponse' + description: 'The registered external user. No generated public identifier is returned.' '400': content: application/json: @@ -42029,16 +38827,6 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Only management keys can perform this operation' - schema: - $ref: '#/components/schemas/ForbiddenResponse' - description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: @@ -42059,55 +38847,106 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'Bulk unassign members from a guardrail' + summary: 'Update a registered external user' tags: - - 'Guardrails' - x-speakeasy-name-override: 'bulkUnassignMembers' - /guardrails/assignments/keys: + - 'External Users' + x-speakeasy-group: 'externalUsers' + x-speakeasy-name-override: 'update' + /files: get: - description: 'List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listKeyAssignments' + description: 'Lists files belonging to the workspace of the authenticating API key.' + operationId: 'listFiles' parameters: - - description: 'Number of records to skip for pagination' - in: 'query' - name: 'offset' - required: false - schema: - default: 0 - description: 'Number of records to skip for pagination' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 100)' + - description: 'Maximum number of files to return (1–1000).' in: 'query' name: 'limit' required: false schema: - default: 50 - description: 'Maximum number of records to return (max 100)' - example: 50 - maximum: 100 + description: 'Maximum number of files to return (1–1000).' + example: 100 + maximum: 1000 minimum: 1 type: 'integer' + - description: 'Opaque pagination cursor from a previous response.' + in: 'query' + name: 'cursor' + required: false + schema: + description: 'Opaque pagination cursor from a previous response.' + example: 'eyJjdXJzb3IiOiJvcl9maWxlXzAxMUNOaGE4aUNKY1Uxd1hOUjZxNFY4dyJ9' + type: 'string' + - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + in: 'query' + name: 'workspace_id' + required: false + schema: + description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' + format: 'uuid' + type: 'string' + - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' + example: 'openai' + in: 'query' + name: 'provider' + required: false + schema: + $ref: '#/components/schemas/FileProvider' + - description: 'OpenAI-style forward cursor: the id to list after.' + in: 'query' + name: 'after' + required: false + schema: + description: 'OpenAI-style forward cursor: the id to list after.' + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + type: 'string' + - description: 'Anthropic-style forward cursor: the id to list after.' + in: 'query' + name: 'after_id' + required: false + schema: + description: 'Anthropic-style forward cursor: the id to list after.' + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + type: 'string' + - description: 'Anthropic-style reverse cursor. Not supported by OpenRouter storage.' + in: 'query' + name: 'before_id' + required: false + schema: + description: 'Anthropic-style reverse cursor. Not supported by OpenRouter storage.' + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + type: 'string' + - description: 'Sort direction. Only `asc` is supported by OpenRouter storage.' + in: 'query' + name: 'order' + required: false + schema: + description: 'Sort direction. Only `asc` is supported by OpenRouter storage.' + enum: + - 'asc' + - 'desc' + example: 'asc' + type: 'string' + x-speakeasy-unknown-values: allow responses: '200': content: application/json: example: + cursor: null data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' - key_label: 'prod-key' - key_name: 'Production Key' - total_count: 1 + - created_at: '2025-01-01T00:00:00Z' + downloadable: false + filename: 'document.pdf' + id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + mime_type: 'application/pdf' + size_bytes: 1024000 + type: 'file' + first_id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + has_more: false + last_id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' schema: - $ref: '#/components/schemas/ListKeyAssignmentsResponse' - description: 'List of key assignments' + $ref: '#/components/schemas/FileListResponse' + description: 'A page of files.' '400': content: application/json: @@ -42138,16 +38977,16 @@ paths: schema: $ref: '#/components/schemas/ForbiddenResponse' description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + '429': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: @@ -42158,65 +38997,88 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List all key assignments' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': + content: + application/json: + example: + error: + code: 503 + message: 'Service temporarily unavailable' + schema: + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'List files' tags: - - 'Guardrails' - x-speakeasy-name-override: 'listKeyAssignments' + - 'Files' + x-speakeasy-name-override: 'list' x-speakeasy-pagination: inputs: - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' + name: 'cursor' + type: 'cursor' outputs: + nextCursor: '$.cursor' results: '$.data' - type: 'offsetLimit' - /guardrails/assignments/members: - get: - description: 'List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' - operationId: 'listMemberAssignments' + type: 'cursor' + post: + description: 'Uploads a file to be referenced in future API calls. The file is stored under the workspace of the authenticating API key. Maximum file size: 100 MB; empty files are rejected. The file type is determined from the file contents — not the filename or the declared content type — and must be a PDF, a PNG/JPEG/GIF/WebP image, a DOCX/XLSX/PPTX document, an MP3/WAV/FLAC/OGG audio file, or UTF-8 text. Text is reported by its structure as `application/json`, `application/x-ndjson`, `text/csv`, `text/markdown`, or `text/plain`.' + operationId: 'uploadFile' parameters: - - description: 'Number of records to skip for pagination' + - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' in: 'query' - name: 'offset' + name: 'workspace_id' required: false schema: - default: 0 - description: 'Number of records to skip for pagination' - example: 0 - minimum: 0 - type: - - 'integer' - - 'null' - - description: 'Maximum number of records to return (max 100)' + description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' + format: 'uuid' + type: 'string' + - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' + example: 'openai' in: 'query' - name: 'limit' + name: 'provider' required: false schema: - default: 50 - description: 'Maximum number of records to return (max 100)' - example: 50 - maximum: 100 - minimum: 1 - type: 'integer' + $ref: '#/components/schemas/FileProvider' + requestBody: + content: + multipart/form-data: + example: + file: 'document.pdf' + schema: + properties: + file: + format: 'binary' + type: 'string' + required: + - 'file' + type: 'object' + required: true responses: '200': content: application/json: example: - data: - - assigned_by: 'user_abc123' - created_at: '2025-08-24T10:30:00Z' - guardrail_id: '550e8400-e29b-41d4-a716-446655440001' - id: '550e8400-e29b-41d4-a716-446655440000' - organization_id: 'org_xyz789' - user_id: 'user_abc123' - total_count: 1 + created_at: '2025-01-01T00:00:00Z' + downloadable: false + filename: 'document.pdf' + id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + mime_type: 'application/pdf' + size_bytes: 1024000 + type: 'file' schema: - $ref: '#/components/schemas/ListMemberAssignmentsResponse' - description: 'List of member assignments' + $ref: '#/components/schemas/FileResponse' + description: 'The uploaded file metadata.' '400': content: application/json: @@ -42247,16 +39109,36 @@ paths: schema: $ref: '#/components/schemas/ForbiddenResponse' description: 'Forbidden - Authentication successful but insufficient permissions' - '404': + '413': content: application/json: example: error: - code: 404 - message: 'Resource not found' + code: 413 + message: 'Request payload too large' schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' + '429': + content: + application/json: + example: + error: + code: 429 + message: 'Rate limit exceeded' + schema: + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '499': + content: + application/json: + example: + error: + code: 499 + message: 'The request was cancelled.' + schema: + $ref: '#/components/schemas/ClientClosedRequestResponse' + description: 'Client Closed Request - The caller cancelled the request' '500': content: application/json: @@ -42267,69 +39149,70 @@ paths: schema: $ref: '#/components/schemas/InternalServerResponse' description: 'Internal Server Error - Unexpected server error' - summary: 'List all member assignments' - tags: - - 'Guardrails' - x-speakeasy-name-override: 'listMemberAssignments' - x-speakeasy-pagination: - inputs: - - in: 'parameters' - name: 'offset' - type: 'offset' - - in: 'parameters' - name: 'limit' - type: 'limit' - outputs: - results: '$.data' - type: 'offsetLimit' - /images: - post: - description: 'Generates an image from a text prompt via the image generation router' - operationId: 'createImages' - requestBody: - content: - application/json: - example: - model: 'bytedance-seed/seedream-4.5' - prompt: 'a red panda astronaut floating in space, studio lighting' - schema: - $ref: '#/components/schemas/ImageGenerationRequest' - required: true - responses: - '200': + '502': content: application/json: example: - created: 1748372400 - data: - - b64_json: '' - usage: - completion_tokens: 4175 - cost: 0.04 - prompt_tokens: 0 - total_tokens: 4175 + error: + code: 502 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/ImageGenerationResponse' - text/event-stream: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': + content: + application/json: example: - data: - b64_json: '' - partial_image_index: 0 - type: 'image_generation.partial_image' + error: + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/ImageStreamingResponse' - x-speakeasy-sse-sentinel: '[DONE]' - description: 'Image generation response' - '400': + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Upload a file' + tags: + - 'Files' + x-speakeasy-name-override: 'upload' + /files/{file_id}: + delete: + description: 'Deletes a file owned by the requesting workspace. Deletion is irreversible.' + operationId: 'deleteFile' + parameters: + - in: 'path' + name: 'file_id' + required: true + schema: + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + maxLength: 256 + minLength: 1 + pattern: '^[\w-]+$' + type: 'string' + - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + in: 'query' + name: 'workspace_id' + required: false + schema: + description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' + format: 'uuid' + type: 'string' + - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' + example: 'openai' + in: 'query' + name: 'provider' + required: false + schema: + $ref: '#/components/schemas/FileProvider' + responses: + '200': content: application/json: example: - error: - code: 400 - message: 'Invalid request parameters' + id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + type: 'file_deleted' schema: - $ref: '#/components/schemas/BadRequestResponse' - description: 'Bad Request - Invalid request parameters or malformed input' + $ref: '#/components/schemas/FileDeleteResponse' + description: 'The file was deleted.' '401': content: application/json: @@ -42340,16 +39223,6 @@ paths: schema: $ref: '#/components/schemas/UnauthorizedResponse' description: 'Unauthorized - Authentication required or invalid credentials' - '402': - content: - application/json: - example: - error: - code: 402 - message: 'Insufficient credits. Add more using https://openrouter.ai/credits' - schema: - $ref: '#/components/schemas/PaymentRequiredResponse' - description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: @@ -42370,16 +39243,6 @@ paths: schema: $ref: '#/components/schemas/NotFoundResponse' description: 'Not Found - Resource does not exist' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request payload too large' - schema: - $ref: '#/components/schemas/PayloadTooLargeResponse' - description: 'Payload Too Large - Request payload exceeds size limits' '429': content: application/json: @@ -42410,1221 +39273,943 @@ paths: schema: $ref: '#/components/schemas/BadGatewayResponse' description: 'Bad Gateway - Provider/upstream API failure' - '524': - content: - application/json: - example: - error: - code: 524 - message: 'Request timed out. Please try again later.' - schema: - $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' - description: 'Infrastructure Timeout - Provider request timed out at edge network' - '529': - content: - application/json: - example: - error: - code: 529 - message: 'Provider returned error' - schema: - $ref: '#/components/schemas/ProviderOverloadedResponse' - description: 'Provider Overloaded - Provider is temporarily overloaded' - summary: 'Generate an image' - tags: - - 'Images' - x-speakeasy-name-override: 'generate' - /images/models: - get: - description: 'Lists every image generation model with its top-level supported-parameter superset and a URL to its full per-endpoint records.' - operationId: 'listImageModels' - responses: - '200': - content: - application/json: - example: - data: - - architecture: - input_modalities: - - 'text' - output_modalities: - - 'image' - created: 1692901234 - description: 'A text-to-image model.' - endpoints: '/api/v1/images/models/bytedance-seed/seedream-4.5/endpoints' - id: 'bytedance-seed/seedream-4.5' - name: 'Seedream 4.5' - supported_parameters: - resolution: - type: 'enum' - values: - - '1K' - - '2K' - - '4K' - supports_streaming: false - schema: - $ref: '#/components/schemas/ImageModelsListResponse' - description: 'List of image generation models' - '500': + '503': content: application/json: example: error: - code: 500 - message: 'Internal Server Error' + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'List image generation models' + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Delete a file' tags: - - 'Images' - x-speakeasy-name-override: 'listModels' - /images/models/{author}/{slug}/endpoints: + - 'Files' + x-speakeasy-name-override: 'delete' get: - description: 'Returns the full per-endpoint records for an image model: each endpoint''s definitive supported parameters, pricing, and passthrough allowlist.' - operationId: 'listImageModelEndpoints' + description: 'Retrieves metadata for a single file owned by the requesting workspace.' + operationId: 'getFileMetadata' parameters: - - description: 'Model author/organization' - in: 'path' - name: 'author' - required: true - schema: - description: 'Model author/organization' - example: 'bytedance-seed' - type: 'string' - - description: 'Model slug' - in: 'path' - name: 'slug' + - in: 'path' + name: 'file_id' required: true schema: - description: 'Model slug' - example: 'seedream-4.5' + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + maxLength: 256 + minLength: 1 + pattern: '^[\w-]+$' type: 'string' - responses: - '200': - content: - application/json: - example: - endpoints: - - allowed_passthrough_parameters: [] - pricing: - - billable: 'output_image' - cost_usd: 0.05 - unit: 'image' - provider_name: 'Bytedance' - provider_slug: 'bytedance' - provider_tag: 'bytedance' - supported_parameters: - resolution: - type: 'enum' - values: - - '1K' - - '2K' - - '4K' - supports_streaming: false - id: 'bytedance-seed/seedream-4.5' - schema: - $ref: '#/components/schemas/ImageModelEndpointsResponse' - description: 'The full per-endpoint records for an image model' - '404': - content: - application/json: - example: - error: - code: 404 - message: 'Resource not found' - schema: - $ref: '#/components/schemas/NotFoundResponse' - description: 'Not Found - Resource does not exist' - '500': - content: - application/json: - example: - error: - code: 500 - message: 'Internal Server Error' - schema: - $ref: '#/components/schemas/InternalServerResponse' - description: 'Internal Server Error - Unexpected server error' - summary: 'List endpoints for an image model' - tags: - - 'Images' - x-speakeasy-name-override: 'listModelEndpoints' - /interns: - get: - description: 'Lists interns visible to the authenticated key, newest first. Filter by workspace and one or more lifecycle statuses. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'listInterns' - parameters: - - description: 'Maximum number of interns to return, from 1 through 500.' - in: 'query' - name: 'limit' - required: false - schema: - description: 'Maximum number of interns to return, from 1 through 500.' - example: 50 - maximum: 500 - minimum: 1 - type: 'integer' - - description: 'Comma-separated lifecycle statuses to include, at most 8. Repeats are collapsed.' - explode: false - in: 'query' - name: 'status' - required: false - schema: - description: 'Comma-separated lifecycle statuses to include, at most 8. Repeats are collapsed.' - example: - - 'queued' - - 'running' - items: - enum: - - 'awaiting_slack_install' - - 'queued' - - 'provisioning' - - 'running' - - 'failed' - - 'stopped' - - 'destroying' - - 'destroy_failed' - type: 'string' - x-speakeasy-unknown-values: allow - maxItems: 8 - type: 'array' - style: 'form' - - description: 'The opaque `next_cursor` of the previous page. Returns the interns that come after it in the newest-first order. A malformed cursor is a 400.' + - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' in: 'query' - name: 'starting_after' + name: 'workspace_id' required: false schema: - description: 'The opaque `next_cursor` of the previous page. Returns the interns that come after it in the newest-first order. A malformed cursor is a 400.' - example: 'MjAyNi0wOS0xNlQwODozMDowMC4wMDAwMDBafDdjOWU2Njc5LTc0MjUtNDBkZS05NDRiLWUwN2ZjMWY5MGFlNw' + description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' + format: 'uuid' type: 'string' - - description: 'Only return interns in this workspace. It must match the API key workspace.' + - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' + example: 'openai' in: 'query' - name: 'workspace_id' + name: 'provider' required: false schema: - description: 'Only return interns in this workspace. It must match the API key workspace.' - example: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - format: 'uuid' - type: 'string' + $ref: '#/components/schemas/FileProvider' responses: '200': content: application/json: example: - data: - - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - has_more: false - schema: - $ref: '#/components/schemas/InternListResponse' - description: 'Interns matching the filters.' - '400': - content: - application/json: - example: - error: - code: 400 - message: 'Invalid list query' - metadata: - reason: 'invalid_body' - retryable: false + created_at: '2025-01-01T00:00:00Z' + downloadable: false + filename: 'document.pdf' + id: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + mime_type: 'application/pdf' + size_bytes: 1024000 + type: 'file' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The list filters are invalid.' + $ref: '#/components/schemas/FileResponse' + description: 'The file metadata.' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Forbidden' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '429': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'List interns' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': + content: + application/json: + example: + error: + code: 503 + message: 'Service temporarily unavailable' + schema: + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Get file metadata' tags: - - 'Interns' - post: - description: 'Creates an intern in an explicit workspace. The operation also creates its private vault. It can start provisioning immediately or wait for a later provision call. A retry with the same idempotency key and body resumes unfinished work. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'createIntern' + - 'Files' + x-speakeasy-name-override: 'retrieve' + /files/{file_id}/content: + get: + description: 'Downloads the raw bytes of a file. Only files created server-side are downloadable; uploaded files return 400.' + operationId: 'downloadFileContent' parameters: - - description: 'Key that makes retries resume the same create operation, from 1 through 255 characters. An empty or longer key is refused with 400. Without the header, the server derives a stable key from the request body.' - in: 'header' - name: 'Idempotency-Key' - required: false + - in: 'path' + name: 'file_id' + required: true schema: - description: 'Key that makes retries resume the same create operation, from 1 through 255 characters. An empty or longer key is refused with 400. Without the header, the server derives a stable key from the request body.' - example: 'create-research-assistant-2026-09-16' - maxLength: 255 + example: 'or_file_011CNha8iCJcU1wXNR6q4V8w' + maxLength: 256 minLength: 1 + pattern: '^[\w-]+$' type: 'string' - requestBody: - content: - application/json: - example: - name: 'research-assistant' - provision: true - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - schema: - $ref: '#/components/schemas/CreateInternRequest' - required: true + - description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + in: 'query' + name: 'workspace_id' + required: false + schema: + description: 'Workspace to scope the request to. Defaults to the caller’s default workspace.' + example: 'a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7' + format: 'uuid' + type: 'string' + - description: 'Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage.' + example: 'openai' + in: 'query' + name: 'provider' + required: false + schema: + $ref: '#/components/schemas/FileProvider' responses: '200': content: - application/json: - example: - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - schema: - $ref: '#/components/schemas/Intern' - description: 'A completed create operation was replayed.' - '201': - content: - application/json: - example: - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - schema: - $ref: '#/components/schemas/Intern' - description: 'Intern created.' + application/octet-stream: + example: 'binary file contents' + schema: + format: 'binary' + type: 'string' + description: 'The raw file content.' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': - content: - application/json: - examples: - lifecycle_writes_disabled: - value: - error: - code: 403 - message: 'Intern lifecycle writes are not enabled for this account' - metadata: - reason: 'lifecycle_writes_disabled' - retryable: false - no_acting_user: - value: - error: - code: 403 - message: 'This key acts as the organization and has no member to own a new intern' - metadata: - reason: 'no_acting_user' - retryable: false - workspace_capability_unavailable: - value: - error: - code: 403 - message: 'This feature is not available in this workspace.' - metadata: - reason: 'workspace_capability_unavailable' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key acts as an organization and has no member who can own the intern, the workspace does not allow interns, lifecycle writes are not enabled for the caller, or regional access is refused.' - '404': content: application/json: example: error: - code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '409': - content: - application/json: - examples: - idempotency_key_reused: - value: - error: - code: 409 - message: 'This Idempotency-Key was already used with a different request' - metadata: - reason: 'idempotency_key_reused' - retryable: false - name_taken: - value: - error: - code: 409 - message: 'An intern named "research-assistant" already exists in this workspace' - metadata: - reason: 'name_taken' - retryable: false + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The idempotency key was reused, the intern name is already taken in the workspace, the member reached the intern limit, or the requested vault cannot be attached.' - '413': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '429': content: application/json: example: error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '500': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '500': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '502': content: application/json: example: error: - code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + code: 502 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - '502': + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '503': content: application/json: example: error: - code: 502 - message: 'The intern was created but setup is not ready yet, retry the request' - metadata: - reason: 'upstream_unavailable' - retryable: true + code: 503 + message: 'Service temporarily unavailable' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The vault or provisioner did not complete a recoverable create step. Retry the same request.' - security: - - apiKey: [] - summary: 'Create an intern' + $ref: '#/components/schemas/ServiceUnavailableResponse' + description: 'Service Unavailable - Service temporarily unavailable' + summary: 'Download file content' tags: - - 'Interns' - /interns/{internId}: - delete: - description: 'Starts safe teardown of the intern, its runtime and its private vault. The body is optional. Send `{"acknowledge_workspace_loss": true}` to delete a `destroy_failed` intern whose `last_failure_message` names `workspace_archive_failed`, accepting that its workspace is not backed up. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'deleteIntern' + - 'Files' + x-speakeasy-name-override: 'download' + /generation: + get: + operationId: 'getGeneration' parameters: - - description: 'ID of an intern visible to the authenticated API key.' - in: 'path' - name: 'internId' + - description: 'The generation ID' + in: 'query' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The generation ID' + example: 'gen-1234567890' + maxLength: 128 + pattern: '^gen-[0-9A-Za-z-]+$' type: 'string' - requestBody: - content: - application/json: - example: - acknowledge_workspace_loss: true - schema: - $ref: '#/components/schemas/DeleteInternRequest' - required: true responses: - '202': + '200': content: application/json: example: - deleting: true + data: + api_type: 'completions' + app_id: 12345 + cache_discount: null + cancelled: false + created_at: '2024-07-15T23:33:19.433273+00:00' + data_region: 'global' + external_user: 'user-123' + finish_reason: 'stop' + generation_time: 1200 + http_referer: 'https://openrouter.ai/' + id: 'gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG' + is_byok: false + latency: 1250 + model: 'sao10k/l3-stheno-8b' + moderation_latency: 50 + native_finish_reason: 'stop' + native_tokens_cached: 3 + native_tokens_completion: 25 + native_tokens_completion_images: 0 + native_tokens_prompt: 10 + native_tokens_reasoning: 5 + num_fetches: 0 + num_input_audio_prompt: 0 + num_media_completion: 0 + num_media_prompt: 1 + num_search_results: 5 + origin: 'https://openrouter.ai/' + preset_id: 'a9e8d400-592a-494f-908c-375efa66cafd' + provider_name: 'Infermatic' + provider_responses: null + request_id: 'req-1727282430-aBcDeFgHiJkLmNoPqRsT' + router: 'openrouter/auto' + service_tier: 'priority' + session_id: null + streamed: true + tokens_completion: 25 + tokens_prompt: 10 + total_cost: 0.0015 + upstream_id: 'chatcmpl-791bcf62-080e-4568-87d0-94c72e3b4946' + upstream_inference_cost: 0.0012 + usage: 0.0015 + user_agent: 'Mozilla/5.0' + web_search_engine: 'exa' schema: - $ref: '#/components/schemas/DeleteInternResponse' - description: 'The operation was accepted.' + $ref: '#/components/schemas/GenerationResponse' + description: 'Returns the request metadata for this generation' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' + schema: + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '402': + content: + application/json: + example: + error: + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' '403': content: application/json: example: error: code: 403 - message: 'Intern lifecycle writes are not enabled for this account' - metadata: - reason: 'lifecycle_writes_disabled' - retryable: false + message: 'Management key does not have permission for this request' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, the request used a regional hostname, or lifecycle writes are not enabled for the caller (`metadata.reason` is `lifecycle_writes_disabled`).' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - The management key does not have permission for this request' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '409': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '429': content: application/json: example: error: - code: 409 - message: 'Another operation holds the intern, retry once it settles' - metadata: - reason: 'intern_busy' - retryable: true + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern is not in a state that allows this operation. `metadata.reason` says whether to try again: `intern_busy` means another operation still holds the intern and carries `metadata.retryable: true`, so the same request may be sent again once it settles. A duplicate delete of an intern already being deleted is not a conflict and is accepted with 202.' - '413': + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '500': content: application/json: example: error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '502': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 502 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '500': + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '524': content: application/json: example: error: - code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + code: 524 + message: 'Request timed out. Please try again later.' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - '502': + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': content: application/json: example: error: - code: 502 - message: 'The intern service could not be reached, retry the request' - metadata: - reason: 'upstream_unavailable' - retryable: true + code: 529 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern service could not accept the operation.' - security: - - apiKey: [] - summary: 'Delete an intern' + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Get request & usage metadata for a generation' tags: - - 'Interns' + - 'Generations' + /generation/content: get: - description: 'Returns the public lifecycle state and settings for one visible intern. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'getIntern' + operationId: 'listGenerationContent' parameters: - - description: 'ID of an intern visible to the authenticated API key.' - in: 'path' - name: 'internId' + - description: 'The generation ID' + in: 'query' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The generation ID' + example: 'gen-1234567890' + maxLength: 128 + pattern: '^gen-[0-9A-Za-z-]+$' type: 'string' responses: '200': content: application/json: example: - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - schema: - $ref: '#/components/schemas/Intern' - description: 'Intern lifecycle state and settings.' + data: + error: null + input: + messages: + - content: 'What is the meaning of life?' + role: 'user' + output: + completion: 'The meaning of life is a philosophical question...' + reasoning: null + schema: + $ref: '#/components/schemas/GenerationContentResponse' + description: 'Returns the stored prompt and completion content, plus the failure error when the generation failed' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' + schema: + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Forbidden' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '429': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Get an intern' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '502': + content: + application/json: + example: + error: + code: 502 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '524': + content: + application/json: + example: + error: + code: 524 + message: 'Request timed out. Please try again later.' + schema: + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': + content: + application/json: + example: + error: + code: 529 + message: 'Provider returned error' + schema: + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Get stored prompt, completion, and error content for a generation' tags: - - 'Interns' - patch: - description: 'Changes the intern name, description, instructions or model. Omitted fields stay unchanged. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'updateIntern' - parameters: - - description: 'ID of an intern visible to the authenticated API key.' - in: 'path' - name: 'internId' - required: true - schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 - type: 'string' + - 'Generations' + /generation/feedback: + post: + description: 'Submit structured feedback on a generation the authenticated user made. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'submitGenerationFeedback' requestBody: content: application/json: example: - description: 'Researches customer questions' - model: 'openai/gpt-5.4' + category: 'incorrect_response' + comment: 'The model repeated the same paragraph three times.' + generation_id: 'gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG' schema: - $ref: '#/components/schemas/UpdateInternRequest' + $ref: '#/components/schemas/SubmitGenerationFeedbackRequest' required: true responses: '200': content: application/json: example: - attached_vault_id: null - can_edit: true - created_at: '2026-09-16T08:30:00.000Z' - created_by_you: true - description: 'Researches customer questions' - hostname: 'research-assistant.openrouter.ai' - icon_sha256: null - id: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - instructions: null - last_failure_message: null - model: 'openai/gpt-5.4' - name: 'research-assistant' - progress: null - status: 'running' - updated_at: '2026-09-16T08:45:00.000Z' - vault_id: 'b431c59d-6eed-41ac-bc89-9a89be79a121' - workspace_id: '89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb' - schema: - $ref: '#/components/schemas/Intern' - description: 'Updated intern.' + data: + success: true + schema: + $ref: '#/components/schemas/SubmitGenerationFeedbackResponse' + description: 'Feedback recorded successfully' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' - '403': - content: - application/json: - example: - error: - code: 403 - message: 'Intern lifecycle writes are not enabled for this account' - metadata: - reason: 'lifecycle_writes_disabled' - retryable: false + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, the request used a regional hostname, or lifecycle writes are not enabled for the caller (`metadata.reason` is `lifecycle_writes_disabled`).' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '409': content: application/json: example: error: code: 409 - message: 'An intern named "research-assistant" already exists in this workspace' - metadata: - reason: 'name_taken' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The new name is already taken by an intern in this workspace.' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + message: 'Feedback was already submitted for this generation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/ConflictResponse' + description: 'Conflict - Feedback was already submitted for this generation by this account. The first submission is kept.' + '429': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Update an intern' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Submit feedback for a generation' tags: - - 'Interns' - /interns/{internId}/chat/completions: - post: - description: "Sends a prompt to one of your interns and streams the reply as OpenAI-compatible server-sent events ending with `[DONE]`. The run executes on the intern, which may pause to ask you something. It then streams one `openrouter.provide_input` tool call and finishes with `finish_reason: \"tool_calls\"`, and the run stays open on the intern.\n\nEvery response, whether it ends with `stop`, `tool_calls` or `error`, is followed by a final chunk with empty `choices` that carries `session_id`, then `data: [DONE]`. That chunk carries the `usage` the intern reported for the run, after `stop` or `error`, and `null` when the intern reported none. After `tool_calls` its `usage` is `null` because the turn is not over. Read through `[DONE]`: the `session_id` you need to reply arrives after the `tool_calls` finish chunk.\n\nTo answer, send a second request with the same `session_id`, the assistant message echoing that tool call, and a `tool` message whose `tool_call_id` is the tool call id and whose `content` is the answer. The answer is delivered to the run that asked and the stream continues from where it paused. A question stays open for its interaction deadline (5 minutes by default) and the run is cancelled when that passes. Rejected replies do not extend the deadline.\n\nClosing the connection after the `[DONE]` that follows `finish_reason: \"tool_calls\"` keeps the run alive. Disconnecting while a response is still streaming cancels the run. The stream writes a `: keepalive` comment whenever nothing else has been written for 30 seconds, so a disconnect is noticed within that interval even while the intern is silent.\n\nA run the intern ends while you are still connected, by cancellation or by a deadline, ends the stream with a `finish_reason: \"error\"` chunk carrying `410` and reason `run_ended`, then the final empty-`choices` chunk and `[DONE]`. That error reports only an ending the intern confirmed. A connection that breaks without that confirmation ends with reason `stream_severed`, and a client that has already disconnected is promised no final event.\n\nSet `approval_mode` to `manual` to have the intern ask before approval-bearing tools such as the shell. Omitted, the run self-drives and consents on your behalf. The mode belongs to the run started by that prompt and must be repeated on later prompts.\n\nAvailable to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`." - operationId: 'createInternChatCompletion' + - 'Generations' + x-speakeasy-name-override: 'submitFeedback' + /guardrails: + get: + description: 'List all guardrails for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listGuardrails' parameters: - - description: 'The intern to talk to.' - in: 'path' - name: 'internId' - required: true + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false schema: - description: 'The intern to talk to.' - example: 'a11e0000-0000-4000-8000-000000000005' + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + - description: 'Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned.' + in: 'query' + name: 'workspace_id' + required: false + schema: + description: 'Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned.' + example: '0df9e665-d932-5740-b2c7-b52af166bc11' + format: 'uuid' type: 'string' - requestBody: - content: - application/json: - example: - approval_mode: 'manual' - messages: - - content: 'Summarize the open pull requests.' - role: 'user' - stream: true - schema: - $ref: '#/components/schemas/InternChatCompletionRequest' - required: true responses: '200': content: - text/event-stream: + application/json: example: data: - choices: - - delta: - tool_calls: - - function: - arguments: '{"kind":"permission","operation":"shell","options":["allow_once","allow_always","reject_once","reject_always"]}' - name: 'openrouter.provide_input' - id: '15e90ad6-5320-4a59-af4f-b371428154fa' - index: 0 - type: 'function' - finish_reason: null - index: 0 - created: 1789537541 - id: 'chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750' - model: 'openrouter/intern' - object: 'chat.completion.chunk' - schema: - $ref: '#/components/schemas/InternChatStreamingResponse' - x-speakeasy-sse-sentinel: '[DONE]' - description: 'The streamed completion. Chunks carry text, then a finish chunk: `finish_reason: "stop"` when the turn is complete, `finish_reason: "tool_calls"` when the intern is waiting for an answer, or `finish_reason: "error"` for a failure after this status. A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the intern reported usage, and always `null` after `tool_calls`), and the stream ends with `data: [DONE]`.' - '202': - content: - application/json: + - allowed_models: null + allowed_providers: + - 'openai' + - 'anthropic' + - 'google' + created_at: '2025-08-24T10:30:00Z' + description: 'Guardrail for production environment' + enforce_zdr: false + id: '550e8400-e29b-41d4-a716-446655440000' + ignored_models: null + ignored_providers: null + include_byok_in_budgets: false + limit_usd: 100 + name: 'Production Guardrail' + reset_interval: 'monthly' + updated_at: '2025-08-24T15:45:00Z' + workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + total_count: 1 schema: - $ref: '#/components/schemas/InternChatSteeredResponse' - description: 'A turn is already running in this `session_id`, and the message was delivered into it instead of starting a new turn. Nothing streams here: the intern takes the message up on the running turn, whose stream continues on the request that started it. Sent only for a `user` message with a `session_id`; a `tool` reply into a running session gets `409 busy`, as does a message the intern could not take. Other sessions on the same intern are not affected and run in parallel.' + $ref: '#/components/schemas/ListGuardrailsResponse' + description: 'List of guardrails' '400': content: application/json: example: error: code: 400 - message: 'The intern did not accept that answer for this tool_call_id.' - metadata: - reason: 'bad_request' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The body is not a valid request (`bad_request`), or the intern did not accept the answer for the pending question, such as a permission option it did not offer.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'No valid API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'This API key''s creator is no longer a member of the organization. Ask an organization admin to reassign the key to an active member.' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The key belongs to a member who has left the organization and holds no grant.' - '404': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '500': content: application/json: example: error: - code: 404 - message: 'No pending question has this tool_call_id.' - metadata: - reason: 'interaction_unknown' - retryable: false + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The caller is outside the interns programme, the intern does not exist for this key (`not_found`), or no pending question has this `tool_call_id` in this session (`interaction_unknown`).' - '408': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List guardrails' + tags: + - 'Guardrails' + x-speakeasy-name-override: 'list' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + post: + description: 'Create a new guardrail for the authenticated user. A newly created guardrail enforces nothing until it is assigned to API keys or organization members; `workspace_id` places the guardrail in a workspace but does not apply it to that workspace''s traffic. To restrict all traffic in a workspace, update the workspace''s default guardrail instead. Set `allowed_data_regions` to enforce [In-Region Routing](/docs/guides/features/in-region-routing#enforcing-in-region-routing-with-guardrails): governed requests must arrive through one of the listed OpenRouter domains and are rejected with a 403 otherwise. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'createGuardrail' + requestBody: + content: + application/json: + example: + allowed_data_regions: + - 'europe' + allowed_models: null + allowed_providers: + - 'openai' + - 'anthropic' + - 'deepseek' + description: 'A guardrail for limiting API usage' + enforce_zdr_anthropic: true + enforce_zdr_google: false + enforce_zdr_openai: true + enforce_zdr_other: false + enforce_zdr_xai: false + ignored_models: null + ignored_providers: null + limit_usd: 50 + name: 'My New Guardrail' + reset_interval: 'monthly' + schema: + $ref: '#/components/schemas/CreateGuardrailRequest' + required: true + responses: + '201': content: application/json: example: - error: - code: 408 - message: 'Operation timed out after 300s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + data: + allowed_models: null + allowed_providers: + - 'openai' + - 'anthropic' + - 'google' + created_at: '2025-08-24T10:30:00Z' + description: 'A guardrail for limiting API usage' + enforce_zdr: null + enforce_zdr_anthropic: true + enforce_zdr_google: false + enforce_zdr_openai: true + enforce_zdr_other: false + enforce_zdr_xai: false + id: '550e8400-e29b-41d4-a716-446655440000' + ignored_models: null + ignored_providers: null + include_byok_in_budgets: false + limit_usd: 50 + name: 'My New Guardrail' + reset_interval: 'monthly' + updated_at: null + workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The request exceeded the route''s own deadline before the handler answered (`timeout`). Distinct from the 504, which is the intern failing to answer within the turn budget.' - '409': + $ref: '#/components/schemas/CreateGuardrailResponse' + description: 'Guardrail created successfully' + '400': content: application/json: example: error: - code: 409 - message: 'The run that asked this question has already ended.' - metadata: - reason: 'interaction_not_pending' - retryable: false - schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern is not running (`intern_not_ready`), a turn is already running in this session and did not take the message within 15 seconds (`busy`, also sent when the turn is waiting on a question of its own), the question is no longer waiting (`interaction_not_pending`), or another request is already attached to the run (`attachment_failed`). Turns in different sessions on the same intern run in parallel. `intern_not_ready` and `busy` report `retryable: true`, and a `busy` refusal carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request. Present only on a `busy` refusal.' - required: false + code: 400 + message: 'Invalid request parameters' schema: - description: 'Seconds to wait before retrying this request. Present only on a `busy` refusal.' - example: '5' - type: 'string' - '410': + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': content: application/json: example: error: - code: 410 - message: 'The run produced more output than the intern retains for replay.' - metadata: - reason: 'attachment_failed' - retryable: false + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The run produced more output than the intern retains, so the paused stream cannot be resumed (`attachment_failed`).' - '413': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '403': content: application/json: example: error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The body exceeds 1 MiB (`payload_too_large`).' - '429': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'The management key does not have permission for this request, the workspace is not owned by this account, or the workspace does not allow a person-name or address sensitive-info filter.' + '500': content: application/json: example: error: - code: 429 - message: 'Too many intern turns. Please wait a moment.' - metadata: - reason: 'rate_limited' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'Too many turns for the user or organization this key acts as (`rate_limited`). It reports `retryable: true` and carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Create a guardrail' + tags: + - 'Guardrails' + x-speakeasy-name-override: 'create' + /guardrails/{id}: + delete: + description: 'Delete an existing guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'deleteGuardrail' + parameters: + - description: 'The unique identifier of the guardrail to delete' + in: 'path' + name: 'id' + required: true + schema: + description: 'The unique identifier of the guardrail to delete' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' + type: 'string' + responses: + '200': + content: + application/json: + example: + deleted: true schema: - description: 'Seconds to wait before retrying this request.' - example: '60' - type: 'string' - '502': + $ref: '#/components/schemas/DeleteGuardrailResponse' + description: 'Guardrail deleted successfully' + '401': content: application/json: example: error: - code: 502 - message: 'The intern could not be reached.' - metadata: - reason: 'intern_unreachable' - retryable: true + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern could not be reached or rejected the request (`intern_unreachable`, `intern_rejected`), the intern refused the turn before any output (`turn_failed`), or its stream ended before the turn started (`stream_severed`). `intern_unreachable` and `stream_severed` are transient and report `retryable: true`; `intern_rejected` reports `false`. A `turn_failed` varies by failure and carries the intern''s own classification of what went wrong, so read `metadata.retryable` rather than assuming from the reason.' - '503': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '403': content: application/json: example: error: - code: 503 - message: 'The intern cannot hold another run open across a question right now. Retry later.' - metadata: - reason: 'busy' - retryable: true + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern cannot hold another run open across a question right now (`busy`). It reports `retryable: true` and carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' schema: - description: 'Seconds to wait before retrying this request.' - example: '5' - type: 'string' - '504': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 504 - message: 'The intern did not answer in time.' - metadata: - reason: 'timeout' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern did not answer within the request budget (`timeout`).' - security: - - apiKey: [] - summary: 'Stream a chat completion with an intern' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Delete a guardrail' tags: - - 'Interns' - x-speakeasy-group: 'interns' - x-speakeasy-name-override: 'chat' - /interns/{internId}/connections: + - 'Guardrails' + x-speakeasy-name-override: 'delete' get: - description: 'Returns the Slack, GitHub, Google Workspace and MCP connections one visible intern can reach, and the shared ones switched off for it or disabled for the workspace. An OAuth grant needs `vault:read`, because the list names members'' personal accounts; without it the route answers 403 `insufficient_scope`. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'getInternConnections' + description: 'Get a single guardrail by ID. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'getGuardrail' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail to retrieve' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The unique identifier of the guardrail to retrieve' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' responses: '200': @@ -43632,1206 +40217,1235 @@ paths: application/json: example: data: - - account: - acts_as: null - is_your_account_linked: null - note: null - scope: 'workspace' - id: 'github' - is_enabled: true - is_intern_only: false - kind: 'github' - mcp_server_name: null - name: 'GitHub' - off_reason: null - server: null - status: - reason: null - state: 'connected' - tool_count: null - schema: - $ref: '#/components/schemas/InternConnectionList' - description: 'The intern connections.' + allowed_models: null + allowed_providers: + - 'openai' + - 'anthropic' + - 'google' + created_at: '2025-08-24T10:30:00Z' + description: 'Guardrail for production environment' + enforce_zdr: false + id: '550e8400-e29b-41d4-a716-446655440000' + ignored_models: null + ignored_providers: null + include_byok_in_budgets: false + limit_usd: 100 + name: 'Production Guardrail' + reset_interval: 'monthly' + updated_at: '2025-08-24T15:45:00Z' + workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + schema: + $ref: '#/components/schemas/GetGuardrailResponse' + description: 'Guardrail details' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Forbidden' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Guardrail not found, or the workspace default guardrail has not been configured yet.' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'List an intern''s connections' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Get a guardrail' tags: - - 'Interns' - /interns/{internId}/daemon: - get: - description: 'Returns the origin and daemon token that attach `ori tui --host` to one visible, running intern. The token is a credential: only an OAuth-token caller (`ori login --oidc`) may read it, the response is sent with `Cache-Control: no-store`, and each reveal is logged by caller and intern. API keys get 403 `personal_identity_required`. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'getInternDaemon' + - 'Guardrails' + x-speakeasy-name-override: 'get' + patch: + description: 'Update an existing guardrail, or materialize an unconfigured workspace default guardrail. Collection fields use replace semantics: send the full desired set on every update. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'updateGuardrail' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail to update' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The unique identifier of the guardrail to update' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' + requestBody: + content: + application/json: + example: + description: 'Updated description' + limit_usd: 75 + name: 'Updated Guardrail Name' + reset_interval: 'weekly' + schema: + $ref: '#/components/schemas/UpdateGuardrailRequest' + required: true responses: '200': content: application/json: + example: + data: + allowed_models: null + allowed_providers: + - 'openai' + created_at: '2025-08-24T10:30:00Z' + description: 'Updated description' + enforce_zdr: null + enforce_zdr_anthropic: true + enforce_zdr_google: true + enforce_zdr_openai: true + enforce_zdr_other: true + enforce_zdr_xai: true + id: '550e8400-e29b-41d4-a716-446655440000' + ignored_models: null + ignored_providers: null + include_byok_in_budgets: true + limit_usd: 75 + name: 'Updated Guardrail Name' + reset_interval: 'weekly' + updated_at: '2025-08-24T16:00:00Z' + workspace_id: '0df9e665-d932-5740-b2c7-b52af166bc11' + schema: + $ref: '#/components/schemas/UpdateGuardrailResponse' + description: 'Guardrail updated successfully' + '400': + content: + application/json: + example: + error: + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternDaemonAccess' - description: 'Daemon origin and token.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Invalid request, or an attempt to change a workspace default guardrail''s name (which is derived from its workspace and not editable; sending the current name unchanged is accepted).' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Forbidden' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'The management key does not have permission for this request, or the update would add a person-name or address sensitive-info filter to a workspace that does not allow it.' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '409': content: application/json: example: error: code: 409 - message: 'This intern is not running.' - metadata: - reason: 'intern_not_running' - retryable: false + message: 'Resource conflict. Please try again later.' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern cannot be attached to. `metadata.reason` is `intern_not_running`, `intern_unreachable` when it has no usable address yet, or `intern_needs_restart` when it was provisioned before daemon access was available.' + $ref: '#/components/schemas/ConflictResponse' + description: 'Guardrail name conflict — another guardrail in this workspace already uses the requested name.' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Get an intern''s daemon access' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Update a guardrail' tags: - - 'Interns' - /interns/{internId}/daemon-access: + - 'Guardrails' + x-speakeasy-name-override: 'update' + /guardrails/{id}/assignments/keys: get: - deprecated: true - description: 'Deprecated alias of `GET /interns/{internId}/daemon` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'getInternDaemonAccess' + description: 'List all API key assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listGuardrailKeyAssignments' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' responses: '200': content: application/json: + example: + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + key_label: 'prod-key' + key_name: 'Production Key' + total_count: 1 schema: - $ref: '#/components/schemas/InternDaemonAccess' - description: 'Daemon origin and token.' + $ref: '#/components/schemas/ListKeyAssignmentsResponse' + description: 'List of key assignments' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Forbidden' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '409': - content: - application/json: - example: - error: - code: 409 - message: 'This intern is not running.' - metadata: - reason: 'intern_not_running' - retryable: false + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern cannot be attached to. `metadata.reason` is `intern_not_running`, `intern_unreachable` when it has no usable address yet, or `intern_needs_restart` when it was provisioned before daemon access was available.' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Get an intern''s daemon access (deprecated alias)' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List key assignments for a guardrail' tags: - - 'Interns' - /interns/{internId}/daemon-access/sign: + - 'Guardrails' + x-speakeasy-name-override: 'listGuardrailKeyAssignments' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' post: - deprecated: true - description: 'Deprecated alias of `POST /interns/{internId}/daemon/sign` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'signInternDaemonAccessRequest' + description: 'Assign multiple API keys to a specific guardrail. A key may hold at most one guardrail; assigning replaces any existing assignment. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'bulkAssignKeysToGuardrail' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' requestBody: content: application/json: + example: + key_hashes: + - 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' schema: - $ref: '#/components/schemas/SignInternDaemonRequest' + $ref: '#/components/schemas/BulkAssignKeysRequest' required: true responses: '200': content: application/json: + example: + assigned_count: 3 schema: - $ref: '#/components/schemas/SignInternDaemonResponse' - description: 'Signature headers for the digest.' + $ref: '#/components/schemas/BulkAssignKeysResponse' + description: 'Assignment result' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Personal connections require ori login --oidc.' - metadata: - reason: 'personal_identity_required' - retryable: false + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is an API key, which names no person (`personal_identity_required`), or an OAuth grant without `vault:read` (`insufficient_scope`). Also returned when the key owner no longer has access or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'The management key does not have permission for this request, or the guardrail has no workspace and carries a person-name or address sensitive-info filter, and at least one target key belongs to a workspace that does not allow that filter.' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '413': - content: - application/json: - example: - error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': - content: - application/json: - example: - error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '429': - content: - application/json: - example: - error: - code: 429 - message: 'Too many intern turns. Please wait a moment.' - metadata: - reason: 'rate_limited' - retryable: true - schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Too many turns for the user or organization this credential acts as (`rate_limited`). Shares the chat turn limiter, reports `retryable: true` and carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + message: 'Resource not found' schema: - description: 'Seconds to wait before retrying this request.' - example: '60' - type: 'string' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Sign a daemon request with the caller''s identity (deprecated alias)' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Bulk assign keys to a guardrail' tags: - - 'Interns' - /interns/{internId}/daemon/sign: + - 'Guardrails' + x-speakeasy-name-override: 'bulkAssignKeys' + /guardrails/{id}/assignments/keys/remove: post: - description: 'Signs the SHA-256 digest of one request the CLI is about to send to the intern daemon, binding it to the intern and to the signed-in member so personal connections resolve. Only an OAuth session from `ori login --oidc` whose grant carries `vault:read` can sign: an API key is refused with 403 because it names no person, and an `interns`-only grant is refused with 403 because a proof releases that user''s personal connections. The route is behind the same gate as chat and counts against the chat turn limiter. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'signInternDaemonRequest' + description: 'Unassign multiple API keys from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'bulkUnassignKeysFromGuardrail' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' requestBody: content: application/json: + example: + key_hashes: + - 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' schema: - $ref: '#/components/schemas/SignInternDaemonRequest' + $ref: '#/components/schemas/BulkUnassignKeysRequest' required: true responses: '200': content: application/json: + example: + unassigned_count: 3 schema: - $ref: '#/components/schemas/SignInternDaemonResponse' - description: 'Signature headers for the digest.' + $ref: '#/components/schemas/BulkUnassignKeysResponse' + description: 'Unassignment result' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Personal connections require ori login --oidc.' - metadata: - reason: 'personal_identity_required' - retryable: false + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is an API key, which names no person (`personal_identity_required`), or an OAuth grant without `vault:read` (`insufficient_scope`). Also returned when the key owner no longer has access or the request used a regional hostname.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '413': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Bulk unassign keys from a guardrail' + tags: + - 'Guardrails' + x-speakeasy-name-override: 'bulkUnassignKeys' + /guardrails/{id}/assignments/members: + get: + description: 'List all organization member assignments for a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listGuardrailMemberAssignments' + parameters: + - description: 'The unique identifier of the guardrail' + in: 'path' + name: 'id' + required: true + schema: + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' + type: 'string' + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + responses: + '200': content: application/json: example: - error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + organization_id: 'org_xyz789' + user_id: 'user_abc123' + total_count: 1 schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/ListMemberAssignmentsResponse' + description: 'List of member assignments' + '401': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '429': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '403': content: application/json: example: error: - code: 429 - message: 'Too many intern turns. Please wait a moment.' - metadata: - reason: 'rate_limited' - retryable: true + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Too many turns for the user or organization this credential acts as (`rate_limited`). Shares the chat turn limiter, reports `retryable: true` and carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': + content: + application/json: + example: + error: + code: 404 + message: 'Resource not found' schema: - description: 'Seconds to wait before retrying this request.' - example: '60' - type: 'string' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Sign a daemon request with the caller''s identity' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List member assignments for a guardrail' tags: - - 'Interns' - /interns/{internId}/icon: - get: - description: 'Returns the icon image of one visible intern. Pass the intern''s `icon_sha256` as `v` to receive a response that can be cached indefinitely. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'getInternIcon' + - 'Guardrails' + x-speakeasy-name-override: 'listGuardrailMemberAssignments' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + post: + description: 'Assign multiple organization members to a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'bulkAssignMembersToGuardrail' parameters: - - description: 'ID of an intern visible to the authenticated API key.' + - description: 'The unique identifier of the guardrail' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 - type: 'string' - - description: 'The `icon_sha256` the caller expects.' - in: 'query' - name: 'v' - required: false - schema: - description: 'The `icon_sha256` the caller expects.' + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' + requestBody: + content: + application/json: + example: + member_user_ids: + - 'user_abc123' + - 'user_def456' + schema: + $ref: '#/components/schemas/BulkAssignMembersRequest' + required: true responses: '200': content: - image/*: + application/json: + example: + assigned_count: 2 schema: - format: 'binary' - type: 'string' - description: 'Icon image bytes.' - '401': + $ref: '#/components/schemas/BulkAssignMembersResponse' + description: 'Assignment result' + '400': content: application/json: example: error: - code: 401 - message: 'Invalid or missing API key' + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' - '403': + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': content: application/json: example: error: - code: 403 - message: 'Forbidden' + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, or the request used a regional hostname.' - '404': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '403': content: application/json: example: error: - code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' '500': content: application/json: example: error: code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - security: - - apiKey: [] - summary: 'Get an intern''s icon' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Bulk assign members to a guardrail' tags: - - 'Interns' - /interns/{internId}/invoke: + - 'Guardrails' + x-speakeasy-name-override: 'bulkAssignMembers' + /guardrails/{id}/assignments/members/remove: post: - description: "Starts a run on one of your interns and answers `202` with the `session_id` as soon as the intern accepts it. The run keeps going on the intern after the response. Nothing about its progress comes back on this request; the intern reports through its own tools, such as Slack.\n\nSend the same `session_id` later to continue the conversation, for example to hand the intern a decision on work it started. If that session already has a run going, the prompt is delivered into it and the status is `steered`. A `session_id` is accepted only from the caller it was issued to, on the same intern; any other, including sessions started from Slack or the chat endpoint, is refused with `404`.\n\nRuns started here self-drive: the intern consents to its own tool approvals, and a question it asks is answered by its own fallback. A run ends when the intern finishes it or after its execution deadline (1 hour by default).\n\nAvailable to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`." - operationId: 'invokeIntern' + description: 'Unassign multiple organization members from a specific guardrail. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'bulkUnassignMembersFromGuardrail' parameters: - - description: 'The intern to run.' + - description: 'The unique identifier of the guardrail' in: 'path' - name: 'internId' + name: 'id' required: true schema: - description: 'The intern to run.' - example: 'a11e0000-0000-4000-8000-000000000005' + description: 'The unique identifier of the guardrail' + example: '550e8400-e29b-41d4-a716-446655440000' + format: 'uuid' type: 'string' requestBody: content: application/json: + example: + member_user_ids: + - 'user_abc123' + - 'user_def456' schema: - $ref: '#/components/schemas/InternInvokeRequest' + $ref: '#/components/schemas/BulkUnassignMembersRequest' required: true responses: - '202': + '200': content: application/json: + example: + unassigned_count: 2 schema: - $ref: '#/components/schemas/InternInvokeAcceptedResponse' - description: 'The intern accepted the prompt. The run continues on the intern.' + $ref: '#/components/schemas/BulkUnassignMembersResponse' + description: 'Unassignment result' '400': content: application/json: example: error: code: 400 - message: 'Invalid invoke request (input: Too small: expected string to have >=1 characters).' - metadata: - reason: 'bad_request' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The body is not a valid request (`bad_request`).' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'No valid API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'This API key''s creator is no longer a member of the organization. Ask an organization admin to reassign the key to an active member.' + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The key belongs to a member who has left the organization and holds no grant.' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false - schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The caller is outside the interns programme, the intern does not exist for this key, or the `session_id` was not issued to this caller on this intern (`not_found`).' - '408': - content: - application/json: - example: - error: - code: 408 - message: 'Operation timed out after 60s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The request exceeded the route''s own deadline before the handler answered (`timeout`).' - '409': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 409 - message: 'This intern is not running.' - metadata: - reason: 'intern_not_ready' - retryable: true - schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern is not running or its runtime is too old to keep a run going without a connection (`intern_not_ready`), or the session already has a run that did not take the prompt (`busy`). A `busy` refusal carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request. Present only on a `busy` refusal.' - required: false + code: 500 + message: 'Internal Server Error' schema: - description: 'Seconds to wait before retrying this request. Present only on a `busy` refusal.' - example: '5' - type: 'string' - '413': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'Bulk unassign members from a guardrail' + tags: + - 'Guardrails' + x-speakeasy-name-override: 'bulkUnassignMembers' + /guardrails/assignments/keys: + get: + description: 'List all API key guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listKeyAssignments' + parameters: + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false + schema: + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' + responses: + '200': content: application/json: example: - error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + key_hash: 'c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93' + key_label: 'prod-key' + key_name: 'Production Key' + total_count: 1 schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The body exceeds 1 MiB (`payload_too_large`).' - '429': + $ref: '#/components/schemas/ListKeyAssignmentsResponse' + description: 'List of key assignments' + '400': content: application/json: example: error: - code: 429 - message: 'Too many intern turns. Please wait a moment.' - metadata: - reason: 'rate_limited' - retryable: true - schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'Too many turns for the user or organization this key acts as (`rate_limited`). It carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + code: 400 + message: 'Invalid request parameters' schema: - description: 'Seconds to wait before retrying this request.' - example: '60' - type: 'string' - '500': + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': content: application/json: example: error: - code: 500 - message: 'Could not look up the intern' - metadata: - reason: 'intern_unreachable' - retryable: true + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern could not be looked up, or authenticating the key failed.' - '502': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '403': content: application/json: example: error: - code: 502 - message: 'The intern could not be reached.' - metadata: - reason: 'intern_unreachable' - retryable: true + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern could not be reached, rejected the request, or refused the turn before it started.' - '503': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': content: application/json: example: error: - code: 503 - message: 'The intern cannot hold another run open across a question right now. Retry later.' - metadata: - reason: 'busy' - retryable: true - schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern cannot take another run right now (`busy`). It reports `retryable: true` and carries `Retry-After`.' - headers: - Retry-After: - description: 'Seconds to wait before retrying this request.' - required: true + code: 404 + message: 'Resource not found' schema: - description: 'Seconds to wait before retrying this request.' - example: '5' - type: 'string' - '504': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 504 - message: 'The intern did not answer in time.' - metadata: - reason: 'timeout' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternChatErrorResponse' - description: 'The intern did not accept the turn in time (`timeout`).' - security: - - apiKey: [] - summary: 'Start an intern run without waiting for it' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List all key assignments' tags: - - 'Interns' - x-speakeasy-group: 'interns' - x-speakeasy-name-override: 'invoke' - /interns/{internId}/provision: - post: - description: 'Starts the first boot, or resumes an intern after suspension. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'provisionIntern' + - 'Guardrails' + x-speakeasy-name-override: 'listKeyAssignments' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + /guardrails/assignments/members: + get: + description: 'List all organization member guardrail assignments for the authenticated user. [Management key](/docs/guides/overview/auth/management-api-keys) required.' + operationId: 'listMemberAssignments' parameters: - - description: 'ID of an intern visible to the authenticated API key.' - in: 'path' - name: 'internId' - required: true + - description: 'Number of records to skip for pagination' + in: 'query' + name: 'offset' + required: false schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 - type: 'string' + default: 0 + description: 'Number of records to skip for pagination' + example: 0 + minimum: 0 + type: + - 'integer' + - 'null' + - description: 'Maximum number of records to return (max 100)' + in: 'query' + name: 'limit' + required: false + schema: + default: 50 + description: 'Maximum number of records to return (max 100)' + example: 50 + maximum: 100 + minimum: 1 + type: 'integer' responses: - '202': + '200': content: application/json: example: - provisioning: true + data: + - assigned_by: 'user_abc123' + created_at: '2025-08-24T10:30:00Z' + guardrail_id: '550e8400-e29b-41d4-a716-446655440001' + id: '550e8400-e29b-41d4-a716-446655440000' + organization_id: 'org_xyz789' + user_id: 'user_abc123' + total_count: 1 schema: - $ref: '#/components/schemas/ProvisionInternResponse' - description: 'The operation was accepted.' + $ref: '#/components/schemas/ListMemberAssignmentsResponse' + description: 'List of member assignments' '400': content: application/json: example: error: code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' '401': content: application/json: example: error: code: 401 - message: 'Invalid or missing API key' + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' '403': content: application/json: example: error: code: 403 - message: 'Intern lifecycle writes are not enabled for this account' - metadata: - reason: 'lifecycle_writes_disabled' - retryable: false + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, the request used a regional hostname, or lifecycle writes are not enabled for the caller (`metadata.reason` is `lifecycle_writes_disabled`).' + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' '404': content: application/json: example: error: code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '409': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List all member assignments' + tags: + - 'Guardrails' + x-speakeasy-name-override: 'listMemberAssignments' + x-speakeasy-pagination: + inputs: + - in: 'parameters' + name: 'offset' + type: 'offset' + - in: 'parameters' + name: 'limit' + type: 'limit' + outputs: + results: '$.data' + type: 'offsetLimit' + /images: + post: + description: 'Generates an image from a text prompt via the image generation router' + operationId: 'createImages' + requestBody: + content: + application/json: + example: + model: 'bytedance-seed/seedream-4.5' + prompt: 'a red panda astronaut floating in space, studio lighting' + schema: + $ref: '#/components/schemas/ImageGenerationRequest' + required: true + responses: + '200': content: application/json: example: - error: - code: 409 - message: 'Another operation holds the intern, retry once it settles' - metadata: - reason: 'intern_busy' - retryable: true + created: 1748372400 + data: + - b64_json: '' + usage: + completion_tokens: 4175 + cost: 0.04 + prompt_tokens: 0 + total_tokens: 4175 schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern is not in a state that allows this operation. `metadata.reason` says whether to try again: `intern_busy` means another operation still holds the intern and carries `metadata.retryable: true`, so the same request may be sent again once it settles. A duplicate delete of an intern already being deleted is not a conflict and is accepted with 202.' - '413': + $ref: '#/components/schemas/ImageGenerationResponse' + text/event-stream: + example: + data: + b64_json: '' + partial_image_index: 0 + type: 'image_generation.partial_image' + schema: + $ref: '#/components/schemas/ImageStreamingResponse' + x-speakeasy-sse-sentinel: '[DONE]' + description: 'Image generation response' + '400': content: application/json: example: error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + code: 400 + message: 'Invalid request parameters' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/BadRequestResponse' + description: 'Bad Request - Invalid request parameters or malformed input' + '401': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 401 + message: 'Missing Authentication header' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '500': + $ref: '#/components/schemas/UnauthorizedResponse' + description: 'Unauthorized - Authentication required or invalid credentials' + '402': content: application/json: example: error: - code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + code: 402 + message: 'Insufficient credits. Add more using https://openrouter.ai/credits' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - '502': + $ref: '#/components/schemas/PaymentRequiredResponse' + description: 'Payment Required - Insufficient credits or quota to complete request' + '403': content: application/json: example: error: - code: 502 - message: 'The intern service could not be reached, retry the request' - metadata: - reason: 'upstream_unavailable' - retryable: true + code: 403 + message: 'Only management keys can perform this operation' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern service could not accept the operation.' - security: - - apiKey: [] - summary: 'Provision an intern' - tags: - - 'Interns' - /interns/{internId}/suspend: - post: - description: 'Stops the intern runtime while keeping its disk and configuration for a later provision call. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern''s own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required.' - operationId: 'suspendIntern' - parameters: - - description: 'ID of an intern visible to the authenticated API key.' - in: 'path' - name: 'internId' - required: true - schema: - description: 'ID of an intern visible to the authenticated API key.' - example: '7c9e6679-7425-40de-944b-e07fc1f90ae7' - minLength: 1 - type: 'string' - responses: - '200': + $ref: '#/components/schemas/ForbiddenResponse' + description: 'Forbidden - Authentication successful but insufficient permissions' + '404': content: application/json: example: - suspended: true + error: + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/SuspendInternResponse' - description: 'Intern suspended.' - '400': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '413': content: application/json: example: error: - code: 400 - message: 'Invalid request body' - metadata: - reason: 'invalid_body' - retryable: false + code: 413 + message: 'Request payload too large' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is invalid.' - '401': + $ref: '#/components/schemas/PayloadTooLargeResponse' + description: 'Payload Too Large - Request payload exceeds size limits' + '429': content: application/json: example: error: - code: 401 - message: 'Invalid or missing API key' + code: 429 + message: 'Rate limit exceeded' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'Missing, unknown or provisioning API key.' - '403': + $ref: '#/components/schemas/TooManyRequestsResponse' + description: 'Too Many Requests - Rate limit exceeded' + '500': content: application/json: example: error: - code: 403 - message: 'Intern lifecycle writes are not enabled for this account' - metadata: - reason: 'lifecycle_writes_disabled' - retryable: false + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The key owner no longer has access, the request used a regional hostname, or lifecycle writes are not enabled for the caller (`metadata.reason` is `lifecycle_writes_disabled`).' - '404': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + '502': content: application/json: example: error: - code: 404 - message: 'Intern not found' - metadata: - reason: 'not_found' - retryable: false + code: 502 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The caller is outside the Intern API programme, or the intern is hidden.' - '408': + $ref: '#/components/schemas/BadGatewayResponse' + description: 'Bad Gateway - Provider/upstream API failure' + '524': content: application/json: example: error: - code: 408 - message: 'Operation timed out after 10s. Please try again later.' - metadata: - reason: 'timeout' - retryable: true + code: 524 + message: 'Request timed out. Please try again later.' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request exceeded its route deadline. The deadline quoted in the message is the route''s own, so it differs between operations.' - '409': + $ref: '#/components/schemas/EdgeNetworkTimeoutResponse' + description: 'Infrastructure Timeout - Provider request timed out at edge network' + '529': content: application/json: example: error: - code: 409 - message: 'Another operation holds the intern, retry once it settles' - metadata: - reason: 'intern_busy' - retryable: true + code: 529 + message: 'Provider returned error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern is not in a state that allows this operation. `metadata.reason` says whether to try again: `intern_busy` means another operation still holds the intern and carries `metadata.retryable: true`, so the same request may be sent again once it settles. A duplicate delete of an intern already being deleted is not a conflict and is accepted with 202.' - '413': + $ref: '#/components/schemas/ProviderOverloadedResponse' + description: 'Provider Overloaded - Provider is temporarily overloaded' + summary: 'Generate an image' + tags: + - 'Images' + x-speakeasy-name-override: 'generate' + /images/models: + get: + description: 'Lists every image generation model with its top-level supported-parameter superset and a URL to its full per-endpoint records.' + operationId: 'listImageModels' + responses: + '200': content: application/json: example: - error: - code: 413 - message: 'Request body exceeds 1048576 bytes' - metadata: - reason: 'payload_too_large' - retryable: false + data: + - architecture: + input_modalities: + - 'text' + output_modalities: + - 'image' + created: 1692901234 + description: 'A text-to-image model.' + endpoints: '/api/v1/images/models/bytedance-seed/seedream-4.5/endpoints' + id: 'bytedance-seed/seedream-4.5' + name: 'Seedream 4.5' + supported_parameters: + resolution: + type: 'enum' + values: + - '1K' + - '2K' + - '4K' + supports_streaming: false schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is larger than 1048576 bytes.' - '415': + $ref: '#/components/schemas/ImageModelsListResponse' + description: 'List of image generation models' + '500': content: application/json: example: error: - code: 415 - message: 'Request body must be sent as application/json' - metadata: - reason: 'unsupported_media_type' - retryable: false + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request body is non-empty and its Content-Type is not application/json.' - '500': + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List image generation models' + tags: + - 'Images' + x-speakeasy-name-override: 'listModels' + /images/models/{author}/{slug}/endpoints: + get: + description: 'Returns the full per-endpoint records for an image model: each endpoint''s definitive supported parameters, pricing, and passthrough allowlist.' + operationId: 'listImageModelEndpoints' + parameters: + - description: 'Model author/organization' + in: 'path' + name: 'author' + required: true + schema: + description: 'Model author/organization' + example: 'bytedance-seed' + type: 'string' + - description: 'Model slug' + in: 'path' + name: 'slug' + required: true + schema: + description: 'Model slug' + example: 'seedream-4.5' + type: 'string' + responses: + '200': + content: + application/json: + example: + endpoints: + - allowed_passthrough_parameters: [] + pricing: + - billable: 'output_image' + cost_usd: 0.05 + unit: 'image' + provider_name: 'Bytedance' + provider_slug: 'bytedance' + provider_tag: 'bytedance' + supported_parameters: + resolution: + type: 'enum' + values: + - '1K' + - '2K' + - '4K' + supports_streaming: false + id: 'bytedance-seed/seedream-4.5' + schema: + $ref: '#/components/schemas/ImageModelEndpointsResponse' + description: 'The full per-endpoint records for an image model' + '404': content: application/json: example: error: - code: 500 - message: 'The request could not be completed' - metadata: - reason: 'internal_error' - retryable: true + code: 404 + message: 'Resource not found' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The request could not be completed. `metadata.reason` says whether to try again: `internal_error` is a transient failure and carries `metadata.retryable: true`, so the same request may be sent again, while `configuration_error` carries `retryable: false` because the next attempt reads the same missing binding or unusable stored credential.' - '502': + $ref: '#/components/schemas/NotFoundResponse' + description: 'Not Found - Resource does not exist' + '500': content: application/json: example: error: - code: 502 - message: 'The intern service could not be reached, retry the request' - metadata: - reason: 'upstream_unavailable' - retryable: true + code: 500 + message: 'Internal Server Error' schema: - $ref: '#/components/schemas/InternLifecycleError' - description: 'The intern service could not accept the operation.' - security: - - apiKey: [] - summary: 'Suspend an intern' + $ref: '#/components/schemas/InternalServerResponse' + description: 'Internal Server Error - Unexpected server error' + summary: 'List endpoints for an image model' tags: - - 'Interns' + - 'Images' + x-speakeasy-name-override: 'listModelEndpoints' /key: get: description: 'Get information on the API key associated with the current authentication session' @@ -56019,8 +52633,6 @@ tags: name: 'Guardrails' - description: 'Images endpoints' name: 'Images' - - description: 'Create, inspect, update, provision, suspend and delete OpenRouter interns through an API key, and talk to them: the chat route streams OpenAI-compatible completions from one intern, pausing as an `openrouter.provide_input` tool call when the intern needs your permission or an answer. Available to interns programme members; other callers receive 404. See https://openrouter.ai/docs/guides/ori/intern-chat.' - name: 'Interns' - description: 'Model information endpoints' name: 'Models' - description: 'OAuth authentication endpoints' diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index de539d2ae..9ddde0e32 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -2,8 +2,8 @@ speakeasyVersion: 1.787.0 sources: OpenRouter API: sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:979377bc2fc9dd14b59a56a29fd03c70e667facc0a54a44e38eb216e6c70bb12 - sourceBlobDigest: sha256:8dcda949dff806c81167813248db1fd3b237c36df97bed8e8d3faa1b68ca1323 + sourceRevisionDigest: sha256:adcdea8393524722e2246bab6e7ad9c52ae014faab41f4cf5b7d216f2e869070 + sourceBlobDigest: sha256:706d5278b55a87422b318d5d12aadf2f3dfe4ffa5fc56b1da93707ca14c90143 tags: - latest - 1.0.0 @@ -11,10 +11,10 @@ targets: openrouter: source: OpenRouter API sourceNamespace: open-router-chat-completions-api - sourceRevisionDigest: sha256:979377bc2fc9dd14b59a56a29fd03c70e667facc0a54a44e38eb216e6c70bb12 - sourceBlobDigest: sha256:8dcda949dff806c81167813248db1fd3b237c36df97bed8e8d3faa1b68ca1323 + sourceRevisionDigest: sha256:adcdea8393524722e2246bab6e7ad9c52ae014faab41f4cf5b7d216f2e869070 + sourceBlobDigest: sha256:706d5278b55a87422b318d5d12aadf2f3dfe4ffa5fc56b1da93707ca14c90143 codeSamplesNamespace: open-router-chat-completions-api-go-code-samples - codeSamplesRevisionDigest: sha256:d6372ccb1d583f2f3ff7adfc86010e065dd807e001b0c91a98adcccf54a1b149 + codeSamplesRevisionDigest: sha256:bd22aff746f74494020e3166af3c54dc472113195867af35102d08bed1105ee1 workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.787.0 diff --git a/README.md b/README.md index 590a86a3c..c7e227ebf 100644 --- a/README.md +++ b/README.md @@ -308,24 +308,6 @@ func main() { * [ListModels](docs/sdks/images/README.md#listmodels) - List image generation models * [ListModelEndpoints](docs/sdks/images/README.md#listmodelendpoints) - List endpoints for an image model -### [Interns](docs/sdks/interns/README.md) - -* [ListInterns](docs/sdks/interns/README.md#listinterns) - List interns -* [CreateIntern](docs/sdks/interns/README.md#createintern) - Create an intern -* [DeleteIntern](docs/sdks/interns/README.md#deleteintern) - Delete an intern -* [GetIntern](docs/sdks/interns/README.md#getintern) - Get an intern -* [UpdateIntern](docs/sdks/interns/README.md#updateintern) - Update an intern -* [GetInternConnections](docs/sdks/interns/README.md#getinternconnections) - List an intern's connections -* [GetInternDaemon](docs/sdks/interns/README.md#getinterndaemon) - Get an intern's daemon access -* [~~GetInternDaemonAccess~~](docs/sdks/interns/README.md#getinterndaemonaccess) - Get an intern's daemon access (deprecated alias) :warning: **Deprecated** -* [~~SignInternDaemonAccessRequest~~](docs/sdks/interns/README.md#signinterndaemonaccessrequest) - Sign a daemon request with the caller's identity (deprecated alias) :warning: **Deprecated** -* [SignInternDaemonRequest](docs/sdks/interns/README.md#signinterndaemonrequest) - Sign a daemon request with the caller's identity -* [GetInternIcon](docs/sdks/interns/README.md#getinternicon) - Get an intern's icon -* [ProvisionIntern](docs/sdks/interns/README.md#provisionintern) - Provision an intern -* [SuspendIntern](docs/sdks/interns/README.md#suspendintern) - Suspend an intern -* [Chat](docs/sdks/interns/README.md#chat) - Stream a chat completion with an intern -* [Invoke](docs/sdks/interns/README.md#invoke) - Start an intern run without waiting for it - ### [Models](docs/sdks/models/README.md) * [Get](docs/sdks/models/README.md#get) - Get a model by its slug diff --git a/RELEASES.md b/RELEASES.md index 762772eb4..cd8ca9793 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -3258,4 +3258,14 @@ Based on: ### Generated - [go v0.9.74] . ### Releases -- [Go v0.9.74] https://github.com/OpenRouterTeam/go-sdk/releases/tag/v0.9.74 - . \ No newline at end of file +- [Go v0.9.74] https://github.com/OpenRouterTeam/go-sdk/releases/tag/v0.9.74 - . + +## 2026-10-23 17:57:46 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.787.0 (2.914.0) https://github.com/speakeasy-api/speakeasy +### Generated +- [go v0.9.75] . +### Releases +- [Go v0.9.75] https://github.com/OpenRouterTeam/go-sdk/releases/tag/v0.9.75 - . \ No newline at end of file diff --git a/chat.go b/chat.go index 3ec067932..fedc9b46b 100644 --- a/chat.go +++ b/chat.go @@ -18,20 +18,6 @@ import ( "net/url" ) -// Chat - Stream a chat completion with an intern -// Sends a prompt to one of your interns and streams the reply as OpenAI-compatible server-sent events ending with `[DONE]`. The run executes on the intern, which may pause to ask you something. It then streams one `openrouter.provide_input` tool call and finishes with `finish_reason: "tool_calls"`, and the run stays open on the intern. -// -// Every response, whether it ends with `stop`, `tool_calls` or `error`, is followed by a final chunk with empty `choices` that carries `session_id`, then `data: [DONE]`. That chunk carries the `usage` the intern reported for the run, after `stop` or `error`, and `null` when the intern reported none. After `tool_calls` its `usage` is `null` because the turn is not over. Read through `[DONE]`: the `session_id` you need to reply arrives after the `tool_calls` finish chunk. -// -// To answer, send a second request with the same `session_id`, the assistant message echoing that tool call, and a `tool` message whose `tool_call_id` is the tool call id and whose `content` is the answer. The answer is delivered to the run that asked and the stream continues from where it paused. A question stays open for its interaction deadline (5 minutes by default) and the run is cancelled when that passes. Rejected replies do not extend the deadline. -// -// Closing the connection after the `[DONE]` that follows `finish_reason: "tool_calls"` keeps the run alive. Disconnecting while a response is still streaming cancels the run. The stream writes a `: keepalive` comment whenever nothing else has been written for 30 seconds, so a disconnect is noticed within that interval even while the intern is silent. -// -// A run the intern ends while you are still connected, by cancellation or by a deadline, ends the stream with a `finish_reason: "error"` chunk carrying `410` and reason `run_ended`, then the final empty-`choices` chunk and `[DONE]`. That error reports only an ending the intern confirmed. A connection that breaks without that confirmation ends with reason `stream_severed`, and a client that has already disconnected is promised no final event. -// -// Set `approval_mode` to `manual` to have the intern ask before approval-bearing tools such as the shell. Omitted, the run self-drives and consents on your behalf. The mode belongs to the run started by that prompt and must be repeated on later prompts. -// -// Available to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`. type Chat struct { rootSDK *OpenRouter sdkConfiguration config.SDKConfiguration diff --git a/docs/models/components/aabenchmarkentry.mdx b/docs/models/components/aabenchmarkentry.mdx index db2276972..e22b143cf 100644 --- a/docs/models/components/aabenchmarkentry.mdx +++ b/docs/models/components/aabenchmarkentry.mdx @@ -9,6 +9,6 @@ Artificial Analysis benchmark index scores. | Field | Type | Required | Description | Example | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `AgenticIndex` | `*float64` | ✅ | Artificial Analysis Agentic Index score | 55.8 | -| `CodingIndex` | `*float64` | ✅ | Artificial Analysis Coding Index score | 63.2 | -| `IntelligenceIndex` | `*float64` | ✅ | Artificial Analysis Intelligence Index score | 71.4 | \ No newline at end of file +| `AgenticIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Agentic Index score | 55.8 | +| `CodingIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Coding Index score | 63.2 | +| `IntelligenceIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Intelligence Index score | 71.4 | \ No newline at end of file diff --git a/docs/models/components/account.mdx b/docs/models/components/account.mdx deleted file mode 100644 index 1159af032..000000000 --- a/docs/models/components/account.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Account" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ActsAs` | `*string` | ✅ | Whose account it acts as, when known. | -| `IsYourAccountLinked` | `*bool` | ✅ | N/A | -| `Note` | `*string` | ✅ | N/A | -| `Scope` | [components.InternConnectionScope](../../models/components/internconnectionscope.mdx) | ✅ | `workspace` for a shared connection, `yours` for the key user's personal account, `shared` for a teammate's. | \ No newline at end of file diff --git a/docs/models/components/activityitem.mdx b/docs/models/components/activityitem.mdx index a661a114a..2207b59ba 100644 --- a/docs/models/components/activityitem.mdx +++ b/docs/models/components/activityitem.mdx @@ -6,16 +6,16 @@ title: "ActivityItem" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOKUsageInference` | `float64` | ✅ | BYOK inference cost in USD (external credits spent) | 0.012 | -| `CachedTokens` | `int64` | ✅ | Total prompt tokens read from the provider prompt cache (cache hits). Generally a subset of `prompt_tokens`; for replayed response-cache hits the provider may report the two counters over disjoint token sets, so `cached_tokens` can exceed `prompt_tokens`. | 10 | -| `CompletionTokens` | `int64` | ✅ | Total completion tokens generated | 125 | -| `Date` | `string` | ✅ | Date of the activity (YYYY-MM-DD format) | 2025-08-24 | -| `EndpointID` | `string` | ✅ | Unique identifier for the endpoint | 550e8400-e29b-41d4-a716-446655440000 | -| `Model` | `string` | ✅ | Model slug (e.g., "openai/gpt-4.1") | openai/gpt-4.1 | -| `ModelPermaslug` | `string` | ✅ | Model permaslug (e.g., "openai/gpt-4.1-2025-04-14") | openai/gpt-4.1-2025-04-14 | -| `PromptTokens` | `int64` | ✅ | Total prompt tokens used | 50 | -| `ProviderName` | `string` | ✅ | Name of the provider serving this endpoint | OpenAI | -| `ReasoningTokens` | `int64` | ✅ | Total reasoning tokens used | 25 | -| `Requests` | `int64` | ✅ | Number of requests made | 5 | -| `Usage` | `float64` | ✅ | Total cost in USD (OpenRouter credits spent) | 0.015 | -| `WorkspaceID` | `*string` | ➖ | ID of the workspace this activity is attributed to. Only present when `group_by=workspace` is passed; the response is then split per workspace. Activity recorded before workspace resolution existed is attributed to the account default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `BYOKUsageInference` | `float64` | :heavy_check_mark: | BYOK inference cost in USD (external credits spent) | 0.012 | +| `CachedTokens` | `int64` | :heavy_check_mark: | Total prompt tokens read from the provider prompt cache (cache hits). Generally a subset of `prompt_tokens`; for replayed response-cache hits the provider may report the two counters over disjoint token sets, so `cached_tokens` can exceed `prompt_tokens`. | 10 | +| `CompletionTokens` | `int64` | :heavy_check_mark: | Total completion tokens generated | 125 | +| `Date` | `string` | :heavy_check_mark: | Date of the activity (YYYY-MM-DD format) | 2025-08-24 | +| `EndpointID` | `string` | :heavy_check_mark: | Unique identifier for the endpoint | 550e8400-e29b-41d4-a716-446655440000 | +| `Model` | `string` | :heavy_check_mark: | Model slug (e.g., "openai/gpt-4.1") | openai/gpt-4.1 | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Model permaslug (e.g., "openai/gpt-4.1-2025-04-14") | openai/gpt-4.1-2025-04-14 | +| `PromptTokens` | `int64` | :heavy_check_mark: | Total prompt tokens used | 50 | +| `ProviderName` | `string` | :heavy_check_mark: | Name of the provider serving this endpoint | OpenAI | +| `ReasoningTokens` | `int64` | :heavy_check_mark: | Total reasoning tokens used | 25 | +| `Requests` | `int64` | :heavy_check_mark: | Number of requests made | 5 | +| `Usage` | `float64` | :heavy_check_mark: | Total cost in USD (OpenRouter credits spent) | 0.015 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | ID of the workspace this activity is attributed to. Only present when `group_by=workspace` is passed; the response is then split per workspace. Activity recorded before workspace resolution existed is attributed to the account default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/activityresponse.mdx b/docs/models/components/activityresponse.mdx index 541d5f7d7..4fd6bd116 100644 --- a/docs/models/components/activityresponse.mdx +++ b/docs/models/components/activityresponse.mdx @@ -6,4 +6,4 @@ title: "ActivityResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `Data` | [][components.ActivityItem](../../models/components/activityitem.mdx) | ✅ | List of activity items | \ No newline at end of file +| `Data` | [][components.ActivityItem](../../models/components/activityitem.mdx) | :heavy_check_mark: | List of activity items | \ No newline at end of file diff --git a/docs/models/components/additionaltoolsitem.mdx b/docs/models/components/additionaltoolsitem.mdx index 3ff9dffec..3c00f4bd5 100644 --- a/docs/models/components/additionaltoolsitem.mdx +++ b/docs/models/components/additionaltoolsitem.mdx @@ -9,7 +9,7 @@ Additional tools made available to the model at this point in the input | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Role` | [components.AdditionalToolsItemRole](../../models/components/additionaltoolsitemrole.mdx) | ✅ | N/A | -| `Tools` | [][components.AdditionalToolsItemToolUnion](../../models/components/additionaltoolsitemtoolunion.mdx) | ✅ | N/A | -| `Type` | [components.TypeAdditionalTools](../../models/components/typeadditionaltools.mdx) | ✅ | N/A | \ No newline at end of file +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Role` | [components.AdditionalToolsItemRole](../../models/components/additionaltoolsitemrole.mdx) | :heavy_check_mark: | N/A | +| `Tools` | [][components.AdditionalToolsItemToolUnion](../../models/components/additionaltoolsitemtoolunion.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeAdditionalTools](../../models/components/typeadditionaltools.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/additionaltoolsitemtool.mdx b/docs/models/components/additionaltoolsitemtool.mdx index dee019313..aac7add44 100644 --- a/docs/models/components/additionaltoolsitemtool.mdx +++ b/docs/models/components/additionaltoolsitemtool.mdx @@ -6,5 +6,5 @@ title: "AdditionalToolsItemTool" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/additionaltoolsitemtoolfunction.mdx b/docs/models/components/additionaltoolsitemtoolfunction.mdx index 5ce93ef91..e77af3e59 100644 --- a/docs/models/components/additionaltoolsitemtoolfunction.mdx +++ b/docs/models/components/additionaltoolsitemtoolfunction.mdx @@ -9,12 +9,12 @@ Function tool definition | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Parameters` | map[string]`any` | ✅ | N/A | | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Type` | [components.AdditionalToolsItemTypeFunction](../../models/components/additionaltoolsitemtypefunction.mdx) | ✅ | N/A | | -| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.AdditionalToolsItemAllowedCaller](../../models/components/additionaltoolsitemallowedcaller.mdx)] | ➖ | N/A | | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | -| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | \ No newline at end of file +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Parameters` | map[string]`any` | :heavy_check_mark: | N/A | | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.AdditionalToolsItemTypeFunction](../../models/components/additionaltoolsitemtypefunction.mdx) | :heavy_check_mark: | N/A | | +| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.AdditionalToolsItemAllowedCaller](../../models/components/additionaltoolsitemallowedcaller.mdx)] | :heavy_minus_sign: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | +| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/advisorreasoning.mdx b/docs/models/components/advisorreasoning.mdx index f6c42539f..e1eb8f5f7 100644 --- a/docs/models/components/advisorreasoning.mdx +++ b/docs/models/components/advisorreasoning.mdx @@ -9,5 +9,5 @@ Reasoning configuration forwarded to the advisor call. Use this to control reaso | Field | Type | Required | Description | | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | -| `Effort` | [*components.AdvisorReasoningEffort](../../models/components/advisorreasoningeffort.mdx) | ➖ | Reasoning effort level for the advisor call. | -| `MaxTokens` | `*int64` | ➖ | Maximum number of reasoning tokens the advisor may use. | \ No newline at end of file +| `Effort` | [*components.AdvisorReasoningEffort](../../models/components/advisorreasoningeffort.mdx) | :heavy_minus_sign: | Reasoning effort level for the advisor call. | +| `MaxTokens` | `*int64` | :heavy_minus_sign: | Maximum number of reasoning tokens the advisor may use. | \ No newline at end of file diff --git a/docs/models/components/advisorservertoolconfig.mdx b/docs/models/components/advisorservertoolconfig.mdx index c1168ce9e..6a2c62132 100644 --- a/docs/models/components/advisorservertoolconfig.mdx +++ b/docs/models/components/advisorservertoolconfig.mdx @@ -9,11 +9,11 @@ Configuration for one openrouter:advisor server tool entry. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ForwardTranscript` | `*bool` | ➖ | When true, the full parent conversation is forwarded to the advisor so it sees the same context the executor does (and the tool-call `prompt`, if given, is appended as a final user turn). When false or omitted, the advisor receives only the `prompt` the executor passes in the tool call. | false | -| `Instructions` | `*string` | ➖ | System instructions for the advisor sub-agent. When omitted, the advisor responds with no system prompt of its own. | You are a senior staff engineer. Give a focused, decisive plan. | -| `MaxCompletionTokens` | `*int64` | ➖ | Maximum number of output tokens (including reasoning) the advisor may produce. When omitted, the provider's default applies. | 2048 | -| `Model` | `*string` | ➖ | Slug of the advisor model to consult (any OpenRouter model). When omitted, the executor can choose it via the tool call's `model` argument; if neither is set, the model from the outer API request is used. | ~anthropic/claude-opus-latest | -| `Name` | `*string` | ➖ | Optional name for this advisor. The model sees one tool per named advisor (and one default for an unnamed entry). Names must be unique across advisor entries. Letters, digits, spaces, underscores, and dashes; trimmed; 1–64 chars. | reviewer | -| `Reasoning` | [*components.AdvisorReasoning](../../models/components/advisorreasoning.mdx) | ➖ | Reasoning configuration forwarded to the advisor call. Use this to control reasoning effort and token budget for models that support extended thinking. | \{
"effort": "high"
} | -| `Stream` | `*bool` | ➖ | When true, the advisor's advice streams incrementally as it is produced. In the Responses API this emits `response.output_text.delta` events targeting the advisor output item; the final `advice` field is still set on the completed item. Has no effect on the Chat Completions API (where the advice arrives only as the final tool result). When false or omitted, the advice arrives only as the final result. | false | -| `Temperature` | `*float64` | ➖ | Sampling temperature forwarded to the advisor call. When omitted, the provider's default applies. | 0.7 | \ No newline at end of file +| `ForwardTranscript` | `*bool` | :heavy_minus_sign: | When true, the full parent conversation is forwarded to the advisor so it sees the same context the executor does (and the tool-call `prompt`, if given, is appended as a final user turn). When false or omitted, the advisor receives only the `prompt` the executor passes in the tool call. | false | +| `Instructions` | `*string` | :heavy_minus_sign: | System instructions for the advisor sub-agent. When omitted, the advisor responds with no system prompt of its own. | You are a senior staff engineer. Give a focused, decisive plan. | +| `MaxCompletionTokens` | `*int64` | :heavy_minus_sign: | Maximum number of output tokens (including reasoning) the advisor may produce. When omitted, the provider's default applies. | 2048 | +| `Model` | `*string` | :heavy_minus_sign: | Slug of the advisor model to consult (any OpenRouter model). When omitted, the executor can choose it via the tool call's `model` argument; if neither is set, the model from the outer API request is used. | ~anthropic/claude-opus-latest | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for this advisor. The model sees one tool per named advisor (and one default for an unnamed entry). Names must be unique across advisor entries. Letters, digits, spaces, underscores, and dashes; trimmed; 1–64 chars. | reviewer | +| `Reasoning` | [*components.AdvisorReasoning](../../models/components/advisorreasoning.mdx) | :heavy_minus_sign: | Reasoning configuration forwarded to the advisor call. Use this to control reasoning effort and token budget for models that support extended thinking. | \{
"effort": "high"
} | +| `Stream` | `*bool` | :heavy_minus_sign: | When true, the advisor's advice streams incrementally as it is produced. In the Responses API this emits `response.output_text.delta` events targeting the advisor output item; the final `advice` field is still set on the completed item. Has no effect on the Chat Completions API (where the advice arrives only as the final tool result). When false or omitted, the advice arrives only as the final result. | false | +| `Temperature` | `*float64` | :heavy_minus_sign: | Sampling temperature forwarded to the advisor call. When omitted, the provider's default applies. | 0.7 | \ No newline at end of file diff --git a/docs/models/components/advisorservertoolopenrouter.mdx b/docs/models/components/advisorservertoolopenrouter.mdx index 6ca538efa..7d498b118 100644 --- a/docs/models/components/advisorservertoolopenrouter.mdx +++ b/docs/models/components/advisorservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: consults a higher-intelligence advisor model (a | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.AdvisorServerToolConfig](../../models/components/advisorservertoolconfig.mdx) | ➖ | Configuration for one openrouter:advisor server tool entry. | \{
"model": "~anthropic/claude-opus-latest",
"name": "reviewer"
} | -| `Type` | [components.AdvisorServerToolOpenRouterType](../../models/components/advisorservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.AdvisorServerToolConfig](../../models/components/advisorservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for one openrouter:advisor server tool entry. | \{
"model": "~anthropic/claude-opus-latest",
"name": "reviewer"
} | +| `Type` | [components.AdvisorServerToolOpenRouterType](../../models/components/advisorservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/agent.mdx b/docs/models/components/agent.mdx index f449b49ca..6b4b43330 100644 --- a/docs/models/components/agent.mdx +++ b/docs/models/components/agent.mdx @@ -6,5 +6,5 @@ title: "Agent" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `AgentName` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `AgentName` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/agentmessageitem.mdx b/docs/models/components/agentmessageitem.mdx index 1bb5cfa4b..a11f51898 100644 --- a/docs/models/components/agentmessageitem.mdx +++ b/docs/models/components/agentmessageitem.mdx @@ -9,10 +9,10 @@ A message routed between agents in a multi-agent session | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `Agent` | optionalnullable.OptionalNullable[[components.Agent](../../models/components/agent.mdx)] | ➖ | N/A | | -| `Author` | `string` | ✅ | N/A | | -| `Content` | [][components.AgentMessageItemContentUnion](../../models/components/agentmessageitemcontentunion.mdx) | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Recipient` | `string` | ✅ | N/A | | -| `Type` | [components.TypeAgentMessage](../../models/components/typeagentmessage.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"author": "/root/worker",
"content": [
\{
"text": "Task complete.",
"type": "input_text"
}
],
"recipient": "/root",
"type": "agent_message"
} | \ No newline at end of file +| `Agent` | optionalnullable.OptionalNullable[[components.Agent](../../models/components/agent.mdx)] | :heavy_minus_sign: | N/A | | +| `Author` | `string` | :heavy_check_mark: | N/A | | +| `Content` | [][components.AgentMessageItemContentUnion](../../models/components/agentmessageitemcontentunion.mdx) | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Recipient` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeAgentMessage](../../models/components/typeagentmessage.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"author": "/root/worker",
"content": [
\{
"text": "Task complete.",
"type": "input_text"
}
],
"recipient": "/root",
"type": "agent_message"
} | \ No newline at end of file diff --git a/docs/models/components/agentmessageitemcontentinputimage.mdx b/docs/models/components/agentmessageitemcontentinputimage.mdx index 34d75d235..d42349fe7 100644 --- a/docs/models/components/agentmessageitemcontentinputimage.mdx +++ b/docs/models/components/agentmessageitemcontentinputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Detail` | [components.AgentMessageItemDetail](../../models/components/agentmessageitemdetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.AgentMessageItemTypeInputImage](../../models/components/agentmessageitemtypeinputimage.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.AgentMessageItemDetail](../../models/components/agentmessageitemdetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.AgentMessageItemTypeInputImage](../../models/components/agentmessageitemtypeinputimage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/alignment.mdx b/docs/models/components/alignment.mdx index e9a07d710..b4c38ece3 100644 --- a/docs/models/components/alignment.mdx +++ b/docs/models/components/alignment.mdx @@ -9,4 +9,4 @@ Beta. The result of the alignment plugin for this request; the shape may change. | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Calls` | [][components.AlignmentCallRecord](../../models/components/alignmentcallrecord.mdx) | ✅ | One record per evaluated assistant message of the request, in the order the messages were produced. Empty when no message of the request had content to evaluate. | \ No newline at end of file +| `Calls` | [][components.AlignmentCallRecord](../../models/components/alignmentcallrecord.mdx) | :heavy_check_mark: | One record per evaluated assistant message of the request, in the order the messages were produced. Empty when no message of the request had content to evaluate. | \ No newline at end of file diff --git a/docs/models/components/alignmentallowedcallrecord.mdx b/docs/models/components/alignmentallowedcallrecord.mdx index 85b7b6977..c53c0c1fc 100644 --- a/docs/models/components/alignmentallowedcallrecord.mdx +++ b/docs/models/components/alignmentallowedcallrecord.mdx @@ -6,6 +6,6 @@ title: "AlignmentAllowedCallRecord" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Call` | `int64` | ✅ | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | -| `Outcome` | [components.AlignmentAllowedCallRecordOutcome](../../models/components/alignmentallowedcallrecordoutcome.mdx) | ✅ | N/A | -| `Rules` | [][components.AlignmentRuleRecord](../../models/components/alignmentrulerecord.mdx) | ✅ | One record per rule, in the order of `rules` in the request. | \ No newline at end of file +| `Call` | `int64` | :heavy_check_mark: | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | +| `Outcome` | [components.AlignmentAllowedCallRecordOutcome](../../models/components/alignmentallowedcallrecordoutcome.mdx) | :heavy_check_mark: | N/A | +| `Rules` | [][components.AlignmentRuleRecord](../../models/components/alignmentrulerecord.mdx) | :heavy_check_mark: | One record per rule, in the order of `rules` in the request. | \ No newline at end of file diff --git a/docs/models/components/alignmentblockedcallrecord.mdx b/docs/models/components/alignmentblockedcallrecord.mdx index c03d0c1d4..699c22f59 100644 --- a/docs/models/components/alignmentblockedcallrecord.mdx +++ b/docs/models/components/alignmentblockedcallrecord.mdx @@ -6,6 +6,6 @@ title: "AlignmentBlockedCallRecord" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Call` | `int64` | ✅ | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | -| `Outcome` | [components.AlignmentBlockedCallRecordOutcome](../../models/components/alignmentblockedcallrecordoutcome.mdx) | ✅ | N/A | -| `Rules` | [][components.AlignmentRuleRecord](../../models/components/alignmentrulerecord.mdx) | ✅ | One record per rule, in the order of `rules` in the request. | \ No newline at end of file +| `Call` | `int64` | :heavy_check_mark: | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | +| `Outcome` | [components.AlignmentBlockedCallRecordOutcome](../../models/components/alignmentblockedcallrecordoutcome.mdx) | :heavy_check_mark: | N/A | +| `Rules` | [][components.AlignmentRuleRecord](../../models/components/alignmentrulerecord.mdx) | :heavy_check_mark: | One record per rule, in the order of `rules` in the request. | \ No newline at end of file diff --git a/docs/models/components/alignmentchataudio.mdx b/docs/models/components/alignmentchataudio.mdx index 9d4d73d3e..610df35df 100644 --- a/docs/models/components/alignmentchataudio.mdx +++ b/docs/models/components/alignmentchataudio.mdx @@ -9,5 +9,5 @@ The audio of the withheld message: its `id` and `transcript`. The plugin does no | Field | Type | Required | Description | | ----------------------------- | ----------------------------- | ----------------------------- | ----------------------------- | -| `ID` | `*string` | ➖ | The provider id of the audio. | -| `Transcript` | `string` | ✅ | The transcript of the audio. | \ No newline at end of file +| `ID` | `*string` | :heavy_minus_sign: | The provider id of the audio. | +| `Transcript` | `string` | :heavy_check_mark: | The transcript of the audio. | \ No newline at end of file diff --git a/docs/models/components/alignmentchatimage.mdx b/docs/models/components/alignmentchatimage.mdx index 61192c4a7..7db4664c9 100644 --- a/docs/models/components/alignmentchatimage.mdx +++ b/docs/models/components/alignmentchatimage.mdx @@ -6,5 +6,5 @@ title: "AlignmentChatImage" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `ImageURL` | [components.AlignmentChatImageImageURL](../../models/components/alignmentchatimageimageurl.mdx) | ✅ | N/A | -| `Type` | [components.AlignmentChatImageType](../../models/components/alignmentchatimagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.AlignmentChatImageImageURL](../../models/components/alignmentchatimageimageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AlignmentChatImageType](../../models/components/alignmentchatimagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/alignmentchatimageimageurl.mdx b/docs/models/components/alignmentchatimageimageurl.mdx index f3458b63d..fb39cc71c 100644 --- a/docs/models/components/alignmentchatimageimageurl.mdx +++ b/docs/models/components/alignmentchatimageimageurl.mdx @@ -6,4 +6,4 @@ title: "AlignmentChatImageImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/alignmentchatrejected.mdx b/docs/models/components/alignmentchatrejected.mdx index ed8ad7b2a..515f2d0a5 100644 --- a/docs/models/components/alignmentchatrejected.mdx +++ b/docs/models/components/alignmentchatrejected.mdx @@ -9,9 +9,9 @@ The assistant message of the withheld turn, without reasoning. `audio` holds the | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Audio` | [*components.AlignmentChatAudio](../../models/components/alignmentchataudio.mdx) | ➖ | The audio of the withheld message: its `id` and `transcript`. The plugin does not retain `data` or `expires_at`. | \{
"id": "audio_abc123",
"transcript": "Sure, I can take 20% off your order."
} | -| `Content` | `*string` | ✅ | N/A | | -| `Images` | [][components.AlignmentChatImage](../../models/components/alignmentchatimage.mdx) | ➖ | N/A | | -| `Refusal` | `*string` | ✅ | N/A | | -| `Role` | [components.AlignmentChatRejectedRole](../../models/components/alignmentchatrejectedrole.mdx) | ✅ | N/A | | -| `ToolCalls` | [][components.AlignmentChatToolCall](../../models/components/alignmentchattoolcall.mdx) | ➖ | N/A | | \ No newline at end of file +| `Audio` | [*components.AlignmentChatAudio](../../models/components/alignmentchataudio.mdx) | :heavy_minus_sign: | The audio of the withheld message: its `id` and `transcript`. The plugin does not retain `data` or `expires_at`. | \{
"id": "audio_abc123",
"transcript": "Sure, I can take 20% off your order."
} | +| `Content` | `*string` | :heavy_check_mark: | N/A | | +| `Images` | [][components.AlignmentChatImage](../../models/components/alignmentchatimage.mdx) | :heavy_minus_sign: | N/A | | +| `Refusal` | `*string` | :heavy_check_mark: | N/A | | +| `Role` | [components.AlignmentChatRejectedRole](../../models/components/alignmentchatrejectedrole.mdx) | :heavy_check_mark: | N/A | | +| `ToolCalls` | [][components.AlignmentChatToolCall](../../models/components/alignmentchattoolcall.mdx) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/alignmentchattoolcall.mdx b/docs/models/components/alignmentchattoolcall.mdx index 347bb0223..878956fe6 100644 --- a/docs/models/components/alignmentchattoolcall.mdx +++ b/docs/models/components/alignmentchattoolcall.mdx @@ -6,6 +6,6 @@ title: "AlignmentChatToolCall" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Function` | [components.AlignmentChatToolCallFunction](../../models/components/alignmentchattoolcallfunction.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Type` | [components.AlignmentChatToolCallType](../../models/components/alignmentchattoolcalltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Function` | [components.AlignmentChatToolCallFunction](../../models/components/alignmentchattoolcallfunction.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AlignmentChatToolCallType](../../models/components/alignmentchattoolcalltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/alignmentchattoolcallfunction.mdx b/docs/models/components/alignmentchattoolcallfunction.mdx index 5d128bbf9..937003467 100644 --- a/docs/models/components/alignmentchattoolcallfunction.mdx +++ b/docs/models/components/alignmentchattoolcallfunction.mdx @@ -6,5 +6,5 @@ title: "AlignmentChatToolCallFunction" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Arguments` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/alignmentplugin.mdx b/docs/models/components/alignmentplugin.mdx index 952f3a4f8..9216a017f 100644 --- a/docs/models/components/alignmentplugin.mdx +++ b/docs/models/components/alignmentplugin.mdx @@ -9,9 +9,9 @@ Beta. States the listed rules to the model and evaluates every turn against them | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `ID` | [components.AlignmentPluginID](../../models/components/alignmentpluginid.mdx) | ✅ | N/A | | -| `Instruct` | `*bool` | ➖ | Whether the rules are stated to the model in a system message on every provider call. Default true. | | -| `MaxRetries` | `*int64` | ➖ | Provider calls made again after a blocked turn, in enforce mode. Default 1. | | -| `Mode` | [*components.AlignmentPluginMode](../../models/components/alignmentpluginmode.mdx) | ➖ | `enforce`: a turn that breaks a rule is withheld, retried, and finally returned as an error. `audit`: every turn is evaluated and returned. Default `audit`. | | -| `Rules` | [][components.AlignmentRule](../../models/components/alignmentrule.mdx) | ✅ | Rules the reply must follow. Each rule is evaluated on its own. | [
\{
"rule": "Never offer a discount.",
"watch": [
"content"
]
},
\{
"rule": "Never call delete_file.",
"watch": [
"tool_calls"
]
}
] | -| `Threshold` | `*float64` | ➖ | Probability at or above which a rule is broken, from 0.01 to 1. Default 0.7. | | \ No newline at end of file +| `ID` | [components.AlignmentPluginID](../../models/components/alignmentpluginid.mdx) | :heavy_check_mark: | N/A | | +| `Instruct` | `*bool` | :heavy_minus_sign: | Whether the rules are stated to the model in a system message on every provider call. Default true. | | +| `MaxRetries` | `*int64` | :heavy_minus_sign: | Provider calls made again after a blocked turn, in enforce mode. Default 1. | | +| `Mode` | [*components.AlignmentPluginMode](../../models/components/alignmentpluginmode.mdx) | :heavy_minus_sign: | `enforce`: a turn that breaks a rule is withheld, retried, and finally returned as an error. `audit`: every turn is evaluated and returned. Default `audit`. | | +| `Rules` | [][components.AlignmentRule](../../models/components/alignmentrule.mdx) | :heavy_check_mark: | Rules the reply must follow. Each rule is evaluated on its own. | [
\{
"rule": "Never offer a discount.",
"watch": [
"content"
]
},
\{
"rule": "Never call delete_file.",
"watch": [
"tool_calls"
]
}
] | +| `Threshold` | `*float64` | :heavy_minus_sign: | Probability at or above which a rule is broken, from 0.01 to 1. Default 0.7. | | \ No newline at end of file diff --git a/docs/models/components/alignmentrule.mdx b/docs/models/components/alignmentrule.mdx index b4412ef29..6060009c9 100644 --- a/docs/models/components/alignmentrule.mdx +++ b/docs/models/components/alignmentrule.mdx @@ -6,5 +6,5 @@ title: "AlignmentRule" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Rule` | `string` | ✅ | Text that states what the reply must do or must not do. | -| `Watch` | [][components.Watch](../../models/components/watch.mdx) | ✅ | Fields of the assistant message the rule applies to. The rule is evaluated on a message that has at least one of them and is not applicable to any other message. | \ No newline at end of file +| `Rule` | `string` | :heavy_check_mark: | Text that states what the reply must do or must not do. | +| `Watch` | [][components.Watch](../../models/components/watch.mdx) | :heavy_check_mark: | Fields of the assistant message the rule applies to. The rule is evaluated on a message that has at least one of them and is not applicable to any other message. | \ No newline at end of file diff --git a/docs/models/components/alignmentrulerecord.mdx b/docs/models/components/alignmentrulerecord.mdx index f0243d7ce..2cba8394d 100644 --- a/docs/models/components/alignmentrulerecord.mdx +++ b/docs/models/components/alignmentrulerecord.mdx @@ -6,6 +6,6 @@ title: "AlignmentRuleRecord" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Applicable` | `bool` | ✅ | Whether the message has a field the rule watches. Only an applicable rule is evaluated. | -| `Broken` | `bool` | ✅ | Whether probability is at or above the threshold. False when the rule is not applicable. | -| `Probability` | `*float64` | ✅ | The evaluator's probability that the turn breaks the rule; null when the rule is not applicable. | \ No newline at end of file +| `Applicable` | `bool` | :heavy_check_mark: | Whether the message has a field the rule watches. Only an applicable rule is evaluated. | +| `Broken` | `bool` | :heavy_check_mark: | Whether probability is at or above the threshold. False when the rule is not applicable. | +| `Probability` | `*float64` | :heavy_check_mark: | The evaluator's probability that the turn breaks the rule; null when the rule is not applicable. | \ No newline at end of file diff --git a/docs/models/components/alignmentunavailablecallrecord.mdx b/docs/models/components/alignmentunavailablecallrecord.mdx index 8fe4b317f..53c05b2d0 100644 --- a/docs/models/components/alignmentunavailablecallrecord.mdx +++ b/docs/models/components/alignmentunavailablecallrecord.mdx @@ -6,6 +6,6 @@ title: "AlignmentUnavailableCallRecord" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Call` | `int64` | ✅ | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | -| `Outcome` | [components.AlignmentUnavailableCallRecordOutcome](../../models/components/alignmentunavailablecallrecordoutcome.mdx) | ✅ | N/A | -| `Reason` | [components.AlignmentUnavailableCallRecordReason](../../models/components/alignmentunavailablecallrecordreason.mdx) | ✅ | N/A | \ No newline at end of file +| `Call` | `int64` | :heavy_check_mark: | Number of the record, from 1. A record is one evaluated assistant message; a model call of a server-tool loop that produces several messages has one record per message, and a retry continues the numbering. | +| `Outcome` | [components.AlignmentUnavailableCallRecordOutcome](../../models/components/alignmentunavailablecallrecordoutcome.mdx) | :heavy_check_mark: | N/A | +| `Reason` | [components.AlignmentUnavailableCallRecordReason](../../models/components/alignmentunavailablecallrecordreason.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/allowedtools.mdx b/docs/models/components/allowedtools.mdx index 3c7405e89..cee77733f 100644 --- a/docs/models/components/allowedtools.mdx +++ b/docs/models/components/allowedtools.mdx @@ -6,5 +6,5 @@ title: "AllowedTools" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ReadOnly` | `*bool` | ➖ | N/A | -| `ToolNames` | []`string` | ➖ | N/A | \ No newline at end of file +| `ReadOnly` | `*bool` | :heavy_minus_sign: | N/A | +| `ToolNames` | []`string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/always.mdx b/docs/models/components/always.mdx index 6b42f544b..a10039076 100644 --- a/docs/models/components/always.mdx +++ b/docs/models/components/always.mdx @@ -6,4 +6,4 @@ title: "Always" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ToolNames` | []`string` | ➖ | N/A | \ No newline at end of file +| `ToolNames` | []`string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/annotationaddedevent.mdx b/docs/models/components/annotationaddedevent.mdx index 38d5fa678..d7a722dc5 100644 --- a/docs/models/components/annotationaddedevent.mdx +++ b/docs/models/components/annotationaddedevent.mdx @@ -9,10 +9,10 @@ Event emitted when a text annotation is added to output | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Annotation` | [components.OpenAIResponsesAnnotation](../../models/components/openairesponsesannotation.mdx) | ✅ | N/A | \{
"file_id": "file-abc123",
"filename": "research_paper.pdf",
"index": 0,
"type": "file_citation"
} | -| `AnnotationIndex` | `int64` | ✅ | N/A | | -| `ContentIndex` | `int64` | ✅ | N/A | | -| `ItemID` | `string` | ✅ | N/A | | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.AnnotationAddedEventType](../../models/components/annotationaddedeventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Annotation` | [components.OpenAIResponsesAnnotation](../../models/components/openairesponsesannotation.mdx) | :heavy_check_mark: | N/A | \{
"file_id": "file-abc123",
"filename": "research_paper.pdf",
"index": 0,
"type": "file_citation"
} | +| `AnnotationIndex` | `int64` | :heavy_check_mark: | N/A | | +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | | +| `ItemID` | `string` | :heavy_check_mark: | N/A | | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnnotationAddedEventType](../../models/components/annotationaddedeventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/annotationfile.mdx b/docs/models/components/annotationfile.mdx index 23f8622dd..bfd4ada5d 100644 --- a/docs/models/components/annotationfile.mdx +++ b/docs/models/components/annotationfile.mdx @@ -6,5 +6,5 @@ title: "AnnotationFile" | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `File` | [components.BatchObjectFile](../../models/components/batchobjectfile.mdx) | ✅ | N/A | -| `Type` | [components.AnnotationTypeFile](../../models/components/annotationtypefile.mdx) | ✅ | N/A | \ No newline at end of file +| `File` | [components.BatchObjectFile](../../models/components/batchobjectfile.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnnotationTypeFile](../../models/components/annotationtypefile.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/annotationurlcitation.mdx b/docs/models/components/annotationurlcitation.mdx index 8d77c0f4e..5cc8d6770 100644 --- a/docs/models/components/annotationurlcitation.mdx +++ b/docs/models/components/annotationurlcitation.mdx @@ -6,5 +6,5 @@ title: "AnnotationURLCitation" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Type` | [components.AnnotationTypeURLCitation](../../models/components/annotationtypeurlcitation.mdx) | ✅ | N/A | -| `URLCitation` | [components.BatchObjectURLCitation](../../models/components/batchobjecturlcitation.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnnotationTypeURLCitation](../../models/components/annotationtypeurlcitation.mdx) | :heavy_check_mark: | N/A | +| `URLCitation` | [components.BatchObjectURLCitation](../../models/components/batchobjecturlcitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/annotationwebsearchcitation.mdx b/docs/models/components/annotationwebsearchcitation.mdx index 3f3d9cbbe..ca239e366 100644 --- a/docs/models/components/annotationwebsearchcitation.mdx +++ b/docs/models/components/annotationwebsearchcitation.mdx @@ -6,5 +6,5 @@ title: "AnnotationWebSearchCitation" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Type` | [components.TypeWebSearchCitation](../../models/components/typewebsearchcitation.mdx) | ✅ | N/A | -| `WebSearchCitation` | [components.WebSearchCitation](../../models/components/websearchcitation.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.TypeWebSearchCitation](../../models/components/typewebsearchcitation.mdx) | :heavy_check_mark: | N/A | +| `WebSearchCitation` | [components.WebSearchCitation](../../models/components/websearchcitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicadvisormessageusageiteration.mdx b/docs/models/components/anthropicadvisormessageusageiteration.mdx index 496027c36..ee2480e10 100644 --- a/docs/models/components/anthropicadvisormessageusageiteration.mdx +++ b/docs/models/components/anthropicadvisormessageusageiteration.mdx @@ -6,10 +6,10 @@ title: "AnthropicAdvisorMessageUsageIteration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | -| `CacheCreationInputTokens` | `*int64` | ➖ | N/A | | -| `CacheReadInputTokens` | `*int64` | ➖ | N/A | | -| `InputTokens` | `*int64` | ➖ | N/A | | -| `OutputTokens` | `*int64` | ➖ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicAdvisorMessageUsageIterationType](../../models/components/anthropicadvisormessageusageiterationtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | +| `CacheCreationInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `CacheReadInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `InputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `OutputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicAdvisorMessageUsageIterationType](../../models/components/anthropicadvisormessageusageiterationtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicadvisortoolresult.mdx b/docs/models/components/anthropicadvisortoolresult.mdx index 3c408c4f4..24988a6f8 100644 --- a/docs/models/components/anthropicadvisortoolresult.mdx +++ b/docs/models/components/anthropicadvisortoolresult.mdx @@ -6,6 +6,6 @@ title: "AnthropicAdvisorToolResult" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Content` | map[string]`any` | ✅ | N/A | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicAdvisorToolResultType](../../models/components/anthropicadvisortoolresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicAdvisorToolResultType](../../models/components/anthropicadvisortoolresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicbase64imagesource.mdx b/docs/models/components/anthropicbase64imagesource.mdx index d7d52212a..b97e64b9a 100644 --- a/docs/models/components/anthropicbase64imagesource.mdx +++ b/docs/models/components/anthropicbase64imagesource.mdx @@ -6,6 +6,6 @@ title: "AnthropicBase64ImageSource" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Data` | `string` | ✅ | N/A | | -| `MediaType` | [components.AnthropicImageMimeType](../../models/components/anthropicimagemimetype.mdx) | ✅ | N/A | image/jpeg | -| `Type` | [components.AnthropicBase64ImageSourceType](../../models/components/anthropicbase64imagesourcetype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | | +| `MediaType` | [components.AnthropicImageMimeType](../../models/components/anthropicimagemimetype.mdx) | :heavy_check_mark: | N/A | image/jpeg | +| `Type` | [components.AnthropicBase64ImageSourceType](../../models/components/anthropicbase64imagesourcetype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicbase64pdfsource.mdx b/docs/models/components/anthropicbase64pdfsource.mdx index fefa9d30c..85776a1e9 100644 --- a/docs/models/components/anthropicbase64pdfsource.mdx +++ b/docs/models/components/anthropicbase64pdfsource.mdx @@ -6,6 +6,6 @@ title: "AnthropicBase64PdfSource" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Data` | `string` | ✅ | N/A | -| `MediaType` | [components.AnthropicBase64PdfSourceMediaType](../../models/components/anthropicbase64pdfsourcemediatype.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicBase64PdfSourceType](../../models/components/anthropicbase64pdfsourcetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `MediaType` | [components.AnthropicBase64PdfSourceMediaType](../../models/components/anthropicbase64pdfsourcemediatype.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicBase64PdfSourceType](../../models/components/anthropicbase64pdfsourcetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicbashcodeexecutionoutput.mdx b/docs/models/components/anthropicbashcodeexecutionoutput.mdx index 87c751afa..defdf13c3 100644 --- a/docs/models/components/anthropicbashcodeexecutionoutput.mdx +++ b/docs/models/components/anthropicbashcodeexecutionoutput.mdx @@ -6,5 +6,5 @@ title: "AnthropicBashCodeExecutionOutput" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `FileID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicBashCodeExecutionOutputType](../../models/components/anthropicbashcodeexecutionoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicBashCodeExecutionOutputType](../../models/components/anthropicbashcodeexecutionoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicbashcodeexecutionresult.mdx b/docs/models/components/anthropicbashcodeexecutionresult.mdx index a0177b3e9..e797c53ee 100644 --- a/docs/models/components/anthropicbashcodeexecutionresult.mdx +++ b/docs/models/components/anthropicbashcodeexecutionresult.mdx @@ -6,8 +6,8 @@ title: "AnthropicBashCodeExecutionResult" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Content` | [][components.AnthropicBashCodeExecutionOutput](../../models/components/anthropicbashcodeexecutionoutput.mdx) | ✅ | N/A | -| `ReturnCode` | `int64` | ✅ | N/A | -| `Stderr` | `string` | ✅ | N/A | -| `Stdout` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicBashCodeExecutionResultType](../../models/components/anthropicbashcodeexecutionresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.AnthropicBashCodeExecutionOutput](../../models/components/anthropicbashcodeexecutionoutput.mdx) | :heavy_check_mark: | N/A | +| `ReturnCode` | `int64` | :heavy_check_mark: | N/A | +| `Stderr` | `string` | :heavy_check_mark: | N/A | +| `Stdout` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicBashCodeExecutionResultType](../../models/components/anthropicbashcodeexecutionresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicbashcodeexecutiontoolresult.mdx b/docs/models/components/anthropicbashcodeexecutiontoolresult.mdx index 850040fe0..87ccab406 100644 --- a/docs/models/components/anthropicbashcodeexecutiontoolresult.mdx +++ b/docs/models/components/anthropicbashcodeexecutiontoolresult.mdx @@ -6,6 +6,6 @@ title: "AnthropicBashCodeExecutionToolResult" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.AnthropicBashCodeExecutionContent](../../models/components/anthropicbashcodeexecutioncontent.mdx) | ✅ | N/A | \{
"content": [],
"return_code": 0,
"stderr": "",
"stdout": "Hello",
"type": "bash_code_execution_result"
} | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicBashCodeExecutionToolResultType](../../models/components/anthropicbashcodeexecutiontoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.AnthropicBashCodeExecutionContent](../../models/components/anthropicbashcodeexecutioncontent.mdx) | :heavy_check_mark: | N/A | \{
"content": [],
"return_code": 0,
"stderr": "",
"stdout": "Hello",
"type": "bash_code_execution_result"
} | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicBashCodeExecutionToolResultType](../../models/components/anthropicbashcodeexecutiontoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicbashcodeexecutiontoolresulterror.mdx b/docs/models/components/anthropicbashcodeexecutiontoolresulterror.mdx index a14f2efa7..32a63b39d 100644 --- a/docs/models/components/anthropicbashcodeexecutiontoolresulterror.mdx +++ b/docs/models/components/anthropicbashcodeexecutiontoolresulterror.mdx @@ -6,5 +6,5 @@ title: "AnthropicBashCodeExecutionToolResultError" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `ErrorCode` | [components.AnthropicBashCodeExecutionToolResultErrorErrorCode](../../models/components/anthropicbashcodeexecutiontoolresulterrorerrorcode.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicBashCodeExecutionToolResultErrorType](../../models/components/anthropicbashcodeexecutiontoolresulterrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `ErrorCode` | [components.AnthropicBashCodeExecutionToolResultErrorErrorCode](../../models/components/anthropicbashcodeexecutiontoolresulterrorerrorcode.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicBashCodeExecutionToolResultErrorType](../../models/components/anthropicbashcodeexecutiontoolresulterrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccachecontroldirective.mdx b/docs/models/components/anthropiccachecontroldirective.mdx index 33f489d21..ef3026af8 100644 --- a/docs/models/components/anthropiccachecontroldirective.mdx +++ b/docs/models/components/anthropiccachecontroldirective.mdx @@ -9,5 +9,5 @@ Enable automatic prompt caching. When set at the top level, the system automatic | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `TTL` | [*components.AnthropicCacheControlTTL](../../models/components/anthropiccachecontrolttl.mdx) | ➖ | N/A | 5m | -| `Type` | [components.AnthropicCacheControlDirectiveType](../../models/components/anthropiccachecontroldirectivetype.mdx) | ✅ | N/A | | \ No newline at end of file +| `TTL` | [*components.AnthropicCacheControlTTL](../../models/components/anthropiccachecontrolttl.mdx) | :heavy_minus_sign: | N/A | 5m | +| `Type` | [components.AnthropicCacheControlDirectiveType](../../models/components/anthropiccachecontroldirectivetype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropiccachecreation.mdx b/docs/models/components/anthropiccachecreation.mdx index 7e84b6259..e8d95fc3a 100644 --- a/docs/models/components/anthropiccachecreation.mdx +++ b/docs/models/components/anthropiccachecreation.mdx @@ -6,5 +6,5 @@ title: "AnthropicCacheCreation" | Field | Type | Required | Description | | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `Ephemeral1hInputTokens` | `int64` | ✅ | N/A | -| `Ephemeral5mInputTokens` | `int64` | ✅ | N/A | \ No newline at end of file +| `Ephemeral1hInputTokens` | `int64` | :heavy_check_mark: | N/A | +| `Ephemeral5mInputTokens` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationcharlocation.mdx b/docs/models/components/anthropiccitationcharlocation.mdx index 9d0470705..cebeb99f2 100644 --- a/docs/models/components/anthropiccitationcharlocation.mdx +++ b/docs/models/components/anthropiccitationcharlocation.mdx @@ -6,10 +6,10 @@ title: "AnthropicCitationCharLocation" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndCharIndex` | `int64` | ✅ | N/A | -| `FileID` | `*string` | ✅ | N/A | -| `StartCharIndex` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationCharLocationType](../../models/components/anthropiccitationcharlocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndCharIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `*string` | :heavy_check_mark: | N/A | +| `StartCharIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationCharLocationType](../../models/components/anthropiccitationcharlocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationcharlocationparam.mdx b/docs/models/components/anthropiccitationcharlocationparam.mdx index c36e2c0c5..98984ed1f 100644 --- a/docs/models/components/anthropiccitationcharlocationparam.mdx +++ b/docs/models/components/anthropiccitationcharlocationparam.mdx @@ -6,9 +6,9 @@ title: "AnthropicCitationCharLocationParam" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndCharIndex` | `int64` | ✅ | N/A | -| `StartCharIndex` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationCharLocationParamType](../../models/components/anthropiccitationcharlocationparamtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndCharIndex` | `int64` | :heavy_check_mark: | N/A | +| `StartCharIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationCharLocationParamType](../../models/components/anthropiccitationcharlocationparamtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationcontentblocklocation.mdx b/docs/models/components/anthropiccitationcontentblocklocation.mdx index 8362cf22e..9ec31455a 100644 --- a/docs/models/components/anthropiccitationcontentblocklocation.mdx +++ b/docs/models/components/anthropiccitationcontentblocklocation.mdx @@ -6,10 +6,10 @@ title: "AnthropicCitationContentBlockLocation" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndBlockIndex` | `int64` | ✅ | N/A | -| `FileID` | `*string` | ✅ | N/A | -| `StartBlockIndex` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationContentBlockLocationType](../../models/components/anthropiccitationcontentblocklocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `*string` | :heavy_check_mark: | N/A | +| `StartBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationContentBlockLocationType](../../models/components/anthropiccitationcontentblocklocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationcontentblocklocationparam.mdx b/docs/models/components/anthropiccitationcontentblocklocationparam.mdx index 58bf17c2f..76be2e879 100644 --- a/docs/models/components/anthropiccitationcontentblocklocationparam.mdx +++ b/docs/models/components/anthropiccitationcontentblocklocationparam.mdx @@ -6,9 +6,9 @@ title: "AnthropicCitationContentBlockLocationParam" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndBlockIndex` | `int64` | ✅ | N/A | -| `StartBlockIndex` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationContentBlockLocationParamType](../../models/components/anthropiccitationcontentblocklocationparamtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `StartBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationContentBlockLocationParamType](../../models/components/anthropiccitationcontentblocklocationparamtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationpagelocation.mdx b/docs/models/components/anthropiccitationpagelocation.mdx index e64e79c1c..99c4f41f3 100644 --- a/docs/models/components/anthropiccitationpagelocation.mdx +++ b/docs/models/components/anthropiccitationpagelocation.mdx @@ -6,10 +6,10 @@ title: "AnthropicCitationPageLocation" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndPageNumber` | `int64` | ✅ | N/A | -| `FileID` | `*string` | ✅ | N/A | -| `StartPageNumber` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationPageLocationType](../../models/components/anthropiccitationpagelocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndPageNumber` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `*string` | :heavy_check_mark: | N/A | +| `StartPageNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationPageLocationType](../../models/components/anthropiccitationpagelocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationpagelocationparam.mdx b/docs/models/components/anthropiccitationpagelocationparam.mdx index 8b792d493..aa8bcb3ca 100644 --- a/docs/models/components/anthropiccitationpagelocationparam.mdx +++ b/docs/models/components/anthropiccitationpagelocationparam.mdx @@ -6,9 +6,9 @@ title: "AnthropicCitationPageLocationParam" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `DocumentIndex` | `int64` | ✅ | N/A | -| `DocumentTitle` | `*string` | ✅ | N/A | -| `EndPageNumber` | `int64` | ✅ | N/A | -| `StartPageNumber` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicCitationPageLocationParamType](../../models/components/anthropiccitationpagelocationparamtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `DocumentIndex` | `int64` | :heavy_check_mark: | N/A | +| `DocumentTitle` | `*string` | :heavy_check_mark: | N/A | +| `EndPageNumber` | `int64` | :heavy_check_mark: | N/A | +| `StartPageNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationPageLocationParamType](../../models/components/anthropiccitationpagelocationparamtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationsconfig.mdx b/docs/models/components/anthropiccitationsconfig.mdx index c4a7215ec..54f28d5f3 100644 --- a/docs/models/components/anthropiccitationsconfig.mdx +++ b/docs/models/components/anthropiccitationsconfig.mdx @@ -6,4 +6,4 @@ title: "AnthropicCitationsConfig" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Enabled` | `bool` | ✅ | N/A | \ No newline at end of file +| `Enabled` | `bool` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationsearchresultlocation.mdx b/docs/models/components/anthropiccitationsearchresultlocation.mdx index e6dba4394..5916941fb 100644 --- a/docs/models/components/anthropiccitationsearchresultlocation.mdx +++ b/docs/models/components/anthropiccitationsearchresultlocation.mdx @@ -6,10 +6,10 @@ title: "AnthropicCitationSearchResultLocation" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `EndBlockIndex` | `int64` | ✅ | N/A | -| `SearchResultIndex` | `int64` | ✅ | N/A | -| `Source` | `string` | ✅ | N/A | -| `StartBlockIndex` | `int64` | ✅ | N/A | -| `Title` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicCitationSearchResultLocationType](../../models/components/anthropiccitationsearchresultlocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `EndBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `SearchResultIndex` | `int64` | :heavy_check_mark: | N/A | +| `Source` | `string` | :heavy_check_mark: | N/A | +| `StartBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `Title` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationSearchResultLocationType](../../models/components/anthropiccitationsearchresultlocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationsearchresultlocationparam.mdx b/docs/models/components/anthropiccitationsearchresultlocationparam.mdx index 35e524b18..05ae11135 100644 --- a/docs/models/components/anthropiccitationsearchresultlocationparam.mdx +++ b/docs/models/components/anthropiccitationsearchresultlocationparam.mdx @@ -6,10 +6,10 @@ title: "AnthropicCitationSearchResultLocationParam" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `EndBlockIndex` | `int64` | ✅ | N/A | -| `SearchResultIndex` | `int64` | ✅ | N/A | -| `Source` | `string` | ✅ | N/A | -| `StartBlockIndex` | `int64` | ✅ | N/A | -| `Title` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicCitationSearchResultLocationParamType](../../models/components/anthropiccitationsearchresultlocationparamtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `EndBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `SearchResultIndex` | `int64` | :heavy_check_mark: | N/A | +| `Source` | `string` | :heavy_check_mark: | N/A | +| `StartBlockIndex` | `int64` | :heavy_check_mark: | N/A | +| `Title` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationSearchResultLocationParamType](../../models/components/anthropiccitationsearchresultlocationparamtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationwebsearchresultlocation.mdx b/docs/models/components/anthropiccitationwebsearchresultlocation.mdx index 0c56e2d2a..ffcafe169 100644 --- a/docs/models/components/anthropiccitationwebsearchresultlocation.mdx +++ b/docs/models/components/anthropiccitationwebsearchresultlocation.mdx @@ -6,8 +6,8 @@ title: "AnthropicCitationWebSearchResultLocation" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `EncryptedIndex` | `string` | ✅ | N/A | -| `Title` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicCitationWebSearchResultLocationType](../../models/components/anthropiccitationwebsearchresultlocationtype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `EncryptedIndex` | `string` | :heavy_check_mark: | N/A | +| `Title` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationWebSearchResultLocationType](../../models/components/anthropiccitationwebsearchresultlocationtype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccitationwebsearchresultlocationparam.mdx b/docs/models/components/anthropiccitationwebsearchresultlocationparam.mdx index 3b5d7ea3d..cb7994873 100644 --- a/docs/models/components/anthropiccitationwebsearchresultlocationparam.mdx +++ b/docs/models/components/anthropiccitationwebsearchresultlocationparam.mdx @@ -6,8 +6,8 @@ title: "AnthropicCitationWebSearchResultLocationParam" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -| `CitedText` | `string` | ✅ | N/A | -| `EncryptedIndex` | `string` | ✅ | N/A | -| `Title` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicCitationWebSearchResultLocationParamType](../../models/components/anthropiccitationwebsearchresultlocationparamtype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `CitedText` | `string` | :heavy_check_mark: | N/A | +| `EncryptedIndex` | `string` | :heavy_check_mark: | N/A | +| `Title` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCitationWebSearchResultLocationParamType](../../models/components/anthropiccitationwebsearchresultlocationparamtype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecution20250825caller.mdx b/docs/models/components/anthropiccodeexecution20250825caller.mdx index bc63b65bf..72eda21ff 100644 --- a/docs/models/components/anthropiccodeexecution20250825caller.mdx +++ b/docs/models/components/anthropiccodeexecution20250825caller.mdx @@ -6,5 +6,5 @@ title: "AnthropicCodeExecution20250825Caller" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `ToolID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicCodeExecution20250825CallerType](../../models/components/anthropiccodeexecution20250825callertype.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCodeExecution20250825CallerType](../../models/components/anthropiccodeexecution20250825callertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecution20260120caller.mdx b/docs/models/components/anthropiccodeexecution20260120caller.mdx index 5bd070a52..4b36ea291 100644 --- a/docs/models/components/anthropiccodeexecution20260120caller.mdx +++ b/docs/models/components/anthropiccodeexecution20260120caller.mdx @@ -6,5 +6,5 @@ title: "AnthropicCodeExecution20260120Caller" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `ToolID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicCodeExecution20260120CallerType](../../models/components/anthropiccodeexecution20260120callertype.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCodeExecution20260120CallerType](../../models/components/anthropiccodeexecution20260120callertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecutionoutput.mdx b/docs/models/components/anthropiccodeexecutionoutput.mdx index fb5fc50d6..442188475 100644 --- a/docs/models/components/anthropiccodeexecutionoutput.mdx +++ b/docs/models/components/anthropiccodeexecutionoutput.mdx @@ -6,5 +6,5 @@ title: "AnthropicCodeExecutionOutput" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `FileID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicCodeExecutionOutputType](../../models/components/anthropiccodeexecutionoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCodeExecutionOutputType](../../models/components/anthropiccodeexecutionoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecutionresult.mdx b/docs/models/components/anthropiccodeexecutionresult.mdx index a28b903a8..d0a75567d 100644 --- a/docs/models/components/anthropiccodeexecutionresult.mdx +++ b/docs/models/components/anthropiccodeexecutionresult.mdx @@ -6,8 +6,8 @@ title: "AnthropicCodeExecutionResult" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.AnthropicCodeExecutionOutput](../../models/components/anthropiccodeexecutionoutput.mdx) | ✅ | N/A | -| `ReturnCode` | `int64` | ✅ | N/A | -| `Stderr` | `string` | ✅ | N/A | -| `Stdout` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicCodeExecutionResultType](../../models/components/anthropiccodeexecutionresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.AnthropicCodeExecutionOutput](../../models/components/anthropiccodeexecutionoutput.mdx) | :heavy_check_mark: | N/A | +| `ReturnCode` | `int64` | :heavy_check_mark: | N/A | +| `Stderr` | `string` | :heavy_check_mark: | N/A | +| `Stdout` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicCodeExecutionResultType](../../models/components/anthropiccodeexecutionresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecutiontoolresult.mdx b/docs/models/components/anthropiccodeexecutiontoolresult.mdx index d9e018d0c..fe3ed6725 100644 --- a/docs/models/components/anthropiccodeexecutiontoolresult.mdx +++ b/docs/models/components/anthropiccodeexecutiontoolresult.mdx @@ -6,6 +6,6 @@ title: "AnthropicCodeExecutionToolResult" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Content` | [components.AnthropicCodeExecutionContent](../../models/components/anthropiccodeexecutioncontent.mdx) | ✅ | N/A | \{
"content": [],
"return_code": 0,
"stderr": "",
"stdout": "Hello",
"type": "code_execution_result"
} | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicCodeExecutionToolResultType](../../models/components/anthropiccodeexecutiontoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.AnthropicCodeExecutionContent](../../models/components/anthropiccodeexecutioncontent.mdx) | :heavy_check_mark: | N/A | \{
"content": [],
"return_code": 0,
"stderr": "",
"stdout": "Hello",
"type": "code_execution_result"
} | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicCodeExecutionToolResultType](../../models/components/anthropiccodeexecutiontoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropiccodeexecutiontoolresulterror.mdx b/docs/models/components/anthropiccodeexecutiontoolresulterror.mdx index ab4ee97cf..c0a1af1ba 100644 --- a/docs/models/components/anthropiccodeexecutiontoolresulterror.mdx +++ b/docs/models/components/anthropiccodeexecutiontoolresulterror.mdx @@ -6,5 +6,5 @@ title: "AnthropicCodeExecutionToolResultError" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `ErrorCode` | [components.AnthropicServerToolErrorCode](../../models/components/anthropicservertoolerrorcode.mdx) | ✅ | N/A | unavailable | -| `Type` | [components.AnthropicCodeExecutionToolResultErrorType](../../models/components/anthropiccodeexecutiontoolresulterrortype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ErrorCode` | [components.AnthropicServerToolErrorCode](../../models/components/anthropicservertoolerrorcode.mdx) | :heavy_check_mark: | N/A | unavailable | +| `Type` | [components.AnthropicCodeExecutionToolResultErrorType](../../models/components/anthropiccodeexecutiontoolresulterrortype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropiccompactionblock.mdx b/docs/models/components/anthropiccompactionblock.mdx index 60a2c7d40..1ce70ccfc 100644 --- a/docs/models/components/anthropiccompactionblock.mdx +++ b/docs/models/components/anthropiccompactionblock.mdx @@ -6,6 +6,6 @@ title: "AnthropicCompactionBlock" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Content` | `*string` | ✅ | N/A | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.AnthropicCompactionBlockType](../../models/components/anthropiccompactionblocktype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | `*string` | :heavy_check_mark: | N/A | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.AnthropicCompactionBlockType](../../models/components/anthropiccompactionblocktype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccompactionusageiteration.mdx b/docs/models/components/anthropiccompactionusageiteration.mdx index 3c9d0a507..dd4c89650 100644 --- a/docs/models/components/anthropiccompactionusageiteration.mdx +++ b/docs/models/components/anthropiccompactionusageiteration.mdx @@ -6,9 +6,9 @@ title: "AnthropicCompactionUsageIteration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | -| `CacheCreationInputTokens` | `*int64` | ➖ | N/A | | -| `CacheReadInputTokens` | `*int64` | ➖ | N/A | | -| `InputTokens` | `*int64` | ➖ | N/A | | -| `OutputTokens` | `*int64` | ➖ | N/A | | -| `Type` | [components.AnthropicCompactionUsageIterationType](../../models/components/anthropiccompactionusageiterationtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | +| `CacheCreationInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `CacheReadInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `InputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `OutputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `Type` | [components.AnthropicCompactionUsageIterationType](../../models/components/anthropiccompactionusageiterationtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropiccontainer.mdx b/docs/models/components/anthropiccontainer.mdx index 3a5756b6d..2cdc5ab7a 100644 --- a/docs/models/components/anthropiccontainer.mdx +++ b/docs/models/components/anthropiccontainer.mdx @@ -6,6 +6,6 @@ title: "AnthropicContainer" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `ExpiresAt` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Skills` | optionalnullable.OptionalNullable[[][components.AnthropicContainerSkill](../../models/components/anthropiccontainerskill.mdx)] | ➖ | N/A | \ No newline at end of file +| `ExpiresAt` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Skills` | optionalnullable.OptionalNullable[[][components.AnthropicContainerSkill](../../models/components/anthropiccontainerskill.mdx)] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccontainerskill.mdx b/docs/models/components/anthropiccontainerskill.mdx index 0c893ccda..68f4fe1a6 100644 --- a/docs/models/components/anthropiccontainerskill.mdx +++ b/docs/models/components/anthropiccontainerskill.mdx @@ -6,6 +6,6 @@ title: "AnthropicContainerSkill" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `SkillID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicContainerSkillType](../../models/components/anthropiccontainerskilltype.mdx) | ✅ | N/A | -| `Version` | `string` | ✅ | N/A | \ No newline at end of file +| `SkillID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicContainerSkillType](../../models/components/anthropiccontainerskilltype.mdx) | :heavy_check_mark: | N/A | +| `Version` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropiccontainerupload.mdx b/docs/models/components/anthropiccontainerupload.mdx index 63b89f4ea..63fc64996 100644 --- a/docs/models/components/anthropiccontainerupload.mdx +++ b/docs/models/components/anthropiccontainerupload.mdx @@ -6,5 +6,5 @@ title: "AnthropicContainerUpload" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `FileID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicContainerUploadType](../../models/components/anthropiccontaineruploadtype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicContainerUploadType](../../models/components/anthropiccontaineruploadtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicdirectcaller.mdx b/docs/models/components/anthropicdirectcaller.mdx index c2f48f738..7c1fce85a 100644 --- a/docs/models/components/anthropicdirectcaller.mdx +++ b/docs/models/components/anthropicdirectcaller.mdx @@ -6,4 +6,4 @@ title: "AnthropicDirectCaller" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicDirectCallerType](../../models/components/anthropicdirectcallertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicDirectCallerType](../../models/components/anthropicdirectcallertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicdocumentblock.mdx b/docs/models/components/anthropicdocumentblock.mdx index 4ebf70d52..bebd292e3 100644 --- a/docs/models/components/anthropicdocumentblock.mdx +++ b/docs/models/components/anthropicdocumentblock.mdx @@ -6,7 +6,7 @@ title: "AnthropicDocumentBlock" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `Citations` | optionalnullable.OptionalNullable[[components.AnthropicCitationsConfig](../../models/components/anthropiccitationsconfig.mdx)] | ➖ | N/A | \{
"enabled": true
} | -| `Source` | [components.AnthropicDocumentBlockSource](../../models/components/anthropicdocumentblocksource.mdx) | ✅ | N/A | | -| `Title` | `*string` | ✅ | N/A | | -| `Type` | [components.AnthropicDocumentBlockType](../../models/components/anthropicdocumentblocktype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Citations` | optionalnullable.OptionalNullable[[components.AnthropicCitationsConfig](../../models/components/anthropiccitationsconfig.mdx)] | :heavy_minus_sign: | N/A | \{
"enabled": true
} | +| `Source` | [components.AnthropicDocumentBlockSource](../../models/components/anthropicdocumentblocksource.mdx) | :heavy_check_mark: | N/A | | +| `Title` | `*string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicDocumentBlockType](../../models/components/anthropicdocumentblocktype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicdocumentblockparam.mdx b/docs/models/components/anthropicdocumentblockparam.mdx index 0f79f0bae..6f957394d 100644 --- a/docs/models/components/anthropicdocumentblockparam.mdx +++ b/docs/models/components/anthropicdocumentblockparam.mdx @@ -6,9 +6,9 @@ title: "AnthropicDocumentBlockParam" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Citations` | optionalnullable.OptionalNullable[[components.AnthropicDocumentBlockParamCitations](../../models/components/anthropicdocumentblockparamcitations.mdx)] | ➖ | N/A | | -| `Context` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Source` | [components.AnthropicDocumentBlockParamSourceUnion](../../models/components/anthropicdocumentblockparamsourceunion.mdx) | ✅ | N/A | | -| `Title` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | [components.AnthropicDocumentBlockParamTypeDocument](../../models/components/anthropicdocumentblockparamtypedocument.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Citations` | optionalnullable.OptionalNullable[[components.AnthropicDocumentBlockParamCitations](../../models/components/anthropicdocumentblockparamcitations.mdx)] | :heavy_minus_sign: | N/A | | +| `Context` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Source` | [components.AnthropicDocumentBlockParamSourceUnion](../../models/components/anthropicdocumentblockparamsourceunion.mdx) | :heavy_check_mark: | N/A | | +| `Title` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.AnthropicDocumentBlockParamTypeDocument](../../models/components/anthropicdocumentblockparamtypedocument.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicdocumentblockparamcitations.mdx b/docs/models/components/anthropicdocumentblockparamcitations.mdx index 02eff1971..4aa238324 100644 --- a/docs/models/components/anthropicdocumentblockparamcitations.mdx +++ b/docs/models/components/anthropicdocumentblockparamcitations.mdx @@ -6,4 +6,4 @@ title: "AnthropicDocumentBlockParamCitations" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Enabled` | `*bool` | ➖ | N/A | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicencryptedcodeexecutionresult.mdx b/docs/models/components/anthropicencryptedcodeexecutionresult.mdx index b876203f4..f40f74b89 100644 --- a/docs/models/components/anthropicencryptedcodeexecutionresult.mdx +++ b/docs/models/components/anthropicencryptedcodeexecutionresult.mdx @@ -6,8 +6,8 @@ title: "AnthropicEncryptedCodeExecutionResult" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.AnthropicCodeExecutionOutput](../../models/components/anthropiccodeexecutionoutput.mdx) | ✅ | N/A | -| `EncryptedStdout` | `string` | ✅ | N/A | -| `ReturnCode` | `int64` | ✅ | N/A | -| `Stderr` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicEncryptedCodeExecutionResultType](../../models/components/anthropicencryptedcodeexecutionresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.AnthropicCodeExecutionOutput](../../models/components/anthropiccodeexecutionoutput.mdx) | :heavy_check_mark: | N/A | +| `EncryptedStdout` | `string` | :heavy_check_mark: | N/A | +| `ReturnCode` | `int64` | :heavy_check_mark: | N/A | +| `Stderr` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicEncryptedCodeExecutionResultType](../../models/components/anthropicencryptedcodeexecutionresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicfile.mdx b/docs/models/components/anthropicfile.mdx index 608f8ac0b..df8cc5a0b 100644 --- a/docs/models/components/anthropicfile.mdx +++ b/docs/models/components/anthropicfile.mdx @@ -9,11 +9,11 @@ A stored file in Anthropic's Files API shape. | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Shape` | [components.AnthropicFileShape](../../models/components/anthropicfileshape.mdx) | ✅ | N/A | -| `CreatedAt` | `string` | ✅ | N/A | -| `Downloadable` | `bool` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `MimeType` | `string` | ✅ | N/A | -| `SizeBytes` | `int64` | ✅ | N/A | -| `Type` | [components.AnthropicFileType](../../models/components/anthropicfiletype.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.AnthropicFileShape](../../models/components/anthropicfileshape.mdx) | :heavy_check_mark: | N/A | +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | +| `Downloadable` | `bool` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `MimeType` | `string` | :heavy_check_mark: | N/A | +| `SizeBytes` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicFileType](../../models/components/anthropicfiletype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicfiledeleted.mdx b/docs/models/components/anthropicfiledeleted.mdx index ccbdc8793..e62527293 100644 --- a/docs/models/components/anthropicfiledeleted.mdx +++ b/docs/models/components/anthropicfiledeleted.mdx @@ -9,6 +9,6 @@ Deletion result in Anthropic's shape. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Shape` | [components.AnthropicFileDeletedShape](../../models/components/anthropicfiledeletedshape.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicFileDeletedType](../../models/components/anthropicfiledeletedtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.AnthropicFileDeletedShape](../../models/components/anthropicfiledeletedshape.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicFileDeletedType](../../models/components/anthropicfiledeletedtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicfiledocumentsource.mdx b/docs/models/components/anthropicfiledocumentsource.mdx index 98a6f3787..232e3fd8c 100644 --- a/docs/models/components/anthropicfiledocumentsource.mdx +++ b/docs/models/components/anthropicfiledocumentsource.mdx @@ -6,5 +6,5 @@ title: "AnthropicFileDocumentSource" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `FileID` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicFileDocumentSourceType](../../models/components/anthropicfiledocumentsourcetype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicFileDocumentSourceType](../../models/components/anthropicfiledocumentsourcetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicfilelist.mdx b/docs/models/components/anthropicfilelist.mdx index ec78228a9..f8c77f70d 100644 --- a/docs/models/components/anthropicfilelist.mdx +++ b/docs/models/components/anthropicfilelist.mdx @@ -9,8 +9,8 @@ A page of files in Anthropic's shape. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Shape` | [components.AnthropicFileListShape](../../models/components/anthropicfilelistshape.mdx) | ✅ | N/A | -| `Data` | [][components.AnthropicFile](../../models/components/anthropicfile.mdx) | ✅ | N/A | -| `FirstID` | `*string` | ✅ | N/A | -| `HasMore` | `bool` | ✅ | N/A | -| `LastID` | `*string` | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.AnthropicFileListShape](../../models/components/anthropicfilelistshape.mdx) | :heavy_check_mark: | N/A | +| `Data` | [][components.AnthropicFile](../../models/components/anthropicfile.mdx) | :heavy_check_mark: | N/A | +| `FirstID` | `*string` | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | N/A | +| `LastID` | `*string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicimageblockparam.mdx b/docs/models/components/anthropicimageblockparam.mdx index 8e051054f..55384b6a6 100644 --- a/docs/models/components/anthropicimageblockparam.mdx +++ b/docs/models/components/anthropicimageblockparam.mdx @@ -6,6 +6,6 @@ title: "AnthropicImageBlockParam" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Source` | [components.AnthropicImageBlockParamSource](../../models/components/anthropicimageblockparamsource.mdx) | ✅ | N/A | | -| `Type` | [components.AnthropicImageBlockParamType](../../models/components/anthropicimageblockparamtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Source` | [components.AnthropicImageBlockParamSource](../../models/components/anthropicimageblockparamsource.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicImageBlockParamType](../../models/components/anthropicimageblockparamtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicinputtokensclearatleast.mdx b/docs/models/components/anthropicinputtokensclearatleast.mdx index be72bd1cd..4f0705672 100644 --- a/docs/models/components/anthropicinputtokensclearatleast.mdx +++ b/docs/models/components/anthropicinputtokensclearatleast.mdx @@ -6,5 +6,5 @@ title: "AnthropicInputTokensClearAtLeast" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Type` | [components.AnthropicInputTokensClearAtLeastType](../../models/components/anthropicinputtokensclearatleasttype.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicInputTokensClearAtLeastType](../../models/components/anthropicinputtokensclearatleasttype.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicinputtokenstrigger.mdx b/docs/models/components/anthropicinputtokenstrigger.mdx index 8320f5f09..30868cc63 100644 --- a/docs/models/components/anthropicinputtokenstrigger.mdx +++ b/docs/models/components/anthropicinputtokenstrigger.mdx @@ -6,5 +6,5 @@ title: "AnthropicInputTokensTrigger" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicInputTokensTriggerType](../../models/components/anthropicinputtokenstriggertype.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicInputTokensTriggerType](../../models/components/anthropicinputtokenstriggertype.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicinputtransformation.mdx b/docs/models/components/anthropicinputtransformation.mdx index e29a5d8ab..ae0ffff19 100644 --- a/docs/models/components/anthropicinputtransformation.mdx +++ b/docs/models/components/anthropicinputtransformation.mdx @@ -9,7 +9,7 @@ A server-side transformation Anthropic applied to the request input | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Path` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Reason` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | `string` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"path": "messages.1.content.0",
"reason": "prefix_binding_mismatch",
"type": "thinking_dropped"
} | \ No newline at end of file +| `Path` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Reason` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | `string` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"path": "messages.1.content.0",
"reason": "prefix_binding_mismatch",
"type": "thinking_dropped"
} | \ No newline at end of file diff --git a/docs/models/components/anthropiciterationcachecreation.mdx b/docs/models/components/anthropiciterationcachecreation.mdx index f4af68401..7fdb64675 100644 --- a/docs/models/components/anthropiciterationcachecreation.mdx +++ b/docs/models/components/anthropiciterationcachecreation.mdx @@ -6,5 +6,5 @@ title: "AnthropicIterationCacheCreation" | Field | Type | Required | Description | | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `Ephemeral1hInputTokens` | `*int64` | ➖ | N/A | -| `Ephemeral5mInputTokens` | `*int64` | ➖ | N/A | \ No newline at end of file +| `Ephemeral1hInputTokens` | `*int64` | :heavy_minus_sign: | N/A | +| `Ephemeral5mInputTokens` | `*int64` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicmessageoutputconfig.mdx b/docs/models/components/anthropicmessageoutputconfig.mdx index 25a69ab66..22e658d83 100644 --- a/docs/models/components/anthropicmessageoutputconfig.mdx +++ b/docs/models/components/anthropicmessageoutputconfig.mdx @@ -6,4 +6,4 @@ title: "AnthropicMessageOutputConfig" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `Effort` | optionalnullable.OptionalNullable[[components.AnthropicOutputEffort](../../models/components/anthropicoutputeffort.mdx)] | ➖ | N/A | high | \ No newline at end of file +| `Effort` | optionalnullable.OptionalNullable[[components.AnthropicOutputEffort](../../models/components/anthropicoutputeffort.mdx)] | :heavy_minus_sign: | N/A | high | \ No newline at end of file diff --git a/docs/models/components/anthropicmessageusageiteration.mdx b/docs/models/components/anthropicmessageusageiteration.mdx index c7adf3e10..7def35867 100644 --- a/docs/models/components/anthropicmessageusageiteration.mdx +++ b/docs/models/components/anthropicmessageusageiteration.mdx @@ -6,10 +6,10 @@ title: "AnthropicMessageUsageIteration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | -| `CacheCreationInputTokens` | `*int64` | ➖ | N/A | | -| `CacheReadInputTokens` | `*int64` | ➖ | N/A | | -| `InputTokens` | `*int64` | ➖ | N/A | | -| `OutputTokens` | `*int64` | ➖ | N/A | | -| `Model` | `*string` | ➖ | N/A | | -| `Type` | [components.AnthropicMessageUsageIterationType](../../models/components/anthropicmessageusageiterationtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | +| `CacheCreationInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `CacheReadInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `InputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `OutputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `Model` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.AnthropicMessageUsageIterationType](../../models/components/anthropicmessageusageiterationtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicoutputtokensdetails.mdx b/docs/models/components/anthropicoutputtokensdetails.mdx index 06792e4ca..de80847b3 100644 --- a/docs/models/components/anthropicoutputtokensdetails.mdx +++ b/docs/models/components/anthropicoutputtokensdetails.mdx @@ -6,4 +6,4 @@ title: "AnthropicOutputTokensDetails" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ThinkingTokens` | `int64` | ✅ | N/A | \ No newline at end of file +| `ThinkingTokens` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicplaintextsource.mdx b/docs/models/components/anthropicplaintextsource.mdx index ae1510610..0f8ee421e 100644 --- a/docs/models/components/anthropicplaintextsource.mdx +++ b/docs/models/components/anthropicplaintextsource.mdx @@ -6,6 +6,6 @@ title: "AnthropicPlainTextSource" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Data` | `string` | ✅ | N/A | -| `MediaType` | [components.AnthropicPlainTextSourceMediaType](../../models/components/anthropicplaintextsourcemediatype.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicPlainTextSourceType](../../models/components/anthropicplaintextsourcetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `MediaType` | [components.AnthropicPlainTextSourceMediaType](../../models/components/anthropicplaintextsourcemediatype.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicPlainTextSourceType](../../models/components/anthropicplaintextsourcetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicredactedthinkingblock.mdx b/docs/models/components/anthropicredactedthinkingblock.mdx index 0d1aa5811..035853211 100644 --- a/docs/models/components/anthropicredactedthinkingblock.mdx +++ b/docs/models/components/anthropicredactedthinkingblock.mdx @@ -6,5 +6,5 @@ title: "AnthropicRedactedThinkingBlock" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Data` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicRedactedThinkingBlockType](../../models/components/anthropicredactedthinkingblocktype.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicRedactedThinkingBlockType](../../models/components/anthropicredactedthinkingblocktype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicrefusalstopdetails.mdx b/docs/models/components/anthropicrefusalstopdetails.mdx index a7b330eed..ce99e643c 100644 --- a/docs/models/components/anthropicrefusalstopdetails.mdx +++ b/docs/models/components/anthropicrefusalstopdetails.mdx @@ -9,6 +9,6 @@ Structured information about a refusal | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `Category` | [*components.AnthropicRefusalStopDetailsCategory](../../models/components/anthropicrefusalstopdetailscategory.mdx) | ✅ | N/A | -| `Explanation` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicRefusalStopDetailsType](../../models/components/anthropicrefusalstopdetailstype.mdx) | ✅ | N/A | \ No newline at end of file +| `Category` | [*components.AnthropicRefusalStopDetailsCategory](../../models/components/anthropicrefusalstopdetailscategory.mdx) | :heavy_check_mark: | N/A | +| `Explanation` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicRefusalStopDetailsType](../../models/components/anthropicrefusalstopdetailstype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicsafeguard.mdx b/docs/models/components/anthropicsafeguard.mdx index 9765226e6..71b1f6962 100644 --- a/docs/models/components/anthropicsafeguard.mdx +++ b/docs/models/components/anthropicsafeguard.mdx @@ -9,6 +9,6 @@ A server-side safeguard Anthropic evaluates alongside the completion | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `ClassifierContext` | map[string]`any` | ➖ | N/A | | -| `Type` | `string` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"classifier_context": \{
"permission_mode": "auto",
"v": 1
},
"type": "dangerous_tool_use"
} | \ No newline at end of file +| `ClassifierContext` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `Type` | `string` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"classifier_context": \{
"permission_mode": "auto",
"v": 1
},
"type": "dangerous_tool_use"
} | \ No newline at end of file diff --git a/docs/models/components/anthropicsearchresultblockparam.mdx b/docs/models/components/anthropicsearchresultblockparam.mdx index 5dd5d5076..8cfe7f426 100644 --- a/docs/models/components/anthropicsearchresultblockparam.mdx +++ b/docs/models/components/anthropicsearchresultblockparam.mdx @@ -6,9 +6,9 @@ title: "AnthropicSearchResultBlockParam" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Citations` | [*components.AnthropicSearchResultBlockParamCitations](../../models/components/anthropicsearchresultblockparamcitations.mdx) | ➖ | N/A | | -| `Content` | [][components.AnthropicTextBlockParam](../../models/components/anthropictextblockparam.mdx) | ✅ | N/A | | -| `Source` | `string` | ✅ | N/A | | -| `Title` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicSearchResultBlockParamType](../../models/components/anthropicsearchresultblockparamtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Citations` | [*components.AnthropicSearchResultBlockParamCitations](../../models/components/anthropicsearchresultblockparamcitations.mdx) | :heavy_minus_sign: | N/A | | +| `Content` | [][components.AnthropicTextBlockParam](../../models/components/anthropictextblockparam.mdx) | :heavy_check_mark: | N/A | | +| `Source` | `string` | :heavy_check_mark: | N/A | | +| `Title` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicSearchResultBlockParamType](../../models/components/anthropicsearchresultblockparamtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicsearchresultblockparamcitations.mdx b/docs/models/components/anthropicsearchresultblockparamcitations.mdx index 8c1f5c80c..9fa5367e2 100644 --- a/docs/models/components/anthropicsearchresultblockparamcitations.mdx +++ b/docs/models/components/anthropicsearchresultblockparamcitations.mdx @@ -6,4 +6,4 @@ title: "AnthropicSearchResultBlockParamCitations" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Enabled` | `*bool` | ➖ | N/A | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicservertoolusage.mdx b/docs/models/components/anthropicservertoolusage.mdx index be89ac940..7a7c328f8 100644 --- a/docs/models/components/anthropicservertoolusage.mdx +++ b/docs/models/components/anthropicservertoolusage.mdx @@ -6,5 +6,5 @@ title: "AnthropicServerToolUsage" | Field | Type | Required | Description | | ------------------- | ------------------- | ------------------- | ------------------- | -| `WebFetchRequests` | `int64` | ✅ | N/A | -| `WebSearchRequests` | `int64` | ✅ | N/A | \ No newline at end of file +| `WebFetchRequests` | `int64` | :heavy_check_mark: | N/A | +| `WebSearchRequests` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictextblock.mdx b/docs/models/components/anthropictextblock.mdx index 0cfb070ce..ad05e22a0 100644 --- a/docs/models/components/anthropictextblock.mdx +++ b/docs/models/components/anthropictextblock.mdx @@ -6,6 +6,6 @@ title: "AnthropicTextBlock" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Citations` | [][components.AnthropicTextCitation](../../models/components/anthropictextcitation.mdx) | ✅ | N/A | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicTextBlockType](../../models/components/anthropictextblocktype.mdx) | ✅ | N/A | \ No newline at end of file +| `Citations` | [][components.AnthropicTextCitation](../../models/components/anthropictextcitation.mdx) | :heavy_check_mark: | N/A | +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicTextBlockType](../../models/components/anthropictextblocktype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictextblockparam.mdx b/docs/models/components/anthropictextblockparam.mdx index aa581b33e..7bc465cea 100644 --- a/docs/models/components/anthropictextblockparam.mdx +++ b/docs/models/components/anthropictextblockparam.mdx @@ -6,7 +6,7 @@ title: "AnthropicTextBlockParam" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Citations` | optionalnullable.OptionalNullable[[][components.Citation](../../models/components/citation.mdx)] | ➖ | N/A | | -| `Text` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicTextBlockParamType](../../models/components/anthropictextblockparamtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Citations` | optionalnullable.OptionalNullable[[][components.Citation](../../models/components/citation.mdx)] | :heavy_minus_sign: | N/A | | +| `Text` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicTextBlockParamType](../../models/components/anthropictextblockparamtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictexteditorcodeexecutioncreateresult.mdx b/docs/models/components/anthropictexteditorcodeexecutioncreateresult.mdx index 71b7c2af3..3e0667901 100644 --- a/docs/models/components/anthropictexteditorcodeexecutioncreateresult.mdx +++ b/docs/models/components/anthropictexteditorcodeexecutioncreateresult.mdx @@ -6,5 +6,5 @@ title: "AnthropicTextEditorCodeExecutionCreateResult" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `IsFileUpdate` | `bool` | ✅ | N/A | -| `Type` | [components.AnthropicTextEditorCodeExecutionCreateResultType](../../models/components/anthropictexteditorcodeexecutioncreateresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `IsFileUpdate` | `bool` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicTextEditorCodeExecutionCreateResultType](../../models/components/anthropictexteditorcodeexecutioncreateresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictexteditorcodeexecutionstrreplaceresult.mdx b/docs/models/components/anthropictexteditorcodeexecutionstrreplaceresult.mdx index e712e39f4..5b07e0ae0 100644 --- a/docs/models/components/anthropictexteditorcodeexecutionstrreplaceresult.mdx +++ b/docs/models/components/anthropictexteditorcodeexecutionstrreplaceresult.mdx @@ -6,9 +6,9 @@ title: "AnthropicTextEditorCodeExecutionStrReplaceResult" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Lines` | []`string` | ✅ | N/A | -| `NewLines` | `*int64` | ✅ | N/A | -| `NewStart` | `*int64` | ✅ | N/A | -| `OldLines` | `*int64` | ✅ | N/A | -| `OldStart` | `*int64` | ✅ | N/A | -| `Type` | [components.AnthropicTextEditorCodeExecutionStrReplaceResultType](../../models/components/anthropictexteditorcodeexecutionstrreplaceresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Lines` | []`string` | :heavy_check_mark: | N/A | +| `NewLines` | `*int64` | :heavy_check_mark: | N/A | +| `NewStart` | `*int64` | :heavy_check_mark: | N/A | +| `OldLines` | `*int64` | :heavy_check_mark: | N/A | +| `OldStart` | `*int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicTextEditorCodeExecutionStrReplaceResultType](../../models/components/anthropictexteditorcodeexecutionstrreplaceresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictexteditorcodeexecutiontoolresult.mdx b/docs/models/components/anthropictexteditorcodeexecutiontoolresult.mdx index 1565dac1f..667cf9976 100644 --- a/docs/models/components/anthropictexteditorcodeexecutiontoolresult.mdx +++ b/docs/models/components/anthropictexteditorcodeexecutiontoolresult.mdx @@ -6,6 +6,6 @@ title: "AnthropicTextEditorCodeExecutionToolResult" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.AnthropicTextEditorCodeExecutionContent](../../models/components/anthropictexteditorcodeexecutioncontent.mdx) | ✅ | N/A | \{
"content": "file content",
"file_type": "text",
"num_lines": 10,
"start_line": 1,
"total_lines": 10,
"type": "text_editor_code_execution_view_result"
} | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicTextEditorCodeExecutionToolResultType](../../models/components/anthropictexteditorcodeexecutiontoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.AnthropicTextEditorCodeExecutionContent](../../models/components/anthropictexteditorcodeexecutioncontent.mdx) | :heavy_check_mark: | N/A | \{
"content": "file content",
"file_type": "text",
"num_lines": 10,
"start_line": 1,
"total_lines": 10,
"type": "text_editor_code_execution_view_result"
} | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicTextEditorCodeExecutionToolResultType](../../models/components/anthropictexteditorcodeexecutiontoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictexteditorcodeexecutiontoolresulterror.mdx b/docs/models/components/anthropictexteditorcodeexecutiontoolresulterror.mdx index 1759f49f8..b0fec48eb 100644 --- a/docs/models/components/anthropictexteditorcodeexecutiontoolresulterror.mdx +++ b/docs/models/components/anthropictexteditorcodeexecutiontoolresulterror.mdx @@ -6,6 +6,6 @@ title: "AnthropicTextEditorCodeExecutionToolResultError" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ErrorCode` | [components.AnthropicTextEditorCodeExecutionToolResultErrorErrorCode](../../models/components/anthropictexteditorcodeexecutiontoolresulterrorerrorcode.mdx) | ✅ | N/A | -| `ErrorMessage` | `*string` | ✅ | N/A | -| `Type` | [components.AnthropicTextEditorCodeExecutionToolResultErrorType](../../models/components/anthropictexteditorcodeexecutiontoolresulterrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `ErrorCode` | [components.AnthropicTextEditorCodeExecutionToolResultErrorErrorCode](../../models/components/anthropictexteditorcodeexecutiontoolresulterrorerrorcode.mdx) | :heavy_check_mark: | N/A | +| `ErrorMessage` | `*string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicTextEditorCodeExecutionToolResultErrorType](../../models/components/anthropictexteditorcodeexecutiontoolresulterrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictexteditorcodeexecutionviewresult.mdx b/docs/models/components/anthropictexteditorcodeexecutionviewresult.mdx index 9dcbc9888..02c45a0bf 100644 --- a/docs/models/components/anthropictexteditorcodeexecutionviewresult.mdx +++ b/docs/models/components/anthropictexteditorcodeexecutionviewresult.mdx @@ -6,9 +6,9 @@ title: "AnthropicTextEditorCodeExecutionViewResult" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | `string` | ✅ | N/A | -| `FileType` | [components.AnthropicTextEditorCodeExecutionViewResultFileType](../../models/components/anthropictexteditorcodeexecutionviewresultfiletype.mdx) | ✅ | N/A | -| `NumLines` | `*int64` | ✅ | N/A | -| `StartLine` | `*int64` | ✅ | N/A | -| `TotalLines` | `*int64` | ✅ | N/A | -| `Type` | [components.AnthropicTextEditorCodeExecutionViewResultType](../../models/components/anthropictexteditorcodeexecutionviewresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | `string` | :heavy_check_mark: | N/A | +| `FileType` | [components.AnthropicTextEditorCodeExecutionViewResultFileType](../../models/components/anthropictexteditorcodeexecutionviewresultfiletype.mdx) | :heavy_check_mark: | N/A | +| `NumLines` | `*int64` | :heavy_check_mark: | N/A | +| `StartLine` | `*int64` | :heavy_check_mark: | N/A | +| `TotalLines` | `*int64` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicTextEditorCodeExecutionViewResultType](../../models/components/anthropictexteditorcodeexecutionviewresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicthinkingblock.mdx b/docs/models/components/anthropicthinkingblock.mdx index 02a919310..c5dbf107e 100644 --- a/docs/models/components/anthropicthinkingblock.mdx +++ b/docs/models/components/anthropicthinkingblock.mdx @@ -6,6 +6,6 @@ title: "AnthropicThinkingBlock" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Signature` | `string` | ✅ | N/A | -| `Thinking` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicThinkingBlockType](../../models/components/anthropicthinkingblocktype.mdx) | ✅ | N/A | \ No newline at end of file +| `Signature` | `string` | :heavy_check_mark: | N/A | +| `Thinking` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicThinkingBlockType](../../models/components/anthropicthinkingblocktype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicthinkingblockbinding.mdx b/docs/models/components/anthropicthinkingblockbinding.mdx index f0e8a03d2..b372a70e1 100644 --- a/docs/models/components/anthropicthinkingblockbinding.mdx +++ b/docs/models/components/anthropicthinkingblockbinding.mdx @@ -6,5 +6,5 @@ title: "AnthropicThinkingBlockBinding" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| ~~`MismatchBehavior`~~ | optionalnullable.OptionalNullable[[components.MismatchBehavior](../../models/components/mismatchbehavior.mdx)] | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: legacy alias of prefix_mismatch_behavior. Send only one of the two. | -| `PrefixMismatchBehavior` | optionalnullable.OptionalNullable[[components.PrefixMismatchBehavior](../../models/components/prefixmismatchbehavior.mdx)] | ➖ | N/A | \ No newline at end of file +| ~~`MismatchBehavior`~~ | optionalnullable.OptionalNullable[[components.MismatchBehavior](../../models/components/mismatchbehavior.mdx)] | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: legacy alias of prefix_mismatch_behavior. Send only one of the two. | +| `PrefixMismatchBehavior` | optionalnullable.OptionalNullable[[components.PrefixMismatchBehavior](../../models/components/prefixmismatchbehavior.mdx)] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicthinkingturns.mdx b/docs/models/components/anthropicthinkingturns.mdx index bc2df8200..81a629801 100644 --- a/docs/models/components/anthropicthinkingturns.mdx +++ b/docs/models/components/anthropicthinkingturns.mdx @@ -6,5 +6,5 @@ title: "AnthropicThinkingTurns" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicThinkingTurnsType](../../models/components/anthropicthinkingturnstype.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicThinkingTurnsType](../../models/components/anthropicthinkingturnstype.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictoolreference.mdx b/docs/models/components/anthropictoolreference.mdx index ced1608ad..42339f5f1 100644 --- a/docs/models/components/anthropictoolreference.mdx +++ b/docs/models/components/anthropictoolreference.mdx @@ -6,5 +6,5 @@ title: "AnthropicToolReference" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `ToolName` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicToolReferenceType](../../models/components/anthropictoolreferencetype.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicToolReferenceType](../../models/components/anthropictoolreferencetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictoolsearchresult.mdx b/docs/models/components/anthropictoolsearchresult.mdx index 665607078..83619a5fa 100644 --- a/docs/models/components/anthropictoolsearchresult.mdx +++ b/docs/models/components/anthropictoolsearchresult.mdx @@ -6,5 +6,5 @@ title: "AnthropicToolSearchResult" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ToolReferences` | [][components.AnthropicToolReference](../../models/components/anthropictoolreference.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicToolSearchResultType](../../models/components/anthropictoolsearchresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolReferences` | [][components.AnthropicToolReference](../../models/components/anthropictoolreference.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicToolSearchResultType](../../models/components/anthropictoolsearchresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictoolsearchresulterror.mdx b/docs/models/components/anthropictoolsearchresulterror.mdx index e8e41e10a..c3d0c9f5e 100644 --- a/docs/models/components/anthropictoolsearchresulterror.mdx +++ b/docs/models/components/anthropictoolsearchresulterror.mdx @@ -6,6 +6,6 @@ title: "AnthropicToolSearchResultError" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `ErrorCode` | [components.AnthropicServerToolErrorCode](../../models/components/anthropicservertoolerrorcode.mdx) | ✅ | N/A | unavailable | -| `ErrorMessage` | `*string` | ✅ | N/A | | -| `Type` | [components.AnthropicToolSearchResultErrorType](../../models/components/anthropictoolsearchresulterrortype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ErrorCode` | [components.AnthropicServerToolErrorCode](../../models/components/anthropicservertoolerrorcode.mdx) | :heavy_check_mark: | N/A | unavailable | +| `ErrorMessage` | `*string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicToolSearchResultErrorType](../../models/components/anthropictoolsearchresulterrortype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictoolsearchtoolbm25.mdx b/docs/models/components/anthropictoolsearchtoolbm25.mdx index 6989bf48e..a9c53b68e 100644 --- a/docs/models/components/anthropictoolsearchtoolbm25.mdx +++ b/docs/models/components/anthropictoolsearchtoolbm25.mdx @@ -6,9 +6,9 @@ title: "AnthropicToolSearchToolBm25" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | ➖ | N/A | [
"direct"
] | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Name` | [components.AnthropicToolSearchToolBm25Name](../../models/components/anthropictoolsearchtoolbm25name.mdx) | ✅ | N/A | | -| `Strict` | `*bool` | ➖ | N/A | | -| `Type` | [components.AnthropicToolSearchToolBm25Type](../../models/components/anthropictoolsearchtoolbm25type.mdx) | ✅ | N/A | | \ No newline at end of file +| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | :heavy_minus_sign: | N/A | [
"direct"
] | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Name` | [components.AnthropicToolSearchToolBm25Name](../../models/components/anthropictoolsearchtoolbm25name.mdx) | :heavy_check_mark: | N/A | | +| `Strict` | `*bool` | :heavy_minus_sign: | N/A | | +| `Type` | [components.AnthropicToolSearchToolBm25Type](../../models/components/anthropictoolsearchtoolbm25type.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictoolsearchtoolregex.mdx b/docs/models/components/anthropictoolsearchtoolregex.mdx index 0fb649a00..7955aafda 100644 --- a/docs/models/components/anthropictoolsearchtoolregex.mdx +++ b/docs/models/components/anthropictoolsearchtoolregex.mdx @@ -6,9 +6,9 @@ title: "AnthropicToolSearchToolRegex" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | ➖ | N/A | [
"direct"
] | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Name` | [components.AnthropicToolSearchToolRegexName](../../models/components/anthropictoolsearchtoolregexname.mdx) | ✅ | N/A | | -| `Strict` | `*bool` | ➖ | N/A | | -| `Type` | [components.AnthropicToolSearchToolRegexType](../../models/components/anthropictoolsearchtoolregextype.mdx) | ✅ | N/A | | \ No newline at end of file +| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | :heavy_minus_sign: | N/A | [
"direct"
] | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Name` | [components.AnthropicToolSearchToolRegexName](../../models/components/anthropictoolsearchtoolregexname.mdx) | :heavy_check_mark: | N/A | | +| `Strict` | `*bool` | :heavy_minus_sign: | N/A | | +| `Type` | [components.AnthropicToolSearchToolRegexType](../../models/components/anthropictoolsearchtoolregextype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictoolsearchtoolresult.mdx b/docs/models/components/anthropictoolsearchtoolresult.mdx index 170917f8b..a8ff6e164 100644 --- a/docs/models/components/anthropictoolsearchtoolresult.mdx +++ b/docs/models/components/anthropictoolsearchtoolresult.mdx @@ -6,6 +6,6 @@ title: "AnthropicToolSearchToolResult" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.AnthropicToolSearchContent](../../models/components/anthropictoolsearchcontent.mdx) | ✅ | N/A | \{
"tool_references": [
\{
"tool_name": "my_tool",
"type": "tool_reference"
}
],
"type": "tool_search_tool_search_result"
} | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicToolSearchToolResultType](../../models/components/anthropictoolsearchtoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.AnthropicToolSearchContent](../../models/components/anthropictoolsearchcontent.mdx) | :heavy_check_mark: | N/A | \{
"tool_references": [
\{
"tool_name": "my_tool",
"type": "tool_reference"
}
],
"type": "tool_search_tool_search_result"
} | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicToolSearchToolResultType](../../models/components/anthropictoolsearchtoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictooluseblock.mdx b/docs/models/components/anthropictooluseblock.mdx index 9d2c4297a..2c922b09b 100644 --- a/docs/models/components/anthropictooluseblock.mdx +++ b/docs/models/components/anthropictooluseblock.mdx @@ -6,8 +6,8 @@ title: "AnthropicToolUseBlock" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | ✅ | N/A | \{
"type": "direct"
} | -| `ID` | `string` | ✅ | N/A | | -| `Input` | `any` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicToolUseBlockType](../../models/components/anthropictooluseblocktype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | :heavy_check_mark: | N/A | \{
"type": "direct"
} | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Input` | `any` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicToolUseBlockType](../../models/components/anthropictooluseblocktype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropictooluseskeep.mdx b/docs/models/components/anthropictooluseskeep.mdx index 6ec63c0fd..aa7dcff64 100644 --- a/docs/models/components/anthropictooluseskeep.mdx +++ b/docs/models/components/anthropictooluseskeep.mdx @@ -6,5 +6,5 @@ title: "AnthropicToolUsesKeep" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicToolUsesKeepType](../../models/components/anthropictooluseskeeptype.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicToolUsesKeepType](../../models/components/anthropictooluseskeeptype.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropictoolusestrigger.mdx b/docs/models/components/anthropictoolusestrigger.mdx index f870871c0..5c288271f 100644 --- a/docs/models/components/anthropictoolusestrigger.mdx +++ b/docs/models/components/anthropictoolusestrigger.mdx @@ -6,5 +6,5 @@ title: "AnthropicToolUsesTrigger" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicToolUsesTriggerType](../../models/components/anthropictoolusestriggertype.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicToolUsesTriggerType](../../models/components/anthropictoolusestriggertype.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicunknownusageiteration.mdx b/docs/models/components/anthropicunknownusageiteration.mdx index 3e42011d3..bbe04bc10 100644 --- a/docs/models/components/anthropicunknownusageiteration.mdx +++ b/docs/models/components/anthropicunknownusageiteration.mdx @@ -6,9 +6,9 @@ title: "AnthropicUnknownUsageIteration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | -| `CacheCreationInputTokens` | `*int64` | ➖ | N/A | | -| `CacheReadInputTokens` | `*int64` | ➖ | N/A | | -| `InputTokens` | `*int64` | ➖ | N/A | | -| `OutputTokens` | `*int64` | ➖ | N/A | | -| `Type` | `string` | ✅ | N/A | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicIterationCacheCreation](../../models/components/anthropiciterationcachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
} | +| `CacheCreationInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `CacheReadInputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `InputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `OutputTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `Type` | `string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicurlimagesource.mdx b/docs/models/components/anthropicurlimagesource.mdx index 5730f3059..6c06a3802 100644 --- a/docs/models/components/anthropicurlimagesource.mdx +++ b/docs/models/components/anthropicurlimagesource.mdx @@ -6,5 +6,5 @@ title: "AnthropicURLImageSource" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Type` | [components.AnthropicURLImageSourceType](../../models/components/anthropicurlimagesourcetype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicURLImageSourceType](../../models/components/anthropicurlimagesourcetype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicurlpdfsource.mdx b/docs/models/components/anthropicurlpdfsource.mdx index 5fc61ebf2..20ac41425 100644 --- a/docs/models/components/anthropicurlpdfsource.mdx +++ b/docs/models/components/anthropicurlpdfsource.mdx @@ -6,5 +6,5 @@ title: "AnthropicURLPdfSource" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Type` | [components.AnthropicURLPdfSourceType](../../models/components/anthropicurlpdfsourcetype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.AnthropicURLPdfSourceType](../../models/components/anthropicurlpdfsourcetype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicwebfetchblock.mdx b/docs/models/components/anthropicwebfetchblock.mdx index e5e7b9898..ad112c2cc 100644 --- a/docs/models/components/anthropicwebfetchblock.mdx +++ b/docs/models/components/anthropicwebfetchblock.mdx @@ -6,7 +6,7 @@ title: "AnthropicWebFetchBlock" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.AnthropicDocumentBlock](../../models/components/anthropicdocumentblock.mdx) | ✅ | N/A | \{
"citations": null,
"source": \{
"data": "Hello, world!",
"media_type": "text/plain",
"type": "text"
},
"title": null,
"type": "document"
} | -| `RetrievedAt` | `*string` | ✅ | N/A | | -| `Type` | [components.AnthropicWebFetchBlockType](../../models/components/anthropicwebfetchblocktype.mdx) | ✅ | N/A | | -| `URL` | `string` | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.AnthropicDocumentBlock](../../models/components/anthropicdocumentblock.mdx) | :heavy_check_mark: | N/A | \{
"citations": null,
"source": \{
"data": "Hello, world!",
"media_type": "text/plain",
"type": "text"
},
"title": null,
"type": "document"
} | +| `RetrievedAt` | `*string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicWebFetchBlockType](../../models/components/anthropicwebfetchblocktype.mdx) | :heavy_check_mark: | N/A | | +| `URL` | `string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicwebfetchtoolresult.mdx b/docs/models/components/anthropicwebfetchtoolresult.mdx index b3741a480..32c8c00e3 100644 --- a/docs/models/components/anthropicwebfetchtoolresult.mdx +++ b/docs/models/components/anthropicwebfetchtoolresult.mdx @@ -6,7 +6,7 @@ title: "AnthropicWebFetchToolResult" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | ✅ | N/A | \{
"type": "direct"
} | -| `Content` | [components.AnthropicWebFetchContent](../../models/components/anthropicwebfetchcontent.mdx) | ✅ | N/A | \{
"content": \{
"citations": null,
"source": \{
"data": "",
"media_type": "text/plain",
"type": "text"
},
"title": null,
"type": "document"
},
"retrieved_at": null,
"type": "web_fetch_result",
"url": "https://example.com"
} | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicWebFetchToolResultType](../../models/components/anthropicwebfetchtoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | :heavy_check_mark: | N/A | \{
"type": "direct"
} | +| `Content` | [components.AnthropicWebFetchContent](../../models/components/anthropicwebfetchcontent.mdx) | :heavy_check_mark: | N/A | \{
"content": \{
"citations": null,
"source": \{
"data": "",
"media_type": "text/plain",
"type": "text"
},
"title": null,
"type": "document"
},
"retrieved_at": null,
"type": "web_fetch_result",
"url": "https://example.com"
} | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicWebFetchToolResultType](../../models/components/anthropicwebfetchtoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicwebfetchtoolresulterror.mdx b/docs/models/components/anthropicwebfetchtoolresulterror.mdx index 043f09829..3923fcf4e 100644 --- a/docs/models/components/anthropicwebfetchtoolresulterror.mdx +++ b/docs/models/components/anthropicwebfetchtoolresulterror.mdx @@ -6,5 +6,5 @@ title: "AnthropicWebFetchToolResultError" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `ErrorCode` | [components.AnthropicWebFetchToolResultErrorErrorCode](../../models/components/anthropicwebfetchtoolresulterrorerrorcode.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicWebFetchToolResultErrorType](../../models/components/anthropicwebfetchtoolresulterrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `ErrorCode` | [components.AnthropicWebFetchToolResultErrorErrorCode](../../models/components/anthropicwebfetchtoolresulterrorerrorcode.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicWebFetchToolResultErrorType](../../models/components/anthropicwebfetchtoolresulterrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicwebsearchresult.mdx b/docs/models/components/anthropicwebsearchresult.mdx index 0809fe1ea..c7c292031 100644 --- a/docs/models/components/anthropicwebsearchresult.mdx +++ b/docs/models/components/anthropicwebsearchresult.mdx @@ -6,8 +6,8 @@ title: "AnthropicWebSearchResult" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `EncryptedContent` | `string` | ✅ | N/A | -| `PageAge` | `*string` | ✅ | N/A | -| `Title` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicWebSearchResultType](../../models/components/anthropicwebsearchresulttype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `EncryptedContent` | `string` | :heavy_check_mark: | N/A | +| `PageAge` | `*string` | :heavy_check_mark: | N/A | +| `Title` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicWebSearchResultType](../../models/components/anthropicwebsearchresulttype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicwebsearchresultblockparam.mdx b/docs/models/components/anthropicwebsearchresultblockparam.mdx index e47721113..eb6574209 100644 --- a/docs/models/components/anthropicwebsearchresultblockparam.mdx +++ b/docs/models/components/anthropicwebsearchresultblockparam.mdx @@ -6,8 +6,8 @@ title: "AnthropicWebSearchResultBlockParam" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `EncryptedContent` | `string` | ✅ | N/A | -| `PageAge` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Title` | `string` | ✅ | N/A | -| `Type` | [components.AnthropicWebSearchResultBlockParamType](../../models/components/anthropicwebsearchresultblockparamtype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `EncryptedContent` | `string` | :heavy_check_mark: | N/A | +| `PageAge` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Title` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicWebSearchResultBlockParamType](../../models/components/anthropicwebsearchresultblockparamtype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicwebsearchtoolresult.mdx b/docs/models/components/anthropicwebsearchtoolresult.mdx index 7abc9fe9b..baa262b12 100644 --- a/docs/models/components/anthropicwebsearchtoolresult.mdx +++ b/docs/models/components/anthropicwebsearchtoolresult.mdx @@ -6,7 +6,7 @@ title: "AnthropicWebSearchToolResult" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | ✅ | N/A | \{
"type": "direct"
} | -| `Content` | [components.AnthropicWebSearchToolResultContent](../../models/components/anthropicwebsearchtoolresultcontent.mdx) | ✅ | N/A | | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.AnthropicWebSearchToolResultType](../../models/components/anthropicwebsearchtoolresulttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Caller` | [components.AnthropicCaller](../../models/components/anthropiccaller.mdx) | :heavy_check_mark: | N/A | \{
"type": "direct"
} | +| `Content` | [components.AnthropicWebSearchToolResultContent](../../models/components/anthropicwebsearchtoolresultcontent.mdx) | :heavy_check_mark: | N/A | | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.AnthropicWebSearchToolResultType](../../models/components/anthropicwebsearchtoolresulttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/anthropicwebsearchtoolresulterror.mdx b/docs/models/components/anthropicwebsearchtoolresulterror.mdx index 6f7751d9a..44eb9f000 100644 --- a/docs/models/components/anthropicwebsearchtoolresulterror.mdx +++ b/docs/models/components/anthropicwebsearchtoolresulterror.mdx @@ -6,5 +6,5 @@ title: "AnthropicWebSearchToolResultError" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `ErrorCode` | [components.AnthropicWebSearchToolResultErrorErrorCode](../../models/components/anthropicwebsearchtoolresulterrorerrorcode.mdx) | ✅ | N/A | -| `Type` | [components.AnthropicWebSearchToolResultErrorType](../../models/components/anthropicwebsearchtoolresulterrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `ErrorCode` | [components.AnthropicWebSearchToolResultErrorErrorCode](../../models/components/anthropicwebsearchtoolresulterrorerrorcode.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.AnthropicWebSearchToolResultErrorType](../../models/components/anthropicwebsearchtoolresulterrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/anthropicwebsearchtooluserlocation.mdx b/docs/models/components/anthropicwebsearchtooluserlocation.mdx index faddcecbe..d4d13b471 100644 --- a/docs/models/components/anthropicwebsearchtooluserlocation.mdx +++ b/docs/models/components/anthropicwebsearchtooluserlocation.mdx @@ -6,8 +6,8 @@ title: "AnthropicWebSearchToolUserLocation" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `City` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Country` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Region` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Timezone` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.AnthropicWebSearchToolUserLocationType](../../models/components/anthropicwebsearchtooluserlocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `City` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Country` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Region` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Timezone` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.AnthropicWebSearchToolUserLocationType](../../models/components/anthropicwebsearchtooluserlocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchcallitem.mdx b/docs/models/components/applypatchcallitem.mdx index 294dac6d0..e4cf696eb 100644 --- a/docs/models/components/applypatchcallitem.mdx +++ b/docs/models/components/applypatchcallitem.mdx @@ -9,8 +9,8 @@ A tool call emitted by the model requesting a V4A patch operation. The client ap | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Operation` | [components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | ✅ | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | -| `Status` | [components.ApplyPatchCallStatus](../../models/components/applypatchcallstatus.mdx) | ✅ | Lifecycle state of an `apply_patch_call` output item. | completed | -| `Type` | [components.ApplyPatchCallItemType](../../models/components/applypatchcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Operation` | [components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | :heavy_check_mark: | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | +| `Status` | [components.ApplyPatchCallStatus](../../models/components/applypatchcallstatus.mdx) | :heavy_check_mark: | Lifecycle state of an `apply_patch_call` output item. | completed | +| `Type` | [components.ApplyPatchCallItemType](../../models/components/applypatchcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/applypatchcalloperationdiffdeltaevent.mdx b/docs/models/components/applypatchcalloperationdiffdeltaevent.mdx index 3f410cdab..6d90864ad 100644 --- a/docs/models/components/applypatchcalloperationdiffdeltaevent.mdx +++ b/docs/models/components/applypatchcalloperationdiffdeltaevent.mdx @@ -9,8 +9,8 @@ Incremental chunk of `operation.diff` for an `apply_patch_call`. Matches OpenAI' | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ApplyPatchCallOperationDiffDeltaEventType](../../models/components/applypatchcalloperationdiffdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchCallOperationDiffDeltaEventType](../../models/components/applypatchcalloperationdiffdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchcalloperationdiffdoneevent.mdx b/docs/models/components/applypatchcalloperationdiffdoneevent.mdx index 5fc4339fd..eded2af51 100644 --- a/docs/models/components/applypatchcalloperationdiffdoneevent.mdx +++ b/docs/models/components/applypatchcalloperationdiffdoneevent.mdx @@ -9,8 +9,8 @@ Emitted when `operation.diff` streaming completes for an `apply_patch_call`. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `Diff` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ApplyPatchCallOperationDiffDoneEventType](../../models/components/applypatchcalloperationdiffdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Diff` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchCallOperationDiffDoneEventType](../../models/components/applypatchcalloperationdiffdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchcalloutputitem.mdx b/docs/models/components/applypatchcalloutputitem.mdx index 26912170c..e52266b81 100644 --- a/docs/models/components/applypatchcalloutputitem.mdx +++ b/docs/models/components/applypatchcalloutputitem.mdx @@ -9,8 +9,8 @@ The client's echo of an `apply_patch_call` after applying the patch. `output` is | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `CallID` | `string` | ✅ | N/A | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Output` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Status` | [components.ApplyPatchCallOutputItemStatus](../../models/components/applypatchcalloutputitemstatus.mdx) | ✅ | N/A | -| `Type` | [components.ApplyPatchCallOutputItemType](../../models/components/applypatchcalloutputitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Output` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Status` | [components.ApplyPatchCallOutputItemStatus](../../models/components/applypatchcalloutputitemstatus.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchCallOutputItemType](../../models/components/applypatchcalloutputitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchcreatefileoperation.mdx b/docs/models/components/applypatchcreatefileoperation.mdx index b14181550..031da0c12 100644 --- a/docs/models/components/applypatchcreatefileoperation.mdx +++ b/docs/models/components/applypatchcreatefileoperation.mdx @@ -9,6 +9,6 @@ The `create_file` variant of an `apply_patch_call.operation`. Carries a V4A diff | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Diff` | `string` | ✅ | N/A | -| `Path` | `string` | ✅ | N/A | -| `Type` | [components.ApplyPatchCreateFileOperationType](../../models/components/applypatchcreatefileoperationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Diff` | `string` | :heavy_check_mark: | N/A | +| `Path` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchCreateFileOperationType](../../models/components/applypatchcreatefileoperationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchdeletefileoperation.mdx b/docs/models/components/applypatchdeletefileoperation.mdx index c6fd9c0a7..961833216 100644 --- a/docs/models/components/applypatchdeletefileoperation.mdx +++ b/docs/models/components/applypatchdeletefileoperation.mdx @@ -9,5 +9,5 @@ The `delete_file` variant of an `apply_patch_call.operation`. Identifies the fil | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Path` | `string` | ✅ | N/A | -| `Type` | [components.ApplyPatchDeleteFileOperationType](../../models/components/applypatchdeletefileoperationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Path` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchDeleteFileOperationType](../../models/components/applypatchdeletefileoperationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchservertool.mdx b/docs/models/components/applypatchservertool.mdx index 0cccaaf1d..7536b291a 100644 --- a/docs/models/components/applypatchservertool.mdx +++ b/docs/models/components/applypatchservertool.mdx @@ -9,4 +9,4 @@ Apply patch tool configuration | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Type` | [components.ApplyPatchServerToolType](../../models/components/applypatchservertooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ApplyPatchServerToolType](../../models/components/applypatchservertooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/applypatchservertoolconfig.mdx b/docs/models/components/applypatchservertoolconfig.mdx index 823ea3ffe..9f223f7ff 100644 --- a/docs/models/components/applypatchservertoolconfig.mdx +++ b/docs/models/components/applypatchservertoolconfig.mdx @@ -9,4 +9,4 @@ Configuration for the openrouter:apply_patch server tool | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Engine` | [*components.ApplyPatchEngineEnum](../../models/components/applypatchengineenum.mdx) | ➖ | Which apply_patch engine to use. "auto" (default) uses native passthrough when the endpoint advertises native apply_patch support, otherwise falls back to OpenRouter's HITL validator. "native" forces native passthrough — when the endpoint does not support native, the request falls back to HITL. "openrouter" always runs the HITL validator. Native passthrough streams the diff incrementally via `apply_patch_call_operation_diff.delta` events; HITL buffers the diff for atomic delivery as a single delta. | auto | \ No newline at end of file +| `Engine` | [*components.ApplyPatchEngineEnum](../../models/components/applypatchengineenum.mdx) | :heavy_minus_sign: | Which apply_patch engine to use. "auto" (default) uses native passthrough when the endpoint advertises native apply_patch support, otherwise falls back to OpenRouter's HITL validator. "native" forces native passthrough — when the endpoint does not support native, the request falls back to HITL. "openrouter" always runs the HITL validator. Native passthrough streams the diff incrementally via `apply_patch_call_operation_diff.delta` events; HITL buffers the diff for atomic delivery as a single delta. | auto | \ No newline at end of file diff --git a/docs/models/components/applypatchservertoolopenrouter.mdx b/docs/models/components/applypatchservertoolopenrouter.mdx index 32ebb50a9..db392acd4 100644 --- a/docs/models/components/applypatchservertoolopenrouter.mdx +++ b/docs/models/components/applypatchservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: validates V4A diff patches for file operations | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.ApplyPatchServerToolConfig](../../models/components/applypatchservertoolconfig.mdx) | ➖ | Configuration for the openrouter:apply_patch server tool | \{
"engine": "auto"
} | -| `Type` | [components.ApplyPatchServerToolOpenRouterType](../../models/components/applypatchservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.ApplyPatchServerToolConfig](../../models/components/applypatchservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:apply_patch server tool | \{
"engine": "auto"
} | +| `Type` | [components.ApplyPatchServerToolOpenRouterType](../../models/components/applypatchservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/applypatchupdatefileoperation.mdx b/docs/models/components/applypatchupdatefileoperation.mdx index 726fa8292..33ff6f7bb 100644 --- a/docs/models/components/applypatchupdatefileoperation.mdx +++ b/docs/models/components/applypatchupdatefileoperation.mdx @@ -9,6 +9,6 @@ The `update_file` variant of an `apply_patch_call.operation`. Carries a V4A diff | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Diff` | `string` | ✅ | N/A | -| `Path` | `string` | ✅ | N/A | -| `Type` | [components.ApplyPatchUpdateFileOperationType](../../models/components/applypatchupdatefileoperationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Diff` | `string` | :heavy_check_mark: | N/A | +| `Path` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ApplyPatchUpdateFileOperationType](../../models/components/applypatchupdatefileoperationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/apprankingsitem.mdx b/docs/models/components/apprankingsitem.mdx index fb3641271..4e9d6619a 100644 --- a/docs/models/components/apprankingsitem.mdx +++ b/docs/models/components/apprankingsitem.mdx @@ -6,8 +6,8 @@ title: "AppRankingsItem" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AppID` | `int64` | ✅ | Stable numeric identifier of the app on OpenRouter. | 12345 | -| `AppName` | `string` | ✅ | Public display name of the app. | Cline | -| `Rank` | `int64` | ✅ | 1-based position of the app within this response, per the requested `sort`. | 1 | -| `TotalRequests` | `int64` | ✅ | Number of requests attributed to the app inside the date window. | 4321 | -| `TotalTokens` | `string` | ✅ | Sum of `prompt_tokens + completion_tokens` attributed to the app inside the date window, returned as a decimal string so 64-bit values are not truncated. | 12345678 | \ No newline at end of file +| `AppID` | `int64` | :heavy_check_mark: | Stable numeric identifier of the app on OpenRouter. | 12345 | +| `AppName` | `string` | :heavy_check_mark: | Public display name of the app. | Cline | +| `Rank` | `int64` | :heavy_check_mark: | 1-based position of the app within this response, per the requested `sort`. | 1 | +| `TotalRequests` | `int64` | :heavy_check_mark: | Number of requests attributed to the app inside the date window. | 4321 | +| `TotalTokens` | `string` | :heavy_check_mark: | Sum of `prompt_tokens + completion_tokens` attributed to the app inside the date window, returned as a decimal string so 64-bit values are not truncated. | 12345678 | \ No newline at end of file diff --git a/docs/models/components/apprankingsresponse.mdx b/docs/models/components/apprankingsresponse.mdx index 3737c4dc2..bb0c7e9e9 100644 --- a/docs/models/components/apprankingsresponse.mdx +++ b/docs/models/components/apprankingsresponse.mdx @@ -6,5 +6,5 @@ title: "AppRankingsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Data` | [][components.AppRankingsItem](../../models/components/apprankingsitem.mdx) | ✅ | Apps ranked per the requested `sort`, re-numbered 1..N after category filtering. `popular` sorts by `total_tokens` descending; `trending` sorts by absolute excess token growth descending and may return fewer than `limit` rows when few apps are growing. | | -| `Meta` | [components.RankingsDailyMeta](../../models/components/rankingsdailymeta.mdx) | ✅ | N/A | \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
} | \ No newline at end of file +| `Data` | [][components.AppRankingsItem](../../models/components/apprankingsitem.mdx) | :heavy_check_mark: | Apps ranked per the requested `sort`, re-numbered 1..N after category filtering. `popular` sorts by `total_tokens` descending; `trending` sorts by absolute excess token growth descending and may return fewer than `limit` rows when few apps are growing. | | +| `Meta` | [components.RankingsDailyMeta](../../models/components/rankingsdailymeta.mdx) | :heavy_check_mark: | N/A | \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
} | \ No newline at end of file diff --git a/docs/models/components/architecture.mdx b/docs/models/components/architecture.mdx index 2346745ca..ced20cd9f 100644 --- a/docs/models/components/architecture.mdx +++ b/docs/models/components/architecture.mdx @@ -9,8 +9,8 @@ Model architecture information | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `InputModalities` | [][components.InputModality](../../models/components/inputmodality.mdx) | ✅ | Supported input modalities | | -| `InstructType` | [*components.InstructType](../../models/components/instructtype.mdx) | ✅ | Instruction format type | chatml | -| `Modality` | `*string` | ✅ | Primary modality of the model | text | -| `OutputModalities` | [][components.OutputModality](../../models/components/outputmodality.mdx) | ✅ | Supported output modalities | | -| `Tokenizer` | [*components.ModelGroup](../../models/components/modelgroup.mdx) | ✅ | N/A | GPT | \ No newline at end of file +| `InputModalities` | [][components.InputModality](../../models/components/inputmodality.mdx) | :heavy_check_mark: | Supported input modalities | | +| `InstructType` | [*components.InstructType](../../models/components/instructtype.mdx) | :heavy_check_mark: | Instruction format type | chatml | +| `Modality` | `*string` | :heavy_check_mark: | Primary modality of the model | text | +| `OutputModalities` | [][components.OutputModality](../../models/components/outputmodality.mdx) | :heavy_check_mark: | Supported output modalities | | +| `Tokenizer` | [*components.ModelGroup](../../models/components/modelgroup.mdx) | :heavy_check_mark: | N/A | GPT | \ No newline at end of file diff --git a/docs/models/components/armorautomode.mdx b/docs/models/components/armorautomode.mdx index ff844b3ff..bbdba148e 100644 --- a/docs/models/components/armorautomode.mdx +++ b/docs/models/components/armorautomode.mdx @@ -6,7 +6,7 @@ title: "ArmorAutoMode" | Field | Type | Required | Description | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Allow` | [][components.Allow](../../models/components/allow.mdx) | ➖ | N/A | -| `Environment` | [][components.Environment](../../models/components/environment.mdx) | ➖ | N/A | -| `HardDeny` | [][components.HardDeny](../../models/components/harddeny.mdx) | ➖ | N/A | -| `SoftDeny` | [][components.SoftDeny](../../models/components/softdeny.mdx) | ➖ | N/A | \ No newline at end of file +| `Allow` | [][components.Allow](../../models/components/allow.mdx) | :heavy_minus_sign: | N/A | +| `Environment` | [][components.Environment](../../models/components/environment.mdx) | :heavy_minus_sign: | N/A | +| `HardDeny` | [][components.HardDeny](../../models/components/harddeny.mdx) | :heavy_minus_sign: | N/A | +| `SoftDeny` | [][components.SoftDeny](../../models/components/softdeny.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/armorcontext.mdx b/docs/models/components/armorcontext.mdx index 3bf5aa67d..72bbfc5f0 100644 --- a/docs/models/components/armorcontext.mdx +++ b/docs/models/components/armorcontext.mdx @@ -9,6 +9,6 @@ The Armor context: Claude Code's `classifier_context` (v1), with `auto_mode.{har | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AutoMode` | [*components.ArmorAutoMode](../../models/components/armorautomode.mdx) | ➖ | N/A | | -| `V` | `float64` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"auto_mode": \{
"allow": [],
"environment": [
"Trusted repo: github.com/acme/app"
],
"hard_deny": [],
"soft_deny": [
\{
"id": "secrets-in-vcs",
"instructions": "Staging, committing or pushing a file that holds secrets, including indirectly through git add -A when the tree shows one."
}
]
},
"v": 1
} | \ No newline at end of file +| `AutoMode` | [*components.ArmorAutoMode](../../models/components/armorautomode.mdx) | :heavy_minus_sign: | N/A | | +| `V` | `float64` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"auto_mode": \{
"allow": [],
"environment": [
"Trusted repo: github.com/acme/app"
],
"hard_deny": [],
"soft_deny": [
\{
"id": "secrets-in-vcs",
"instructions": "Staging, committing or pushing a file that holds secrets, including indirectly through git add -A when the tree shows one."
}
]
},
"v": 1
} | \ No newline at end of file diff --git a/docs/models/components/armorenvironmententry.mdx b/docs/models/components/armorenvironmententry.mdx index a4a62d5d7..218063ab2 100644 --- a/docs/models/components/armorenvironmententry.mdx +++ b/docs/models/components/armorenvironmententry.mdx @@ -6,5 +6,5 @@ title: "ArmorEnvironmentEntry" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Name` | `string` | ✅ | N/A | -| `Value` | `string` | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Value` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/armorplugin.mdx b/docs/models/components/armorplugin.mdx index 4bcb03714..c5dc99df0 100644 --- a/docs/models/components/armorplugin.mdx +++ b/docs/models/components/armorplugin.mdx @@ -9,11 +9,11 @@ Evaluates every client tool call the model emits against a rule stack (hard-deny | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ClassifierContext` | [*components.ArmorContext](../../models/components/armorcontext.mdx) | ➖ | The Armor context: Claude Code's `classifier_context` (v1), with `auto_mode.{hard_deny,soft_deny,allow}` rules as strings or `{ id, instructions, threshold? }` objects and `auto_mode.environment` entries as `"Name: value"` strings or `{ name, value }` objects. `threshold` applies when Armor evaluates; when the provider evaluates natively (Anthropic dangerous-tool-use beta) rules are judged at the provider's own boundary. | \{
"auto_mode": \{
"allow": [],
"environment": [
"Trusted repo: github.com/acme/app"
],
"hard_deny": [],
"soft_deny": [
\{
"id": "secrets-in-vcs",
"instructions": "Staging, committing or pushing a file that holds secrets, including indirectly through git add -A when the tree shows one."
}
]
},
"v": 1
} | -| `Enabled` | `*bool` | ➖ | Set to false to disable Armor for this request. Defaults to true. | | -| `EvaluateNativeTools` | `*bool` | ➖ | Run provider-native server tools (web search, code execution, ...) through the agent loop so Armor evaluates them too. Defaults to false: native passthrough stands and such calls are reported `skipped`. | | -| `ID` | [components.ArmorPluginID](../../models/components/armorpluginid.mdx) | ✅ | N/A | | -| `Mode` | [*components.ArmorPluginMode](../../models/components/armorpluginmode.mdx) | ➖ | `enforce` withholds blocked calls; `audit` evaluates and reports the same verdicts without withholding any calls, regardless of `on_error`. Default `enforce`. | | -| `OnError` | [*components.OnError](../../models/components/onerror.mdx) | ➖ | When the classifier cannot answer (timeout, upstream error, context too long) the call is reported `unavailable`; `block` rejects it and `log` releases it. Default `block`. | | -| `OutputMode` | [*components.OutputMode](../../models/components/outputmode.mdx) | ➖ | How a blocked call reaches the caller. `text` (the default): the call is withheld and an `` marker stands in assistant text. `custom_item` (Responses API only): the call is withheld and an `openrouter:armor_blocked` output item carries its id, name, arguments and the rule that fired. `claude_code_compatibility` (Messages API only; the default when the request carries a `dangerous_tool_use` safeguard, i.e. the client speaks Claude Code's protocol): the `tool_use` stays in `content[]` and the verdict is `flagged` in `safeguard_results`, so the client withholds execution and writes the error tool result as under the native classifier. Under `text` and `custom_item` the model received a failure result in the loop and continued in the same request; under `claude_code_compatibility` the turn ends on the flagged call and the model continues on the next request, after the client's denial. | | -| `UseCcStyleDefaultRules` | `*bool` | ➖ | Prepend Claude Code's built-in auto-mode rule set (1 hard-deny, 72 soft-deny, 17 allow, 21 environment slots) ahead of every configured rule. Defaults to true on the Anthropic Messages API and false elsewhere. | | \ No newline at end of file +| `ClassifierContext` | [*components.ArmorContext](../../models/components/armorcontext.mdx) | :heavy_minus_sign: | The Armor context: Claude Code's `classifier_context` (v1), with `auto_mode.{hard_deny,soft_deny,allow}` rules as strings or `{ id, instructions, threshold? }` objects and `auto_mode.environment` entries as `"Name: value"` strings or `{ name, value }` objects. `threshold` applies when Armor evaluates; when the provider evaluates natively (Anthropic dangerous-tool-use beta) rules are judged at the provider's own boundary. | \{
"auto_mode": \{
"allow": [],
"environment": [
"Trusted repo: github.com/acme/app"
],
"hard_deny": [],
"soft_deny": [
\{
"id": "secrets-in-vcs",
"instructions": "Staging, committing or pushing a file that holds secrets, including indirectly through git add -A when the tree shows one."
}
]
},
"v": 1
} | +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable Armor for this request. Defaults to true. | | +| `EvaluateNativeTools` | `*bool` | :heavy_minus_sign: | Run provider-native server tools (web search, code execution, ...) through the agent loop so Armor evaluates them too. Defaults to false: native passthrough stands and such calls are reported `skipped`. | | +| `ID` | [components.ArmorPluginID](../../models/components/armorpluginid.mdx) | :heavy_check_mark: | N/A | | +| `Mode` | [*components.ArmorPluginMode](../../models/components/armorpluginmode.mdx) | :heavy_minus_sign: | `enforce` withholds blocked calls; `audit` evaluates and reports the same verdicts without withholding any calls, regardless of `on_error`. Default `enforce`. | | +| `OnError` | [*components.OnError](../../models/components/onerror.mdx) | :heavy_minus_sign: | When the classifier cannot answer (timeout, upstream error, context too long) the call is reported `unavailable`; `block` rejects it and `log` releases it. Default `block`. | | +| `OutputMode` | [*components.OutputMode](../../models/components/outputmode.mdx) | :heavy_minus_sign: | How a blocked call reaches the caller. `text` (the default): the call is withheld and an `` marker stands in assistant text. `custom_item` (Responses API only): the call is withheld and an `openrouter:armor_blocked` output item carries its id, name, arguments and the rule that fired. `claude_code_compatibility` (Messages API only; the default when the request carries a `dangerous_tool_use` safeguard, i.e. the client speaks Claude Code's protocol): the `tool_use` stays in `content[]` and the verdict is `flagged` in `safeguard_results`, so the client withholds execution and writes the error tool result as under the native classifier. Under `text` and `custom_item` the model received a failure result in the loop and continued in the same request; under `claude_code_compatibility` the turn ends on the flagged call and the model continues on the next request, after the client's denial. | | +| `UseCcStyleDefaultRules` | `*bool` | :heavy_minus_sign: | Prepend Claude Code's built-in auto-mode rule set (1 hard-deny, 72 soft-deny, 17 allow, 21 environment slots) ahead of every configured rule. Defaults to true on the Anthropic Messages API and false elsewhere. | | \ No newline at end of file diff --git a/docs/models/components/armorrule.mdx b/docs/models/components/armorrule.mdx index 7dfcd0492..b59490242 100644 --- a/docs/models/components/armorrule.mdx +++ b/docs/models/components/armorrule.mdx @@ -6,7 +6,7 @@ title: "ArmorRule" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | Stable id, unique within its source; reported as the deciding rule when it fires. | -| `Instructions` | `string` | ✅ | What the rule matches, written for the classifier. | -| `Name` | `*string` | ➖ | Display name shown in verdict explanations; defaults to the id. | -| `Threshold` | `*float64` | ➖ | Probability at or above which the rule counts as matched. Defaults to 0.6 for hard-deny and soft-deny rules and 0.7 for allow rules (an exception needs stronger evidence to clear a matched soft deny). | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable id, unique within its source; reported as the deciding rule when it fires. | +| `Instructions` | `string` | :heavy_check_mark: | What the rule matches, written for the classifier. | +| `Name` | `*string` | :heavy_minus_sign: | Display name shown in verdict explanations; defaults to the id. | +| `Threshold` | `*float64` | :heavy_minus_sign: | Probability at or above which the rule counts as matched. Defaults to 0.6 for hard-deny and soft-deny rules and 0.7 for allow rules (an exception needs stronger evidence to clear a matched soft deny). | \ No newline at end of file diff --git a/docs/models/components/armorsafeguardresult.mdx b/docs/models/components/armorsafeguardresult.mdx index 7a5fba88d..41e630953 100644 --- a/docs/models/components/armorsafeguardresult.mdx +++ b/docs/models/components/armorsafeguardresult.mdx @@ -9,5 +9,5 @@ The outcome of OpenRouter Armor for each client tool call of the response, keyed | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Status` | [components.ArmorSafeguardResultStatus](../../models/components/armorsafeguardresultstatus.mdx) | ✅ | N/A | -| `Type` | [components.TypeDangerousToolUse](../../models/components/typedangeroustooluse.mdx) | ✅ | N/A | \ No newline at end of file +| `Status` | [components.ArmorSafeguardResultStatus](../../models/components/armorsafeguardresultstatus.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeDangerousToolUse](../../models/components/typedangeroustooluse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/armorsafeguardresultstatus.mdx b/docs/models/components/armorsafeguardresultstatus.mdx index 3808a1f44..eae0b0d00 100644 --- a/docs/models/components/armorsafeguardresultstatus.mdx +++ b/docs/models/components/armorsafeguardresultstatus.mdx @@ -6,5 +6,5 @@ title: "ArmorSafeguardResultStatus" | Field | Type | Required | Description | | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `ToolUses` | map[string][components.ToolUses](../../models/components/tooluses.mdx) | ✅ | N/A | -| `Type` | [components.TypeAvailable](../../models/components/typeavailable.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolUses` | map[string][components.ToolUses](../../models/components/tooluses.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeAvailable](../../models/components/typeavailable.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/audiourl.mdx b/docs/models/components/audiourl.mdx index 110aeeb30..a520320b1 100644 --- a/docs/models/components/audiourl.mdx +++ b/docs/models/components/audiourl.mdx @@ -6,4 +6,4 @@ title: "AudioURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/autobetarouterplugin.mdx b/docs/models/components/autobetarouterplugin.mdx index 5e082dee5..1ada8c6c3 100644 --- a/docs/models/components/autobetarouterplugin.mdx +++ b/docs/models/components/autobetarouterplugin.mdx @@ -6,9 +6,9 @@ title: "AutoBetaRouterPlugin" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedModels` | []`string` | ➖ | List of model patterns to filter which models the auto-beta-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When not specified, every model ranked for the classified task type is a candidate, falling back to a default model set when rankings are unavailable. | [
"anthropic/*",
"openai/gpt-4o",
"google/*"
] | -| ~~`CostQualityTradeoff`~~ | `*int64` | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use cost_tier instead. Balances routing between cost and quality on a 0-10 scale. The auto-beta-router ranks models for the classified task type by community spend share, then filters candidates by their average cost per generation for that task. Higher values favor cheaper models: 10 keeps only models around the cheapest 10th percentile, while 0 permits models up to the 90th percentile for cost. Defaults to 9 when no cost setting is provided. It remains supported and retains ceiling behavior, but cost_tier takes precedence when both are provided. | 9 | -| `CostTier` | [*components.AutoBetaRouterPluginCostTier](../../models/components/autobetarouterplugincosttier.mdx) | ➖ | Named cost/quality setting. For auto-beta-router, tiers select cost-percentile bands: low = [0, 20), medium = [20, 40), high = [40, 60), xhigh = [60, 80), and max = [80, 100]. Takes precedence over the deprecated numeric cost_quality_tradeoff when both are provided. | low | -| `Enabled` | `*bool` | ➖ | Set to false to disable the auto-beta-router plugin for this request. Defaults to true. | | -| `ExcludedModels` | []`string` | ➖ | List of model patterns to exclude from auto-beta-router selection. Supports wildcards (e.g., "meta-llama/*" excludes all Llama models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after allowed_models, so an excluded pattern always wins over an allowed one. | [
"openai/gpt-4o",
"meta-llama/*"
] | -| `ID` | [components.AutoBetaRouterPluginID](../../models/components/autobetarouterpluginid.mdx) | ✅ | N/A | | \ No newline at end of file +| `AllowedModels` | []`string` | :heavy_minus_sign: | List of model patterns to filter which models the auto-beta-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When not specified, every model ranked for the classified task type is a candidate, falling back to a default model set when rankings are unavailable. | [
"anthropic/*",
"openai/gpt-4o",
"google/*"
] | +| ~~`CostQualityTradeoff`~~ | `*int64` | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use cost_tier instead. Balances routing between cost and quality on a 0-10 scale. The auto-beta-router ranks models for the classified task type by community spend share, then filters candidates by their average cost per generation for that task. Higher values favor cheaper models: 10 keeps only models around the cheapest 10th percentile, while 0 permits models up to the 90th percentile for cost. Defaults to 9 when no cost setting is provided. It remains supported and retains ceiling behavior, but cost_tier takes precedence when both are provided. | 9 | +| `CostTier` | [*components.AutoBetaRouterPluginCostTier](../../models/components/autobetarouterplugincosttier.mdx) | :heavy_minus_sign: | Named cost/quality setting. For auto-beta-router, tiers select cost-percentile bands: low = [0, 20), medium = [20, 40), high = [40, 60), xhigh = [60, 80), and max = [80, 100]. Takes precedence over the deprecated numeric cost_quality_tradeoff when both are provided. | low | +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the auto-beta-router plugin for this request. Defaults to true. | | +| `ExcludedModels` | []`string` | :heavy_minus_sign: | List of model patterns to exclude from auto-beta-router selection. Supports wildcards (e.g., "meta-llama/*" excludes all Llama models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after allowed_models, so an excluded pattern always wins over an allowed one. | [
"openai/gpt-4o",
"meta-llama/*"
] | +| `ID` | [components.AutoBetaRouterPluginID](../../models/components/autobetarouterpluginid.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/autorouterplugin.mdx b/docs/models/components/autorouterplugin.mdx index c61ee00f4..b93045ba8 100644 --- a/docs/models/components/autorouterplugin.mdx +++ b/docs/models/components/autorouterplugin.mdx @@ -6,10 +6,10 @@ title: "AutoRouterPlugin" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedModels` | []`string` | ➖ | List of model patterns to filter which models the auto-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When not specified, every model ranked for the classified task type is a candidate, falling back to a default model set when rankings are unavailable. | [
"anthropic/*",
"openai/gpt-4o",
"google/*"
] | -| ~~`CostQualityTradeoff`~~ | `*int64` | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use cost_tier instead. Balances routing between cost and quality on a 0-10 scale. The auto-router ranks models for the classified task type by community spend share, then filters candidates by their average cost per generation for that task. Higher values favor cheaper models: 10 keeps only models around the cheapest 10th percentile, while 0 permits models up to the 90th percentile for cost. Defaults to 9 when no cost setting is provided. It remains supported and retains ceiling behavior, but cost_tier takes precedence when both are provided. | 9 | -| `CostTier` | [*components.AutoRouterPluginCostTier](../../models/components/autorouterplugincosttier.mdx) | ➖ | Named cost/quality setting. Tiers select cost-percentile bands: low = [0, 20), medium = [20, 40), high = [40, 60), xhigh = [60, 80), and max = [80, 100]. Takes precedence over the deprecated numeric cost_quality_tradeoff when both are provided. | low | -| `Enabled` | `*bool` | ➖ | Set to false to disable the auto-router plugin for this request. Defaults to true. | | -| `ExcludedModels` | []`string` | ➖ | List of model patterns to exclude from auto-router selection. Supports wildcards (e.g., "meta-llama/*" excludes all Llama models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after allowed_models, so an excluded pattern always wins over an allowed one. | [
"openai/gpt-4o",
"meta-llama/*"
] | -| `ID` | [components.AutoRouterPluginID](../../models/components/autorouterpluginid.mdx) | ✅ | N/A | | -| `PinModel` | `*bool` | ➖ | When true, reuses the model from the most recent assistant message's `model` attribute for subsequent turns. Defaults to false. | false | \ No newline at end of file +| `AllowedModels` | []`string` | :heavy_minus_sign: | List of model patterns to filter which models the auto-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When not specified, every model ranked for the classified task type is a candidate, falling back to a default model set when rankings are unavailable. | [
"anthropic/*",
"openai/gpt-4o",
"google/*"
] | +| ~~`CostQualityTradeoff`~~ | `*int64` | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: Use cost_tier instead. Balances routing between cost and quality on a 0-10 scale. The auto-router ranks models for the classified task type by community spend share, then filters candidates by their average cost per generation for that task. Higher values favor cheaper models: 10 keeps only models around the cheapest 10th percentile, while 0 permits models up to the 90th percentile for cost. Defaults to 9 when no cost setting is provided. It remains supported and retains ceiling behavior, but cost_tier takes precedence when both are provided. | 9 | +| `CostTier` | [*components.AutoRouterPluginCostTier](../../models/components/autorouterplugincosttier.mdx) | :heavy_minus_sign: | Named cost/quality setting. Tiers select cost-percentile bands: low = [0, 20), medium = [20, 40), high = [40, 60), xhigh = [60, 80), and max = [80, 100]. Takes precedence over the deprecated numeric cost_quality_tradeoff when both are provided. | low | +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the auto-router plugin for this request. Defaults to true. | | +| `ExcludedModels` | []`string` | :heavy_minus_sign: | List of model patterns to exclude from auto-router selection. Supports wildcards (e.g., "meta-llama/*" excludes all Llama models). Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after allowed_models, so an excluded pattern always wins over an allowed one. | [
"openai/gpt-4o",
"meta-llama/*"
] | +| `ID` | [components.AutoRouterPluginID](../../models/components/autorouterpluginid.mdx) | :heavy_check_mark: | N/A | | +| `PinModel` | `*bool` | :heavy_minus_sign: | When true, reuses the model from the most recent assistant message's `model` attribute for subsequent turns. Defaults to false. | false | \ No newline at end of file diff --git a/docs/models/components/badgatewayresponseerrordata.mdx b/docs/models/components/badgatewayresponseerrordata.mdx index bba1208e9..ff8975400 100644 --- a/docs/models/components/badgatewayresponseerrordata.mdx +++ b/docs/models/components/badgatewayresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for BadGatewayResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/badrequestresponseerrordata.mdx b/docs/models/components/badrequestresponseerrordata.mdx index ea1b654d8..e9555763c 100644 --- a/docs/models/components/badrequestresponseerrordata.mdx +++ b/docs/models/components/badrequestresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for BadRequestResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/baseinputsmessage.mdx b/docs/models/components/baseinputsmessage.mdx index 963c3f0c9..66d25c30f 100644 --- a/docs/models/components/baseinputsmessage.mdx +++ b/docs/models/components/baseinputsmessage.mdx @@ -6,7 +6,7 @@ title: "BaseInputsMessage" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.BaseInputsContent2](../../models/components/baseinputscontent2.mdx) | ✅ | N/A | -| `Phase` | optionalnullable.OptionalNullable[[components.BaseInputsPhaseUnion](../../models/components/baseinputsphaseunion.mdx)] | ➖ | N/A | -| `Role` | [components.BaseInputsRoleUnion](../../models/components/baseinputsroleunion.mdx) | ✅ | N/A | -| `Type` | [*components.BaseInputsType](../../models/components/baseinputstype.mdx) | ➖ | N/A | \ No newline at end of file +| `Content` | [components.BaseInputsContent2](../../models/components/baseinputscontent2.mdx) | :heavy_check_mark: | N/A | +| `Phase` | optionalnullable.OptionalNullable[[components.BaseInputsPhaseUnion](../../models/components/baseinputsphaseunion.mdx)] | :heavy_minus_sign: | N/A | +| `Role` | [components.BaseInputsRoleUnion](../../models/components/baseinputsroleunion.mdx) | :heavy_check_mark: | N/A | +| `Type` | [*components.BaseInputsType](../../models/components/baseinputstype.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/basereasoningconfig.mdx b/docs/models/components/basereasoningconfig.mdx index de3b22e7f..7c6464ad0 100644 --- a/docs/models/components/basereasoningconfig.mdx +++ b/docs/models/components/basereasoningconfig.mdx @@ -6,7 +6,7 @@ title: "BaseReasoningConfig" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Context` | optionalnullable.OptionalNullable[[components.ReasoningContext](../../models/components/reasoningcontext.mdx)] | ➖ | Controls which reasoning is available to the model. `auto` uses the model default (same as omitting); `all_turns` includes reasoning from earlier turns passed in input; `current_turn` limits to the current turn only. Only supported by OpenAI GPT-5.6 and newer. | all_turns | -| `Effort` | optionalnullable.OptionalNullable[[components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | ➖ | N/A | medium | -| `Mode` | optionalnullable.OptionalNullable[[components.ReasoningMode](../../models/components/reasoningmode.mdx)] | ➖ | Selects the reasoning mode. `standard` is the default; `pro` engages deeper reasoning on models that support it, billed at standard token rates. Only supported by OpenAI GPT-5.6 and newer. | standard | -| `Summary` | optionalnullable.OptionalNullable[[components.ReasoningSummaryVerbosity](../../models/components/reasoningsummaryverbosity.mdx)] | ➖ | N/A | auto | \ No newline at end of file +| `Context` | optionalnullable.OptionalNullable[[components.ReasoningContext](../../models/components/reasoningcontext.mdx)] | :heavy_minus_sign: | Controls which reasoning is available to the model. `auto` uses the model default (same as omitting); `all_turns` includes reasoning from earlier turns passed in input; `current_turn` limits to the current turn only. Only supported by OpenAI GPT-5.6 and newer. | all_turns | +| `Effort` | optionalnullable.OptionalNullable[[components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | :heavy_minus_sign: | N/A | medium | +| `Mode` | optionalnullable.OptionalNullable[[components.ReasoningMode](../../models/components/reasoningmode.mdx)] | :heavy_minus_sign: | Selects the reasoning mode. `standard` is the default; `pro` engages deeper reasoning on models that support it, billed at standard token rates. Only supported by OpenAI GPT-5.6 and newer. | standard | +| `Summary` | optionalnullable.OptionalNullable[[components.ReasoningSummaryVerbosity](../../models/components/reasoningsummaryverbosity.mdx)] | :heavy_minus_sign: | N/A | auto | \ No newline at end of file diff --git a/docs/models/components/bashservertool.mdx b/docs/models/components/bashservertool.mdx index 4ae6349ee..40ea034b2 100644 --- a/docs/models/components/bashservertool.mdx +++ b/docs/models/components/bashservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: runs shell commands server-side in a sandboxed | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `Parameters` | [*components.BashServerToolConfig](../../models/components/bashservertoolconfig.mdx) | ➖ | Configuration for the openrouter:bash server tool | \{
"environment": \{
"type": "container_auto"
}
} | -| `Type` | [components.BashServerToolType](../../models/components/bashservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.BashServerToolConfig](../../models/components/bashservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:bash server tool | \{
"environment": \{
"type": "container_auto"
}
} | +| `Type` | [components.BashServerToolType](../../models/components/bashservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/bashservertoolconfig.mdx b/docs/models/components/bashservertoolconfig.mdx index 6115d30d5..5ae573bc7 100644 --- a/docs/models/components/bashservertoolconfig.mdx +++ b/docs/models/components/bashservertoolconfig.mdx @@ -9,5 +9,5 @@ Configuration for the openrouter:bash server tool | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Engine` | [*components.BashServerToolEngine](../../models/components/bashservertoolengine.mdx) | ➖ | Which bash engine to use. "openrouter" runs commands server-side in the OpenRouter sandbox. "auto" (default) and "native" use native passthrough, returning the tool call to your application to run client-side; OpenRouter does not execute the commands. | auto | -| `Environment` | [*components.BashServerToolEnvironment](../../models/components/bashservertoolenvironment.mdx) | ➖ | Execution environment for the bash server tool. | \{
"type": "container_auto"
} | \ No newline at end of file +| `Engine` | [*components.BashServerToolEngine](../../models/components/bashservertoolengine.mdx) | :heavy_minus_sign: | Which bash engine to use. "openrouter" runs commands server-side in the OpenRouter sandbox. "auto" (default) and "native" use native passthrough, returning the tool call to your application to run client-side; OpenRouter does not execute the commands. | auto | +| `Environment` | [*components.BashServerToolEnvironment](../../models/components/bashservertoolenvironment.mdx) | :heavy_minus_sign: | Execution environment for the bash server tool. | \{
"type": "container_auto"
} | \ No newline at end of file diff --git a/docs/models/components/batchdeletedobject.mdx b/docs/models/components/batchdeletedobject.mdx index c953e817d..6f7e81ab3 100644 --- a/docs/models/components/batchdeletedobject.mdx +++ b/docs/models/components/batchdeletedobject.mdx @@ -9,6 +9,6 @@ Confirms a terminal batch was removed from the API and its OpenRouter-held artif | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Deletion` | [components.BatchDeletionTargets](../../models/components/batchdeletiontargets.mdx) | ✅ | OpenRouter cleanup and, when a provider was assigned, the upstream batch deletion outcome. | \{
"openrouter": "deleted",
"upstream": \{
"provider": "Anthropic",
"status": "deleted"
}
} | -| `ID` | `string` | ✅ | N/A | batch_abc123 | -| `Object` | [components.BatchDeletedObjectObject](../../models/components/batchdeletedobjectobject.mdx) | ✅ | N/A | | \ No newline at end of file +| `Deletion` | [components.BatchDeletionTargets](../../models/components/batchdeletiontargets.mdx) | :heavy_check_mark: | OpenRouter cleanup and, when a provider was assigned, the upstream batch deletion outcome. | \{
"openrouter": "deleted",
"upstream": \{
"provider": "Anthropic",
"status": "deleted"
}
} | +| `ID` | `string` | :heavy_check_mark: | N/A | batch_abc123 | +| `Object` | [components.BatchDeletedObjectObject](../../models/components/batchdeletedobjectobject.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/batchdeletiontargets.mdx b/docs/models/components/batchdeletiontargets.mdx index 3193a3e25..99916516b 100644 --- a/docs/models/components/batchdeletiontargets.mdx +++ b/docs/models/components/batchdeletiontargets.mdx @@ -9,5 +9,5 @@ OpenRouter cleanup and, when a provider was assigned, the upstream batch deletio | Field | Type | Required | Description | | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------- | -| `Openrouter` | [components.Openrouter](../../models/components/openrouter.mdx) | ✅ | OpenRouter-held request and result artifacts were purged. | -| `Upstream` | [*components.Upstream](../../models/components/upstream.mdx) | ➖ | The upstream batch deletion outcome; omitted when no provider was assigned. | \ No newline at end of file +| `Openrouter` | [components.Openrouter](../../models/components/openrouter.mdx) | :heavy_check_mark: | OpenRouter-held request and result artifacts were purged. | +| `Upstream` | [*components.Upstream](../../models/components/upstream.mdx) | :heavy_minus_sign: | The upstream batch deletion outcome; omitted when no provider was assigned. | \ No newline at end of file diff --git a/docs/models/components/batcherrorresponseerror.mdx b/docs/models/components/batcherrorresponseerror.mdx index 3f1dcc54a..f799f19f5 100644 --- a/docs/models/components/batcherrorresponseerror.mdx +++ b/docs/models/components/batcherrorresponseerror.mdx @@ -6,5 +6,5 @@ title: "BatchErrorResponseError" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchlistitem.mdx b/docs/models/components/batchlistitem.mdx index 5bd6e330a..f99ec7efc 100644 --- a/docs/models/components/batchlistitem.mdx +++ b/docs/models/components/batchlistitem.mdx @@ -9,17 +9,17 @@ Metadata-only batch object. `results` is always `null` in list responses. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CompletionWindow` | [components.BatchListItemCompletionWindow](../../models/components/batchlistitemcompletionwindow.mdx) | ✅ | N/A | -| `CreatedAt` | `int64` | ✅ | N/A | -| `Endpoint` | `string` | ✅ | N/A | -| `Error` | [*components.BatchListItemError](../../models/components/batchlistitemerror.mdx) | ✅ | N/A | -| `ExpiresAt` | `*int64` | ✅ | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | -| `FinalizedAt` | `*int64` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `Object` | [components.BatchListItemObject](../../models/components/batchlistitemobject.mdx) | ✅ | N/A | -| `Provider` | `*string` | ✅ | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | -| `RequestCounts` | [components.BatchListItemRequestCounts](../../models/components/batchlistitemrequestcounts.mdx) | ✅ | N/A | -| `Results` | `any` | ✅ | Always null: retrieve the batch with `GET /batches/{id}` to access its results. | -| `Status` | [components.BatchListItemStatus](../../models/components/batchlistitemstatus.mdx) | ✅ | N/A | -| `Usage` | [*components.BatchListItemUsage](../../models/components/batchlistitemusage.mdx) | ✅ | N/A | \ No newline at end of file +| `CompletionWindow` | [components.BatchListItemCompletionWindow](../../models/components/batchlistitemcompletionwindow.mdx) | :heavy_check_mark: | N/A | +| `CreatedAt` | `int64` | :heavy_check_mark: | N/A | +| `Endpoint` | `string` | :heavy_check_mark: | N/A | +| `Error` | [*components.BatchListItemError](../../models/components/batchlistitemerror.mdx) | :heavy_check_mark: | N/A | +| `ExpiresAt` | `*int64` | :heavy_check_mark: | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | +| `FinalizedAt` | `*int64` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Object` | [components.BatchListItemObject](../../models/components/batchlistitemobject.mdx) | :heavy_check_mark: | N/A | +| `Provider` | `*string` | :heavy_check_mark: | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | +| `RequestCounts` | [components.BatchListItemRequestCounts](../../models/components/batchlistitemrequestcounts.mdx) | :heavy_check_mark: | N/A | +| `Results` | `any` | :heavy_check_mark: | Always null: retrieve the batch with `GET /batches/{id}` to access its results. | +| `Status` | [components.BatchListItemStatus](../../models/components/batchlistitemstatus.mdx) | :heavy_check_mark: | N/A | +| `Usage` | [*components.BatchListItemUsage](../../models/components/batchlistitemusage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchlistitemcompletiontokensdetails.mdx b/docs/models/components/batchlistitemcompletiontokensdetails.mdx index aba8e00d4..7c457ac86 100644 --- a/docs/models/components/batchlistitemcompletiontokensdetails.mdx +++ b/docs/models/components/batchlistitemcompletiontokensdetails.mdx @@ -6,6 +6,6 @@ title: "BatchListItemCompletionTokensDetails" | Field | Type | Required | Description | | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for audio output. | -| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for image output. | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for reasoning. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for audio output. | +| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for image output. | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for reasoning. | \ No newline at end of file diff --git a/docs/models/components/batchlistitemerror.mdx b/docs/models/components/batchlistitemerror.mdx index 2cd90488a..fc3d3b73b 100644 --- a/docs/models/components/batchlistitemerror.mdx +++ b/docs/models/components/batchlistitemerror.mdx @@ -6,4 +6,4 @@ title: "BatchListItemError" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchlistitemprompttokensdetails.mdx b/docs/models/components/batchlistitemprompttokensdetails.mdx index 910bbc8b9..297e26e78 100644 --- a/docs/models/components/batchlistitemprompttokensdetails.mdx +++ b/docs/models/components/batchlistitemprompttokensdetails.mdx @@ -9,8 +9,8 @@ Breakdown of tokens used in the prompt. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input audio. | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens cached by the endpoint. | -| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input files/documents. | -| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input video. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input audio. | +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens cached by the endpoint. | +| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input files/documents. | +| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input video. | \ No newline at end of file diff --git a/docs/models/components/batchlistitemrequestcounts.mdx b/docs/models/components/batchlistitemrequestcounts.mdx index 056e7857b..cb9c93774 100644 --- a/docs/models/components/batchlistitemrequestcounts.mdx +++ b/docs/models/components/batchlistitemrequestcounts.mdx @@ -6,6 +6,6 @@ title: "BatchListItemRequestCounts" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Completed` | `int64` | ✅ | N/A | -| `Failed` | `int64` | ✅ | N/A | -| `Total` | `int64` | ✅ | N/A | \ No newline at end of file +| `Completed` | `int64` | :heavy_check_mark: | N/A | +| `Failed` | `int64` | :heavy_check_mark: | N/A | +| `Total` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchlistitemservertooluse.mdx b/docs/models/components/batchlistitemservertooluse.mdx index 85e11ae93..adfeb45cf 100644 --- a/docs/models/components/batchlistitemservertooluse.mdx +++ b/docs/models/components/batchlistitemservertooluse.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/batchlistitemusage.mdx b/docs/models/components/batchlistitemusage.mdx index 07b202b9e..a969f5482 100644 --- a/docs/models/components/batchlistitemusage.mdx +++ b/docs/models/components/batchlistitemusage.mdx @@ -6,16 +6,16 @@ title: "BatchListItemUsage" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | -| `CompletionTokens` | `int64` | ✅ | The tokens generated | | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchListItemCompletionTokensDetails](../../models/components/batchlistitemcompletiontokensdetails.mdx)] | ➖ | N/A | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | ➖ | N/A | | -| `PromptTokens` | `int64` | ✅ | Including images, input audio, and tools if any | | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchListItemPromptTokensDetails](../../models/components/batchlistitemprompttokensdetails.mdx)] | ➖ | Breakdown of tokens used in the prompt. | | -| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchListItemServerToolUse](../../models/components/batchlistitemservertooluse.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | | -| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | ➖ | N/A | standard | -| `TotalTokens` | `int64` | ✅ | Sum of the above two fields | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | +| `CompletionTokens` | `int64` | :heavy_check_mark: | The tokens generated | | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchListItemCompletionTokensDetails](../../models/components/batchlistitemcompletiontokensdetails.mdx)] | :heavy_minus_sign: | N/A | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | :heavy_minus_sign: | N/A | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Including images, input audio, and tools if any | | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchListItemPromptTokensDetails](../../models/components/batchlistitemprompttokensdetails.mdx)] | :heavy_minus_sign: | Breakdown of tokens used in the prompt. | | +| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchListItemServerToolUse](../../models/components/batchlistitemservertooluse.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | | +| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | :heavy_minus_sign: | N/A | standard | +| `TotalTokens` | `int64` | :heavy_check_mark: | Sum of the above two fields | | \ No newline at end of file diff --git a/docs/models/components/batchlistresponse.mdx b/docs/models/components/batchlistresponse.mdx index 06b5c9aad..3d2b16eae 100644 --- a/docs/models/components/batchlistresponse.mdx +++ b/docs/models/components/batchlistresponse.mdx @@ -9,8 +9,8 @@ A newest-first page of metadata-only batch objects. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Data` | [][components.BatchListItem](../../models/components/batchlistitem.mdx) | ✅ | N/A | -| `FirstID` | `*string` | ✅ | N/A | -| `HasMore` | `bool` | ✅ | N/A | -| `LastID` | `*string` | ✅ | N/A | -| `Object` | [components.BatchListResponseObject](../../models/components/batchlistresponseobject.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.BatchListItem](../../models/components/batchlistitem.mdx) | :heavy_check_mark: | N/A | +| `FirstID` | `*string` | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | N/A | +| `LastID` | `*string` | :heavy_check_mark: | N/A | +| `Object` | [components.BatchListResponseObject](../../models/components/batchlistresponseobject.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobject.mdx b/docs/models/components/batchobject.mdx index 6707ffd86..ec53a1655 100644 --- a/docs/models/components/batchobject.mdx +++ b/docs/models/components/batchobject.mdx @@ -6,17 +6,17 @@ title: "BatchObject" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CompletionWindow` | [components.BatchObjectCompletionWindow](../../models/components/batchobjectcompletionwindow.mdx) | ✅ | N/A | -| `CreatedAt` | `int64` | ✅ | N/A | -| `Endpoint` | `string` | ✅ | N/A | -| `Error` | [*components.BatchObjectError](../../models/components/batchobjecterror.mdx) | ✅ | N/A | -| `ExpiresAt` | `*int64` | ✅ | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | -| `FinalizedAt` | `*int64` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `Object` | [components.BatchObjectObjectBatch](../../models/components/batchobjectobjectbatch.mdx) | ✅ | N/A | -| `Provider` | `*string` | ✅ | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | -| `RequestCounts` | [components.BatchObjectRequestCounts](../../models/components/batchobjectrequestcounts.mdx) | ✅ | N/A | -| `Results` | [][components.Result](../../models/components/result.mdx) | ✅ | N/A | -| `Status` | [components.BatchObjectStatus](../../models/components/batchobjectstatus.mdx) | ✅ | N/A | -| `Usage` | [*components.BatchObjectUsage](../../models/components/batchobjectusage.mdx) | ✅ | N/A | \ No newline at end of file +| `CompletionWindow` | [components.BatchObjectCompletionWindow](../../models/components/batchobjectcompletionwindow.mdx) | :heavy_check_mark: | N/A | +| `CreatedAt` | `int64` | :heavy_check_mark: | N/A | +| `Endpoint` | `string` | :heavy_check_mark: | N/A | +| `Error` | [*components.BatchObjectError](../../models/components/batchobjecterror.mdx) | :heavy_check_mark: | N/A | +| `ExpiresAt` | `*int64` | :heavy_check_mark: | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | +| `FinalizedAt` | `*int64` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Object` | [components.BatchObjectObjectBatch](../../models/components/batchobjectobjectbatch.mdx) | :heavy_check_mark: | N/A | +| `Provider` | `*string` | :heavy_check_mark: | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | +| `RequestCounts` | [components.BatchObjectRequestCounts](../../models/components/batchobjectrequestcounts.mdx) | :heavy_check_mark: | N/A | +| `Results` | [][components.Result](../../models/components/result.mdx) | :heavy_check_mark: | N/A | +| `Status` | [components.BatchObjectStatus](../../models/components/batchobjectstatus.mdx) | :heavy_check_mark: | N/A | +| `Usage` | [*components.BatchObjectUsage](../../models/components/batchobjectusage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectcompletiontokensdetails.mdx b/docs/models/components/batchobjectcompletiontokensdetails.mdx index d84335cbb..66822602c 100644 --- a/docs/models/components/batchobjectcompletiontokensdetails.mdx +++ b/docs/models/components/batchobjectcompletiontokensdetails.mdx @@ -6,6 +6,6 @@ title: "BatchObjectCompletionTokensDetails" | Field | Type | Required | Description | | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for audio output. | -| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for image output. | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for reasoning. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for audio output. | +| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for image output. | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for reasoning. | \ No newline at end of file diff --git a/docs/models/components/batchobjectdata.mdx b/docs/models/components/batchobjectdata.mdx index c6600f272..90cebb655 100644 --- a/docs/models/components/batchobjectdata.mdx +++ b/docs/models/components/batchobjectdata.mdx @@ -9,6 +9,6 @@ A single embedding object | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Embedding` | [components.Embedding](../../models/components/embedding.mdx) | ✅ | Embedding vector as an array of floats or a base64 string | [
0.0023064255,
-0.009327292,
0.015797347
] | -| `Index` | `*int64` | ➖ | Index of the embedding in the input list | 0 | -| `Object` | [components.ObjectEmbedding](../../models/components/objectembedding.mdx) | ✅ | N/A | | \ No newline at end of file +| `Embedding` | [components.Embedding](../../models/components/embedding.mdx) | :heavy_check_mark: | Embedding vector as an array of floats or a base64 string | [
0.0023064255,
-0.009327292,
0.015797347
] | +| `Index` | `*int64` | :heavy_minus_sign: | Index of the embedding in the input list | 0 | +| `Object` | [components.ObjectEmbedding](../../models/components/objectembedding.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/batchobjectdebug.mdx b/docs/models/components/batchobjectdebug.mdx index 9b98cb41c..86f04615a 100644 --- a/docs/models/components/batchobjectdebug.mdx +++ b/docs/models/components/batchobjectdebug.mdx @@ -6,6 +6,6 @@ title: "BatchObjectDebug" | Field | Type | Required | Description | | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -| `EchoUpstreamBody` | map[string]`any` | ➖ | N/A | -| `Timings` | [*components.BatchObjectTimings](../../models/components/batchobjecttimings.mdx) | ➖ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `EchoUpstreamBody` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Timings` | [*components.BatchObjectTimings](../../models/components/batchobjecttimings.mdx) | :heavy_minus_sign: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjecterror.mdx b/docs/models/components/batchobjecterror.mdx index 8f4531f6e..bcb5738ff 100644 --- a/docs/models/components/batchobjecterror.mdx +++ b/docs/models/components/batchobjecterror.mdx @@ -6,4 +6,4 @@ title: "BatchObjectError" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectfile.mdx b/docs/models/components/batchobjectfile.mdx index 98f6c5a0e..2f7095eff 100644 --- a/docs/models/components/batchobjectfile.mdx +++ b/docs/models/components/batchobjectfile.mdx @@ -6,6 +6,6 @@ title: "BatchObjectFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Content` | [][components.AnnotationContentUnion](../../models/components/annotationcontentunion.mdx) | ✅ | N/A | -| `Hash` | `string` | ✅ | N/A | -| `Name` | `*string` | ➖ | N/A | \ No newline at end of file +| `Content` | [][components.AnnotationContentUnion](../../models/components/annotationcontentunion.mdx) | :heavy_check_mark: | N/A | +| `Hash` | `string` | :heavy_check_mark: | N/A | +| `Name` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectfunction.mdx b/docs/models/components/batchobjectfunction.mdx index e9317af29..c7ac99b41 100644 --- a/docs/models/components/batchobjectfunction.mdx +++ b/docs/models/components/batchobjectfunction.mdx @@ -6,5 +6,5 @@ title: "BatchObjectFunction" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Arguments` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectimageurl.mdx b/docs/models/components/batchobjectimageurl.mdx index d324437e4..0d092d54e 100644 --- a/docs/models/components/batchobjectimageurl.mdx +++ b/docs/models/components/batchobjectimageurl.mdx @@ -6,4 +6,4 @@ title: "BatchObjectImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectprompttokensdetails.mdx b/docs/models/components/batchobjectprompttokensdetails.mdx index 3e485e754..07352f8e8 100644 --- a/docs/models/components/batchobjectprompttokensdetails.mdx +++ b/docs/models/components/batchobjectprompttokensdetails.mdx @@ -9,8 +9,8 @@ Breakdown of tokens used in the prompt. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input audio. | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens cached by the endpoint. | -| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input files/documents. | -| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input video. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input audio. | +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens cached by the endpoint. | +| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input files/documents. | +| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input video. | \ No newline at end of file diff --git a/docs/models/components/batchobjectrequestcounts.mdx b/docs/models/components/batchobjectrequestcounts.mdx index dbeb6020b..8df8e75df 100644 --- a/docs/models/components/batchobjectrequestcounts.mdx +++ b/docs/models/components/batchobjectrequestcounts.mdx @@ -6,6 +6,6 @@ title: "BatchObjectRequestCounts" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Completed` | `int64` | ✅ | N/A | -| `Failed` | `int64` | ✅ | N/A | -| `Total` | `int64` | ✅ | N/A | \ No newline at end of file +| `Completed` | `int64` | :heavy_check_mark: | N/A | +| `Failed` | `int64` | :heavy_check_mark: | N/A | +| `Total` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectresponse.mdx b/docs/models/components/batchobjectresponse.mdx index 706214072..46a3abb58 100644 --- a/docs/models/components/batchobjectresponse.mdx +++ b/docs/models/components/batchobjectresponse.mdx @@ -6,6 +6,6 @@ title: "BatchObjectResponse" | Field | Type | Required | Description | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Body` | [components.Body](../../models/components/body.mdx) | ✅ | N/A | -| `RequestID` | `*string` | ✅ | N/A | -| `StatusCode` | `int64` | ✅ | N/A | \ No newline at end of file +| `Body` | [components.Body](../../models/components/body.mdx) | :heavy_check_mark: | N/A | +| `RequestID` | `*string` | :heavy_check_mark: | N/A | +| `StatusCode` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectservertooluse.mdx b/docs/models/components/batchobjectservertooluse.mdx index 4e28249d2..71ae22911 100644 --- a/docs/models/components/batchobjectservertooluse.mdx +++ b/docs/models/components/batchobjectservertooluse.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/batchobjectservertoolusedetails.mdx b/docs/models/components/batchobjectservertoolusedetails.mdx index 11fa39ccc..882e48712 100644 --- a/docs/models/components/batchobjectservertoolusedetails.mdx +++ b/docs/models/components/batchobjectservertoolusedetails.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/batchobjecttimings.mdx b/docs/models/components/batchobjecttimings.mdx index 8570766fb..2b167dc68 100644 --- a/docs/models/components/batchobjecttimings.mdx +++ b/docs/models/components/batchobjecttimings.mdx @@ -6,6 +6,6 @@ title: "BatchObjectTimings" | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `EpochMs` | `int64` | ✅ | N/A | -| `Event` | [components.BatchObjectEvent](../../models/components/batchobjectevent.mdx) | ✅ | N/A | -| `StartMs` | `int64` | ✅ | N/A | \ No newline at end of file +| `EpochMs` | `int64` | :heavy_check_mark: | N/A | +| `Event` | [components.BatchObjectEvent](../../models/components/batchobjectevent.mdx) | :heavy_check_mark: | N/A | +| `StartMs` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjecturlcitation.mdx b/docs/models/components/batchobjecturlcitation.mdx index 59b4af09c..f8472027f 100644 --- a/docs/models/components/batchobjecturlcitation.mdx +++ b/docs/models/components/batchobjecturlcitation.mdx @@ -6,8 +6,8 @@ title: "BatchObjectURLCitation" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Content` | `*string` | ➖ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Title` | `string` | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Content` | `*string` | :heavy_minus_sign: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Title` | `string` | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchobjectusage.mdx b/docs/models/components/batchobjectusage.mdx index b4706bf1b..252e2493d 100644 --- a/docs/models/components/batchobjectusage.mdx +++ b/docs/models/components/batchobjectusage.mdx @@ -6,16 +6,16 @@ title: "BatchObjectUsage" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | -| `CompletionTokens` | `int64` | ✅ | The tokens generated | | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchObjectCompletionTokensDetails](../../models/components/batchobjectcompletiontokensdetails.mdx)] | ➖ | N/A | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | ➖ | N/A | | -| `PromptTokens` | `int64` | ✅ | Including images, input audio, and tools if any | | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchObjectPromptTokensDetails](../../models/components/batchobjectprompttokensdetails.mdx)] | ➖ | Breakdown of tokens used in the prompt. | | -| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchObjectServerToolUse](../../models/components/batchobjectservertooluse.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | | -| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | ➖ | N/A | standard | -| `TotalTokens` | `int64` | ✅ | Sum of the above two fields | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | +| `CompletionTokens` | `int64` | :heavy_check_mark: | The tokens generated | | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchObjectCompletionTokensDetails](../../models/components/batchobjectcompletiontokensdetails.mdx)] | :heavy_minus_sign: | N/A | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | :heavy_minus_sign: | N/A | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Including images, input audio, and tools if any | | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchObjectPromptTokensDetails](../../models/components/batchobjectprompttokensdetails.mdx)] | :heavy_minus_sign: | Breakdown of tokens used in the prompt. | | +| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchObjectServerToolUse](../../models/components/batchobjectservertooluse.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | | +| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | :heavy_minus_sign: | N/A | standard | +| `TotalTokens` | `int64` | :heavy_check_mark: | Sum of the above two fields | | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx b/docs/models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx index 8fb8538c9..d107c860a 100644 --- a/docs/models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx +++ b/docs/models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx @@ -6,6 +6,6 @@ title: "BatchPaymentRequiredResponseCompletionTokensDetails" | Field | Type | Required | Description | | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for audio output. | -| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for image output. | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for reasoning. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for audio output. | +| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for image output. | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for reasoning. | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponseerror.mdx b/docs/models/components/batchpaymentrequiredresponseerror.mdx index 8b1b3c34e..644a8211a 100644 --- a/docs/models/components/batchpaymentrequiredresponseerror.mdx +++ b/docs/models/components/batchpaymentrequiredresponseerror.mdx @@ -6,5 +6,5 @@ title: "BatchPaymentRequiredResponseError" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponseprompttokensdetails.mdx b/docs/models/components/batchpaymentrequiredresponseprompttokensdetails.mdx index 9f90395b7..ba9b93fc1 100644 --- a/docs/models/components/batchpaymentrequiredresponseprompttokensdetails.mdx +++ b/docs/models/components/batchpaymentrequiredresponseprompttokensdetails.mdx @@ -9,8 +9,8 @@ Breakdown of tokens used in the prompt. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input audio. | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens cached by the endpoint. | -| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input files/documents. | -| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input video. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input audio. | +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens cached by the endpoint. | +| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input files/documents. | +| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input video. | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponserequestcounts.mdx b/docs/models/components/batchpaymentrequiredresponserequestcounts.mdx index 23a84950a..a00aba618 100644 --- a/docs/models/components/batchpaymentrequiredresponserequestcounts.mdx +++ b/docs/models/components/batchpaymentrequiredresponserequestcounts.mdx @@ -6,6 +6,6 @@ title: "BatchPaymentRequiredResponseRequestCounts" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Completed` | `int64` | ✅ | N/A | -| `Failed` | `int64` | ✅ | N/A | -| `Total` | `int64` | ✅ | N/A | \ No newline at end of file +| `Completed` | `int64` | :heavy_check_mark: | N/A | +| `Failed` | `int64` | :heavy_check_mark: | N/A | +| `Total` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponseservertooluse.mdx b/docs/models/components/batchpaymentrequiredresponseservertooluse.mdx index 0d7075ac6..7463355f1 100644 --- a/docs/models/components/batchpaymentrequiredresponseservertooluse.mdx +++ b/docs/models/components/batchpaymentrequiredresponseservertooluse.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/batchpaymentrequiredresponseusage.mdx b/docs/models/components/batchpaymentrequiredresponseusage.mdx index e73d54c5c..08fa6c498 100644 --- a/docs/models/components/batchpaymentrequiredresponseusage.mdx +++ b/docs/models/components/batchpaymentrequiredresponseusage.mdx @@ -6,16 +6,16 @@ title: "BatchPaymentRequiredResponseUsage" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | -| `CompletionTokens` | `int64` | ✅ | The tokens generated | | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponseCompletionTokensDetails](../../models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx)] | ➖ | N/A | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | ➖ | N/A | | -| `PromptTokens` | `int64` | ✅ | Including images, input audio, and tools if any | | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponsePromptTokensDetails](../../models/components/batchpaymentrequiredresponseprompttokensdetails.mdx)] | ➖ | Breakdown of tokens used in the prompt. | | -| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponseServerToolUse](../../models/components/batchpaymentrequiredresponseservertooluse.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | | -| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | ➖ | N/A | standard | -| `TotalTokens` | `int64` | ✅ | Sum of the above two fields | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | +| `CompletionTokens` | `int64` | :heavy_check_mark: | The tokens generated | | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponseCompletionTokensDetails](../../models/components/batchpaymentrequiredresponsecompletiontokensdetails.mdx)] | :heavy_minus_sign: | N/A | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | :heavy_minus_sign: | N/A | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Including images, input audio, and tools if any | | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponsePromptTokensDetails](../../models/components/batchpaymentrequiredresponseprompttokensdetails.mdx)] | :heavy_minus_sign: | Breakdown of tokens used in the prompt. | | +| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BatchPaymentRequiredResponseServerToolUse](../../models/components/batchpaymentrequiredresponseservertooluse.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | | +| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | :heavy_minus_sign: | N/A | standard | +| `TotalTokens` | `int64` | :heavy_check_mark: | Sum of the above two fields | | \ No newline at end of file diff --git a/docs/models/components/batchproviderpreferences.mdx b/docs/models/components/batchproviderpreferences.mdx index b69a993ed..d9734d0b4 100644 --- a/docs/models/components/batchproviderpreferences.mdx +++ b/docs/models/components/batchproviderpreferences.mdx @@ -9,5 +9,5 @@ Batch provider routing preferences. Only `provider.only` and `provider.allow_fal | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | -| `Only` | optionalnullable.OptionalNullable[[][components.BatchProviderPreferencesOnly](../../models/components/batchproviderpreferencesonly.mdx)] | ➖ | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | \ No newline at end of file +| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | +| `Only` | optionalnullable.OptionalNullable[[][components.BatchProviderPreferencesOnly](../../models/components/batchproviderpreferencesonly.mdx)] | :heavy_minus_sign: | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | \ No newline at end of file diff --git a/docs/models/components/batchsubmitbody.mdx b/docs/models/components/batchsubmitbody.mdx index 4b3d5c9ef..6848b7ecb 100644 --- a/docs/models/components/batchsubmitbody.mdx +++ b/docs/models/components/batchsubmitbody.mdx @@ -9,9 +9,9 @@ Batch submit request body. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CallbackURL` | `*string` | ➖ | HTTPS URL that receives a `batch.completed`, `batch.failed`, `batch.cancelled` or `batch.expired` webhook event when the batch reaches a terminal status. Must appear before `requests` in the request body. | | -| `CompletionWindow` | [*components.BatchSubmitBodyCompletionWindow](../../models/components/batchsubmitbodycompletionwindow.mdx) | ➖ | N/A | | -| `Endpoint` | [components.Endpoint](../../models/components/endpoint.mdx) | ✅ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Provider` | optionalnullable.OptionalNullable[[components.BatchProviderPreferences](../../models/components/batchproviderpreferences.mdx)] | ➖ | Batch provider routing preferences. Only `provider.only` and `provider.allow_fallbacks` are supported. | \{
"only": [
"google-vertex"
]
} | -| `Requests` | [][components.Request](../../models/components/request.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallbackURL` | `*string` | :heavy_minus_sign: | HTTPS URL that receives a `batch.completed`, `batch.failed`, `batch.cancelled` or `batch.expired` webhook event when the batch reaches a terminal status. Must appear before `requests` in the request body. | | +| `CompletionWindow` | [*components.BatchSubmitBodyCompletionWindow](../../models/components/batchsubmitbodycompletionwindow.mdx) | :heavy_minus_sign: | N/A | | +| `Endpoint` | [components.Endpoint](../../models/components/endpoint.mdx) | :heavy_check_mark: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Provider` | optionalnullable.OptionalNullable[[components.BatchProviderPreferences](../../models/components/batchproviderpreferences.mdx)] | :heavy_minus_sign: | Batch provider routing preferences. Only `provider.only` and `provider.allow_fallbacks` are supported. | \{
"only": [
"google-vertex"
]
} | +| `Requests` | [][components.Request](../../models/components/request.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/bodychatcompletion.mdx b/docs/models/components/bodychatcompletion.mdx index 18a949a62..6cb3c150c 100644 --- a/docs/models/components/bodychatcompletion.mdx +++ b/docs/models/components/bodychatcompletion.mdx @@ -6,16 +6,16 @@ title: "BodyChatCompletion" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | ➖ | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | -| `Choices` | [][components.Choice](../../models/components/choice.mdx) | ✅ | N/A | | -| `Created` | `int64` | ✅ | N/A | | -| `Debug` | [*components.BatchObjectDebug](../../models/components/batchobjectdebug.mdx) | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Object` | [components.BodyObjectChatCompletion](../../models/components/bodyobjectchatcompletion.mdx) | ✅ | N/A | | -| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | ➖ | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | -| `Provider` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | ➖ | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `SystemFingerprint` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Usage` | [*components.BodyUsage1](../../models/components/bodyusage1.mdx) | ➖ | N/A | | \ No newline at end of file +| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | :heavy_minus_sign: | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | +| `Choices` | [][components.Choice](../../models/components/choice.mdx) | :heavy_check_mark: | N/A | | +| `Created` | `int64` | :heavy_check_mark: | N/A | | +| `Debug` | [*components.BatchObjectDebug](../../models/components/batchobjectdebug.mdx) | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Object` | [components.BodyObjectChatCompletion](../../models/components/bodyobjectchatcompletion.mdx) | :heavy_check_mark: | N/A | | +| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | :heavy_minus_sign: | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | +| `Provider` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | :heavy_minus_sign: | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `SystemFingerprint` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Usage` | [*components.BodyUsage1](../../models/components/bodyusage1.mdx) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/bodycompletiontokensdetails.mdx b/docs/models/components/bodycompletiontokensdetails.mdx index c8986b7e5..d7da7be75 100644 --- a/docs/models/components/bodycompletiontokensdetails.mdx +++ b/docs/models/components/bodycompletiontokensdetails.mdx @@ -6,6 +6,6 @@ title: "BodyCompletionTokensDetails" | Field | Type | Required | Description | | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for audio output. | -| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for image output. | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for reasoning. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for audio output. | +| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for image output. | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for reasoning. | \ No newline at end of file diff --git a/docs/models/components/bodylist.mdx b/docs/models/components/bodylist.mdx index cec25daff..4f97d6766 100644 --- a/docs/models/components/bodylist.mdx +++ b/docs/models/components/bodylist.mdx @@ -9,8 +9,8 @@ Embeddings response containing embedding vectors | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Data` | [][components.BatchObjectData](../../models/components/batchobjectdata.mdx) | ✅ | List of embedding objects | [
\{
"embedding": [
0.0023064255,
-0.009327292,
0.015797347
],
"index": 0,
"object": "embedding"
}
] | -| `ID` | `*string` | ➖ | Unique identifier for the embeddings response | embd-1234567890 | -| `Model` | `string` | ✅ | The model used for embeddings | openai/text-embedding-3-small | -| `Object` | [components.BodyObjectList](../../models/components/bodyobjectlist.mdx) | ✅ | N/A | | -| `Usage` | [*components.BodyUsage3](../../models/components/bodyusage3.mdx) | ➖ | Token usage statistics | \{
"prompt_tokens": 8,
"total_tokens": 8
} | \ No newline at end of file +| `Data` | [][components.BatchObjectData](../../models/components/batchobjectdata.mdx) | :heavy_check_mark: | List of embedding objects | [
\{
"embedding": [
0.0023064255,
-0.009327292,
0.015797347
],
"index": 0,
"object": "embedding"
}
] | +| `ID` | `*string` | :heavy_minus_sign: | Unique identifier for the embeddings response | embd-1234567890 | +| `Model` | `string` | :heavy_check_mark: | The model used for embeddings | openai/text-embedding-3-small | +| `Object` | [components.BodyObjectList](../../models/components/bodyobjectlist.mdx) | :heavy_check_mark: | N/A | | +| `Usage` | [*components.BodyUsage3](../../models/components/bodyusage3.mdx) | :heavy_minus_sign: | Token usage statistics | \{
"prompt_tokens": 8,
"total_tokens": 8
} | \ No newline at end of file diff --git a/docs/models/components/bodymessage.mdx b/docs/models/components/bodymessage.mdx index a59b91a48..d3294f68f 100644 --- a/docs/models/components/bodymessage.mdx +++ b/docs/models/components/bodymessage.mdx @@ -6,14 +6,14 @@ title: "BodyMessage" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Container` | [*components.AnthropicContainer](../../models/components/anthropiccontainer.mdx) | ✅ | N/A | \{
"expires_at": "2026-04-08T00:00:00Z",
"id": "ctr_01abc",
"skills": null
} | -| `Content` | [][components.ORAnthropicContentBlock](../../models/components/oranthropiccontentblock.mdx) | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `InputTransformations` | optionalnullable.OptionalNullable[[][components.AnthropicInputTransformation](../../models/components/anthropicinputtransformation.mdx)] | ➖ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Role` | [components.BatchObjectRole](../../models/components/batchobjectrole.mdx) | ✅ | N/A | | -| `StopDetails` | [*components.AnthropicRefusalStopDetails](../../models/components/anthropicrefusalstopdetails.mdx) | ✅ | Structured information about a refusal | \{
"category": "cyber",
"explanation": "The request was refused due to policy.",
"type": "refusal"
} | -| `StopReason` | [*components.ORAnthropicStopReason](../../models/components/oranthropicstopreason.mdx) | ✅ | N/A | end_turn | -| `StopSequence` | `*string` | ✅ | N/A | | -| `Type` | [components.BatchObjectTypeMessage](../../models/components/batchobjecttypemessage.mdx) | ✅ | N/A | | -| `Usage` | [components.BodyUsage2](../../models/components/bodyusage2.mdx) | ✅ | N/A | \{
"cache_creation": null,
"cache_creation_input_tokens": null,
"cache_read_input_tokens": null,
"inference_geo": null,
"input_tokens": 100,
"output_tokens": 50,
"output_tokens_details": null,
"server_tool_use": null,
"service_tier": "standard"
} | \ No newline at end of file +| `Container` | [*components.AnthropicContainer](../../models/components/anthropiccontainer.mdx) | :heavy_check_mark: | N/A | \{
"expires_at": "2026-04-08T00:00:00Z",
"id": "ctr_01abc",
"skills": null
} | +| `Content` | [][components.ORAnthropicContentBlock](../../models/components/oranthropiccontentblock.mdx) | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `InputTransformations` | optionalnullable.OptionalNullable[[][components.AnthropicInputTransformation](../../models/components/anthropicinputtransformation.mdx)] | :heavy_minus_sign: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Role` | [components.BatchObjectRole](../../models/components/batchobjectrole.mdx) | :heavy_check_mark: | N/A | | +| `StopDetails` | [*components.AnthropicRefusalStopDetails](../../models/components/anthropicrefusalstopdetails.mdx) | :heavy_check_mark: | Structured information about a refusal | \{
"category": "cyber",
"explanation": "The request was refused due to policy.",
"type": "refusal"
} | +| `StopReason` | [*components.ORAnthropicStopReason](../../models/components/oranthropicstopreason.mdx) | :heavy_check_mark: | N/A | end_turn | +| `StopSequence` | `*string` | :heavy_check_mark: | N/A | | +| `Type` | [components.BatchObjectTypeMessage](../../models/components/batchobjecttypemessage.mdx) | :heavy_check_mark: | N/A | | +| `Usage` | [components.BodyUsage2](../../models/components/bodyusage2.mdx) | :heavy_check_mark: | N/A | \{
"cache_creation": null,
"cache_creation_input_tokens": null,
"cache_read_input_tokens": null,
"inference_geo": null,
"input_tokens": 100,
"output_tokens": 50,
"output_tokens_details": null,
"server_tool_use": null,
"service_tier": "standard"
} | \ No newline at end of file diff --git a/docs/models/components/bodyprompttokensdetails1.mdx b/docs/models/components/bodyprompttokensdetails1.mdx index 63b8f5031..f83c47624 100644 --- a/docs/models/components/bodyprompttokensdetails1.mdx +++ b/docs/models/components/bodyprompttokensdetails1.mdx @@ -9,8 +9,8 @@ Breakdown of tokens used in the prompt. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input audio. | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens cached by the endpoint. | -| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input files/documents. | -| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input video. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input audio. | +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens cached by the endpoint. | +| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input files/documents. | +| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input video. | \ No newline at end of file diff --git a/docs/models/components/bodyprompttokensdetails2.mdx b/docs/models/components/bodyprompttokensdetails2.mdx index 645d373d9..8364544db 100644 --- a/docs/models/components/bodyprompttokensdetails2.mdx +++ b/docs/models/components/bodyprompttokensdetails2.mdx @@ -9,8 +9,8 @@ Per-modality token breakdown. Only present when the input contains 2+ modalities | Field | Type | Required | Description | Example | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `AudioTokens` | `*int64` | ➖ | Number of audio tokens in the input | | -| `FileTokens` | `*int64` | ➖ | Number of file/document tokens in the input | | -| `ImageTokens` | `*int64` | ➖ | Number of image tokens in the input | 258 | -| `TextTokens` | `*int64` | ➖ | Number of text tokens in the input | 8 | -| `VideoTokens` | `*int64` | ➖ | Number of video tokens in the input | | \ No newline at end of file +| `AudioTokens` | `*int64` | :heavy_minus_sign: | Number of audio tokens in the input | | +| `FileTokens` | `*int64` | :heavy_minus_sign: | Number of file/document tokens in the input | | +| `ImageTokens` | `*int64` | :heavy_minus_sign: | Number of image tokens in the input | 258 | +| `TextTokens` | `*int64` | :heavy_minus_sign: | Number of text tokens in the input | 8 | +| `VideoTokens` | `*int64` | :heavy_minus_sign: | Number of video tokens in the input | | \ No newline at end of file diff --git a/docs/models/components/bodyservertooluse.mdx b/docs/models/components/bodyservertooluse.mdx index 0c0bd4b7f..81a3cc565 100644 --- a/docs/models/components/bodyservertooluse.mdx +++ b/docs/models/components/bodyservertooluse.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/bodyusage1.mdx b/docs/models/components/bodyusage1.mdx index 81fa18224..865df2c49 100644 --- a/docs/models/components/bodyusage1.mdx +++ b/docs/models/components/bodyusage1.mdx @@ -6,10 +6,10 @@ title: "BodyUsage1" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `CompletionTokens` | `int64` | ✅ | The tokens generated | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BodyCompletionTokensDetails](../../models/components/bodycompletiontokensdetails.mdx)] | ➖ | N/A | -| `PromptTokens` | `int64` | ✅ | Including images, input audio, and tools if any | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BodyPromptTokensDetails1](../../models/components/bodyprompttokensdetails1.mdx)] | ➖ | Breakdown of tokens used in the prompt. | -| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BodyServerToolUse](../../models/components/bodyservertooluse.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | -| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.BatchObjectServerToolUseDetails](../../models/components/batchobjectservertoolusedetails.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | -| `TotalTokens` | `int64` | ✅ | Sum of the above two fields | \ No newline at end of file +| `CompletionTokens` | `int64` | :heavy_check_mark: | The tokens generated | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.BodyCompletionTokensDetails](../../models/components/bodycompletiontokensdetails.mdx)] | :heavy_minus_sign: | N/A | +| `PromptTokens` | `int64` | :heavy_check_mark: | Including images, input audio, and tools if any | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.BodyPromptTokensDetails1](../../models/components/bodyprompttokensdetails1.mdx)] | :heavy_minus_sign: | Breakdown of tokens used in the prompt. | +| `ServerToolUse` | optionalnullable.OptionalNullable[[components.BodyServerToolUse](../../models/components/bodyservertooluse.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | +| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.BatchObjectServerToolUseDetails](../../models/components/batchobjectservertoolusedetails.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | +| `TotalTokens` | `int64` | :heavy_check_mark: | Sum of the above two fields | \ No newline at end of file diff --git a/docs/models/components/bodyusage2.mdx b/docs/models/components/bodyusage2.mdx index 80031359c..b8a163a97 100644 --- a/docs/models/components/bodyusage2.mdx +++ b/docs/models/components/bodyusage2.mdx @@ -6,14 +6,14 @@ title: "BodyUsage2" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | [*components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx) | ✅ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | -| `CacheCreationInputTokens` | `*int64` | ✅ | N/A | | -| `CacheReadInputTokens` | `*int64` | ✅ | N/A | | -| `InferenceGeo` | `*string` | ✅ | N/A | | -| `InputTokens` | `int64` | ✅ | N/A | | -| `OutputTokens` | `int64` | ✅ | N/A | | -| `OutputTokensDetails` | [*components.AnthropicOutputTokensDetails](../../models/components/anthropicoutputtokensdetails.mdx) | ✅ | N/A | \{
"thinking_tokens": 0
} | -| `ServerToolUse` | [*components.AnthropicServerToolUsage](../../models/components/anthropicservertoolusage.mdx) | ✅ | N/A | \{
"web_fetch_requests": 0,
"web_search_requests": 1
} | -| `ServiceTier` | [*components.AnthropicServiceTier](../../models/components/anthropicservicetier.mdx) | ✅ | N/A | standard | -| `Iterations` | [][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx) | ➖ | N/A | | -| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | ➖ | N/A | standard | \ No newline at end of file +| `CacheCreation` | [*components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx) | :heavy_check_mark: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | +| `CacheCreationInputTokens` | `*int64` | :heavy_check_mark: | N/A | | +| `CacheReadInputTokens` | `*int64` | :heavy_check_mark: | N/A | | +| `InferenceGeo` | `*string` | :heavy_check_mark: | N/A | | +| `InputTokens` | `int64` | :heavy_check_mark: | N/A | | +| `OutputTokens` | `int64` | :heavy_check_mark: | N/A | | +| `OutputTokensDetails` | [*components.AnthropicOutputTokensDetails](../../models/components/anthropicoutputtokensdetails.mdx) | :heavy_check_mark: | N/A | \{
"thinking_tokens": 0
} | +| `ServerToolUse` | [*components.AnthropicServerToolUsage](../../models/components/anthropicservertoolusage.mdx) | :heavy_check_mark: | N/A | \{
"web_fetch_requests": 0,
"web_search_requests": 1
} | +| `ServiceTier` | [*components.AnthropicServiceTier](../../models/components/anthropicservicetier.mdx) | :heavy_check_mark: | N/A | standard | +| `Iterations` | [][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx) | :heavy_minus_sign: | N/A | | +| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | :heavy_minus_sign: | N/A | standard | \ No newline at end of file diff --git a/docs/models/components/bodyusage3.mdx b/docs/models/components/bodyusage3.mdx index 26ad5632a..07c87f802 100644 --- a/docs/models/components/bodyusage3.mdx +++ b/docs/models/components/bodyusage3.mdx @@ -9,9 +9,9 @@ Token usage statistics | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Cost` | `*float64` | ➖ | Cost of the request in credits | 0.0001 | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `PromptTokens` | `int64` | ✅ | Number of tokens in the input | 8 | -| `PromptTokensDetails` | [*components.BodyPromptTokensDetails2](../../models/components/bodyprompttokensdetails2.mdx) | ➖ | Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included. | | -| `TotalTokens` | `int64` | ✅ | Total number of tokens used | 8 | \ No newline at end of file +| `Cost` | `*float64` | :heavy_minus_sign: | Cost of the request in credits | 0.0001 | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Number of tokens in the input | 8 | +| `PromptTokensDetails` | [*components.BodyPromptTokensDetails2](../../models/components/bodyprompttokensdetails2.mdx) | :heavy_minus_sign: | Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included. | | +| `TotalTokens` | `int64` | :heavy_check_mark: | Total number of tokens used | 8 | \ No newline at end of file diff --git a/docs/models/components/booleancapability.mdx b/docs/models/components/booleancapability.mdx index 43e0df119..3505ed8c7 100644 --- a/docs/models/components/booleancapability.mdx +++ b/docs/models/components/booleancapability.mdx @@ -9,4 +9,4 @@ A supported-or-not flag. Present means the parameter is accepted. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Type` | [components.BooleanCapabilityType](../../models/components/booleancapabilitytype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.BooleanCapabilityType](../../models/components/booleancapabilitytype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/box.mdx b/docs/models/components/box.mdx index 31732354e..362240a00 100644 --- a/docs/models/components/box.mdx +++ b/docs/models/components/box.mdx @@ -6,7 +6,7 @@ title: "Box" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bottom` | `float64` | ✅ | N/A | -| `Left` | `float64` | ✅ | N/A | -| `Right` | `float64` | ✅ | N/A | -| `Top` | `float64` | ✅ | N/A | \ No newline at end of file +| `Bottom` | `float64` | :heavy_check_mark: | N/A | +| `Left` | `float64` | :heavy_check_mark: | N/A | +| `Right` | `float64` | :heavy_check_mark: | N/A | +| `Top` | `float64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/bulkaddworkspacemembersrequest.mdx b/docs/models/components/bulkaddworkspacemembersrequest.mdx index b31c67d3e..095d9bcf8 100644 --- a/docs/models/components/bulkaddworkspacemembersrequest.mdx +++ b/docs/models/components/bulkaddworkspacemembersrequest.mdx @@ -6,4 +6,4 @@ title: "BulkAddWorkspaceMembersRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `UserIds` | []`string` | ✅ | List of user IDs to add to the workspace. Members are assigned the same role they hold in the organization. | [
"user_abc123",
"user_def456"
] | \ No newline at end of file +| `UserIds` | []`string` | :heavy_check_mark: | List of user IDs to add to the workspace. Members are assigned the same role they hold in the organization. | [
"user_abc123",
"user_def456"
] | \ No newline at end of file diff --git a/docs/models/components/bulkaddworkspacemembersresponse.mdx b/docs/models/components/bulkaddworkspacemembersresponse.mdx index e198a271b..a7b13193c 100644 --- a/docs/models/components/bulkaddworkspacemembersresponse.mdx +++ b/docs/models/components/bulkaddworkspacemembersresponse.mdx @@ -6,5 +6,5 @@ title: "BulkAddWorkspaceMembersResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `AddedCount` | `int64` | ✅ | Number of workspace memberships created or updated | 2 | -| `Data` | [][components.WorkspaceMember](../../models/components/workspacemember.mdx) | ✅ | List of added workspace memberships | | \ No newline at end of file +| `AddedCount` | `int64` | :heavy_check_mark: | Number of workspace memberships created or updated | 2 | +| `Data` | [][components.WorkspaceMember](../../models/components/workspacemember.mdx) | :heavy_check_mark: | List of added workspace memberships | | \ No newline at end of file diff --git a/docs/models/components/bulkassignkeysrequest.mdx b/docs/models/components/bulkassignkeysrequest.mdx index 66acb2f5e..5d58c25e0 100644 --- a/docs/models/components/bulkassignkeysrequest.mdx +++ b/docs/models/components/bulkassignkeysrequest.mdx @@ -6,4 +6,4 @@ title: "BulkAssignKeysRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `KeyHashes` | []`string` | ✅ | Array of API key hashes to assign to the guardrail | [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
] | \ No newline at end of file +| `KeyHashes` | []`string` | :heavy_check_mark: | Array of API key hashes to assign to the guardrail | [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
] | \ No newline at end of file diff --git a/docs/models/components/bulkassignkeysresponse.mdx b/docs/models/components/bulkassignkeysresponse.mdx index 37c84ffa5..09ba20be2 100644 --- a/docs/models/components/bulkassignkeysresponse.mdx +++ b/docs/models/components/bulkassignkeysresponse.mdx @@ -6,4 +6,4 @@ title: "BulkAssignKeysResponse" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `AssignedCount` | `int64` | ✅ | Number of keys successfully assigned | 3 | \ No newline at end of file +| `AssignedCount` | `int64` | :heavy_check_mark: | Number of keys successfully assigned | 3 | \ No newline at end of file diff --git a/docs/models/components/bulkassignmembersrequest.mdx b/docs/models/components/bulkassignmembersrequest.mdx index c9aa0041a..dcdcf66aa 100644 --- a/docs/models/components/bulkassignmembersrequest.mdx +++ b/docs/models/components/bulkassignmembersrequest.mdx @@ -6,4 +6,4 @@ title: "BulkAssignMembersRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `MemberUserIds` | []`string` | ✅ | Array of member user IDs to assign to the guardrail | [
"user_abc123",
"user_def456"
] | \ No newline at end of file +| `MemberUserIds` | []`string` | :heavy_check_mark: | Array of member user IDs to assign to the guardrail | [
"user_abc123",
"user_def456"
] | \ No newline at end of file diff --git a/docs/models/components/bulkassignmembersresponse.mdx b/docs/models/components/bulkassignmembersresponse.mdx index fa3dcd9ab..84706a4af 100644 --- a/docs/models/components/bulkassignmembersresponse.mdx +++ b/docs/models/components/bulkassignmembersresponse.mdx @@ -6,4 +6,4 @@ title: "BulkAssignMembersResponse" | Field | Type | Required | Description | Example | | --------------------------------------- | --------------------------------------- | --------------------------------------- | --------------------------------------- | --------------------------------------- | -| `AssignedCount` | `int64` | ✅ | Number of members successfully assigned | 2 | \ No newline at end of file +| `AssignedCount` | `int64` | :heavy_check_mark: | Number of members successfully assigned | 2 | \ No newline at end of file diff --git a/docs/models/components/bulkremoveworkspacemembersrequest.mdx b/docs/models/components/bulkremoveworkspacemembersrequest.mdx index b3ef57abc..1752a0fe3 100644 --- a/docs/models/components/bulkremoveworkspacemembersrequest.mdx +++ b/docs/models/components/bulkremoveworkspacemembersrequest.mdx @@ -6,4 +6,4 @@ title: "BulkRemoveWorkspaceMembersRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `UserIds` | []`string` | ✅ | List of user IDs to remove from the workspace | [
"user_abc123",
"user_def456"
] | \ No newline at end of file +| `UserIds` | []`string` | :heavy_check_mark: | List of user IDs to remove from the workspace | [
"user_abc123",
"user_def456"
] | \ No newline at end of file diff --git a/docs/models/components/bulkremoveworkspacemembersresponse.mdx b/docs/models/components/bulkremoveworkspacemembersresponse.mdx index 1f6b418f3..216da1c53 100644 --- a/docs/models/components/bulkremoveworkspacemembersresponse.mdx +++ b/docs/models/components/bulkremoveworkspacemembersresponse.mdx @@ -6,4 +6,4 @@ title: "BulkRemoveWorkspaceMembersResponse" | Field | Type | Required | Description | Example | | ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- | -| `RemovedCount` | `int64` | ✅ | Number of members removed | 2 | \ No newline at end of file +| `RemovedCount` | `int64` | :heavy_check_mark: | Number of members removed | 2 | \ No newline at end of file diff --git a/docs/models/components/bulkunassignkeysrequest.mdx b/docs/models/components/bulkunassignkeysrequest.mdx index a78d4eb28..676cdd92b 100644 --- a/docs/models/components/bulkunassignkeysrequest.mdx +++ b/docs/models/components/bulkunassignkeysrequest.mdx @@ -6,4 +6,4 @@ title: "BulkUnassignKeysRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `KeyHashes` | []`string` | ✅ | Array of API key hashes to unassign from the guardrail | [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
] | \ No newline at end of file +| `KeyHashes` | []`string` | :heavy_check_mark: | Array of API key hashes to unassign from the guardrail | [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
] | \ No newline at end of file diff --git a/docs/models/components/bulkunassignkeysresponse.mdx b/docs/models/components/bulkunassignkeysresponse.mdx index 5035deb2d..dee892f3e 100644 --- a/docs/models/components/bulkunassignkeysresponse.mdx +++ b/docs/models/components/bulkunassignkeysresponse.mdx @@ -6,4 +6,4 @@ title: "BulkUnassignKeysResponse" | Field | Type | Required | Description | Example | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| `UnassignedCount` | `int64` | ✅ | Number of keys successfully unassigned | 3 | \ No newline at end of file +| `UnassignedCount` | `int64` | :heavy_check_mark: | Number of keys successfully unassigned | 3 | \ No newline at end of file diff --git a/docs/models/components/bulkunassignmembersrequest.mdx b/docs/models/components/bulkunassignmembersrequest.mdx index ebe0f6899..48269d7fc 100644 --- a/docs/models/components/bulkunassignmembersrequest.mdx +++ b/docs/models/components/bulkunassignmembersrequest.mdx @@ -6,4 +6,4 @@ title: "BulkUnassignMembersRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `MemberUserIds` | []`string` | ✅ | Array of member user IDs to unassign from the guardrail | [
"user_abc123",
"user_def456"
] | \ No newline at end of file +| `MemberUserIds` | []`string` | :heavy_check_mark: | Array of member user IDs to unassign from the guardrail | [
"user_abc123",
"user_def456"
] | \ No newline at end of file diff --git a/docs/models/components/bulkunassignmembersresponse.mdx b/docs/models/components/bulkunassignmembersresponse.mdx index 812034694..ae3096508 100644 --- a/docs/models/components/bulkunassignmembersresponse.mdx +++ b/docs/models/components/bulkunassignmembersresponse.mdx @@ -6,4 +6,4 @@ title: "BulkUnassignMembersResponse" | Field | Type | Required | Description | Example | | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | -| `UnassignedCount` | `int64` | ✅ | Number of members successfully unassigned | 2 | \ No newline at end of file +| `UnassignedCount` | `int64` | :heavy_check_mark: | Number of members successfully unassigned | 2 | \ No newline at end of file diff --git a/docs/models/components/byokkey.mdx b/docs/models/components/byokkey.mdx index 40f48489e..273564217 100644 --- a/docs/models/components/byokkey.mdx +++ b/docs/models/components/byokkey.mdx @@ -6,19 +6,19 @@ title: "BYOKKey" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedAPIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` means no restriction. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | -| `AllowedModels` | []`string` | ✅ | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | -| `AllowedUserIds` | []`string` | ✅ | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the credential was created. | 2025-08-24T10:30:00Z | -| `DeclaredRegion` | [*components.BYOKKeyDeclaredRegion](../../models/components/byokkeydeclaredregion.mdx) | ✅ | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. | null | -| `DeclaredZdr` | `*bool` | ✅ | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. | null | -| `Disabled` | `bool` | ✅ | Whether this credential is currently disabled. | false | -| `ID` | `string` | ✅ | Stable public identifier for this BYOK credential. | 11111111-2222-3333-4444-555555555555 | -| `IsBYOKOnly` | `bool` | ✅ | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. | false | -| `IsFallback` | `bool` | ✅ | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. | false | -| `IsRequired` | `bool` | ✅ | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. | false | -| `Label` | `string` | ✅ | Short masked snippet of the key (e.g. the first/last few characters) used to identify it in the UI. | sk-...AbCd | -| `Name` | optionalnullable.OptionalNullable[`string`] | ➖ | Optional human-readable name for the credential. | Production OpenAI Key | -| `Provider` | [components.BYOKProviderSlug](../../models/components/byokproviderslug.mdx) | ✅ | The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | -| `SortOrder` | `int64` | ✅ | Position within the provider — credentials are tried in ascending sort order. | 0 | -| `WorkspaceID` | `*string` | ✅ | The workspace this credential is scoped to, or `null` when it is global — usable across every workspace in the account. A `null` value does not mean the default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `AllowedAPIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` means no restriction. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | +| `AllowedModels` | []`string` | :heavy_check_mark: | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | +| `AllowedUserIds` | []`string` | :heavy_check_mark: | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the credential was created. | 2025-08-24T10:30:00Z | +| `DeclaredRegion` | [*components.BYOKKeyDeclaredRegion](../../models/components/byokkeydeclaredregion.mdx) | :heavy_check_mark: | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. | null | +| `DeclaredZdr` | `*bool` | :heavy_check_mark: | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. | null | +| `Disabled` | `bool` | :heavy_check_mark: | Whether this credential is currently disabled. | false | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this BYOK credential. | 11111111-2222-3333-4444-555555555555 | +| `IsBYOKOnly` | `bool` | :heavy_check_mark: | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. | false | +| `IsFallback` | `bool` | :heavy_check_mark: | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. | false | +| `IsRequired` | `bool` | :heavy_check_mark: | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. | false | +| `Label` | `string` | :heavy_check_mark: | Short masked snippet of the key (e.g. the first/last few characters) used to identify it in the UI. | sk-...AbCd | +| `Name` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Optional human-readable name for the credential. | Production OpenAI Key | +| `Provider` | [components.BYOKProviderSlug](../../models/components/byokproviderslug.mdx) | :heavy_check_mark: | The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | +| `SortOrder` | `int64` | :heavy_check_mark: | Position within the provider — credentials are tried in ascending sort order. | 0 | +| `WorkspaceID` | `*string` | :heavy_check_mark: | The workspace this credential is scoped to, or `null` when it is global — usable across every workspace in the account. A `null` value does not mean the default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/chatassistantimages.mdx b/docs/models/components/chatassistantimages.mdx index 442401b7a..fd6c5d754 100644 --- a/docs/models/components/chatassistantimages.mdx +++ b/docs/models/components/chatassistantimages.mdx @@ -6,4 +6,4 @@ title: "ChatAssistantImages" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `ImageURL` | [components.ChatAssistantImagesImageURL](../../models/components/chatassistantimagesimageurl.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.ChatAssistantImagesImageURL](../../models/components/chatassistantimagesimageurl.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatassistantimagesimageurl.mdx b/docs/models/components/chatassistantimagesimageurl.mdx index 9a6f057c8..791d7db4b 100644 --- a/docs/models/components/chatassistantimagesimageurl.mdx +++ b/docs/models/components/chatassistantimagesimageurl.mdx @@ -6,4 +6,4 @@ title: "ChatAssistantImagesImageURL" | Field | Type | Required | Description | | ------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------- | ------------------------------------------------- | -| `URL` | `string` | ✅ | URL or base64-encoded data of the generated image | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | URL or base64-encoded data of the generated image | \ No newline at end of file diff --git a/docs/models/components/chatassistantmessage.mdx b/docs/models/components/chatassistantmessage.mdx index 236bfc5c4..d41ea38d2 100644 --- a/docs/models/components/chatassistantmessage.mdx +++ b/docs/models/components/chatassistantmessage.mdx @@ -9,13 +9,13 @@ Assistant message for requests and responses | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Audio` | [*components.ChatAudioOutput](../../models/components/chataudiooutput.mdx) | ➖ | Audio output data or reference | \{
"data": "UklGRnoGAABXQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YQoGAACBhYqFbF1f",
"expires_at": 1677652400,
"id": "audio_abc123",
"transcript": "Hello! How can I help you today?"
} | -| `Content` | optionalnullable.OptionalNullable[[components.ChatAssistantMessageContent](../../models/components/chatassistantmessagecontent.mdx)] | ➖ | Assistant message content | | -| `Images` | [][components.ChatAssistantImages](../../models/components/chatassistantimages.mdx) | ➖ | Generated images from image generation models | [
\{
"image_url": \{
"url": "data:image/png;base64,iVBORw0KGgo..."
}
}
] | -| `Model` | `*string` | ➖ | Model that generated this assistant message | openai/gpt-4o | -| `Name` | `*string` | ➖ | Optional name for the assistant | | -| `Reasoning` | optionalnullable.OptionalNullable[`string`] | ➖ | Reasoning output | | -| `ReasoningDetails` | [][components.ReasoningDetailUnion](../../models/components/reasoningdetailunion.mdx) | ➖ | Reasoning details for extended thinking models | [
\{
"text": "Let me work through this step by step...",
"type": "reasoning.text"
}
] | -| `Refusal` | optionalnullable.OptionalNullable[`string`] | ➖ | Refusal message if content was refused | | -| `Role` | [components.ChatAssistantMessageRole](../../models/components/chatassistantmessagerole.mdx) | ✅ | N/A | | -| `ToolCalls` | [][components.ChatToolCall](../../models/components/chattoolcall.mdx) | ➖ | Tool calls made by the assistant | | \ No newline at end of file +| `Audio` | [*components.ChatAudioOutput](../../models/components/chataudiooutput.mdx) | :heavy_minus_sign: | Audio output data or reference | \{
"data": "UklGRnoGAABXQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YQoGAACBhYqFbF1f",
"expires_at": 1677652400,
"id": "audio_abc123",
"transcript": "Hello! How can I help you today?"
} | +| `Content` | optionalnullable.OptionalNullable[[components.ChatAssistantMessageContent](../../models/components/chatassistantmessagecontent.mdx)] | :heavy_minus_sign: | Assistant message content | | +| `Images` | [][components.ChatAssistantImages](../../models/components/chatassistantimages.mdx) | :heavy_minus_sign: | Generated images from image generation models | [
\{
"image_url": \{
"url": "data:image/png;base64,iVBORw0KGgo..."
}
}
] | +| `Model` | `*string` | :heavy_minus_sign: | Model that generated this assistant message | openai/gpt-4o | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for the assistant | | +| `Reasoning` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Reasoning output | | +| `ReasoningDetails` | [][components.ReasoningDetailUnion](../../models/components/reasoningdetailunion.mdx) | :heavy_minus_sign: | Reasoning details for extended thinking models | [
\{
"text": "Let me work through this step by step...",
"type": "reasoning.text"
}
] | +| `Refusal` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Refusal message if content was refused | | +| `Role` | [components.ChatAssistantMessageRole](../../models/components/chatassistantmessagerole.mdx) | :heavy_check_mark: | N/A | | +| `ToolCalls` | [][components.ChatToolCall](../../models/components/chattoolcall.mdx) | :heavy_minus_sign: | Tool calls made by the assistant | | \ No newline at end of file diff --git a/docs/models/components/chataudiooutput.mdx b/docs/models/components/chataudiooutput.mdx index c7e45be43..944273328 100644 --- a/docs/models/components/chataudiooutput.mdx +++ b/docs/models/components/chataudiooutput.mdx @@ -9,7 +9,7 @@ Audio output data or reference | Field | Type | Required | Description | | -------------------------- | -------------------------- | -------------------------- | -------------------------- | -| `Data` | `*string` | ➖ | Base64 encoded audio data | -| `ExpiresAt` | `*int64` | ➖ | Audio expiration timestamp | -| `ID` | `*string` | ➖ | Audio output identifier | -| `Transcript` | `*string` | ➖ | Audio transcript | \ No newline at end of file +| `Data` | `*string` | :heavy_minus_sign: | Base64 encoded audio data | +| `ExpiresAt` | `*int64` | :heavy_minus_sign: | Audio expiration timestamp | +| `ID` | `*string` | :heavy_minus_sign: | Audio output identifier | +| `Transcript` | `*string` | :heavy_minus_sign: | Audio transcript | \ No newline at end of file diff --git a/docs/models/components/chatchoice.mdx b/docs/models/components/chatchoice.mdx index 772de95ca..9c7ef7a89 100644 --- a/docs/models/components/chatchoice.mdx +++ b/docs/models/components/chatchoice.mdx @@ -9,7 +9,7 @@ Chat completion choice | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `FinishReason` | [*components.ChatFinishReasonEnum](../../models/components/chatfinishreasonenum.mdx) | ✅ | N/A | stop | -| `Index` | `int64` | ✅ | Choice index | 0 | -| `Logprobs` | optionalnullable.OptionalNullable[[components.ChatTokenLogprobs](../../models/components/chattokenlogprobs.mdx)] | ➖ | Log probabilities for the completion | \{
"content": [
\{
"bytes": null,
"logprob": -0.612345,
"token": " Hello",
"top_logprobs": []
}
],
"refusal": null
} | -| `Message` | [components.ChatAssistantMessage](../../models/components/chatassistantmessage.mdx) | ✅ | Assistant message for requests and responses | \{
"content": "What is the capital of France?",
"role": "user"
} | \ No newline at end of file +| `FinishReason` | [*components.ChatFinishReasonEnum](../../models/components/chatfinishreasonenum.mdx) | :heavy_check_mark: | N/A | stop | +| `Index` | `int64` | :heavy_check_mark: | Choice index | 0 | +| `Logprobs` | optionalnullable.OptionalNullable[[components.ChatTokenLogprobs](../../models/components/chattokenlogprobs.mdx)] | :heavy_minus_sign: | Log probabilities for the completion | \{
"content": [
\{
"bytes": null,
"logprob": -0.612345,
"token": " Hello",
"top_logprobs": []
}
],
"refusal": null
} | +| `Message` | [components.ChatAssistantMessage](../../models/components/chatassistantmessage.mdx) | :heavy_check_mark: | Assistant message for requests and responses | \{
"content": "What is the capital of France?",
"role": "user"
} | \ No newline at end of file diff --git a/docs/models/components/chatcontentaudio.mdx b/docs/models/components/chatcontentaudio.mdx index b0b43dc7a..2b0157064 100644 --- a/docs/models/components/chatcontentaudio.mdx +++ b/docs/models/components/chatcontentaudio.mdx @@ -9,5 +9,5 @@ Audio input content part. Supported audio formats vary by provider. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `InputAudio` | [components.ChatContentAudioInputAudio](../../models/components/chatcontentaudioinputaudio.mdx) | ✅ | N/A | -| `Type` | [components.ChatContentAudioType](../../models/components/chatcontentaudiotype.mdx) | ✅ | N/A | \ No newline at end of file +| `InputAudio` | [components.ChatContentAudioInputAudio](../../models/components/chatcontentaudioinputaudio.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ChatContentAudioType](../../models/components/chatcontentaudiotype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatcontentaudioinputaudio.mdx b/docs/models/components/chatcontentaudioinputaudio.mdx index 986694bac..bc976337c 100644 --- a/docs/models/components/chatcontentaudioinputaudio.mdx +++ b/docs/models/components/chatcontentaudioinputaudio.mdx @@ -6,5 +6,5 @@ title: "ChatContentAudioInputAudio" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `Data` | `string` | ✅ | Base64 encoded audio data | -| `Format` | `string` | ✅ | Audio format (e.g., wav, mp3, flac, m4a, ogg, aiff, aac, pcm16, pcm24). Supported formats vary by provider. | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | Base64 encoded audio data | +| `Format` | `string` | :heavy_check_mark: | Audio format (e.g., wav, mp3, flac, m4a, ogg, aiff, aac, pcm16, pcm24). Supported formats vary by provider. | \ No newline at end of file diff --git a/docs/models/components/chatcontentcachecontrol.mdx b/docs/models/components/chatcontentcachecontrol.mdx index 8e14f84d1..110129bb8 100644 --- a/docs/models/components/chatcontentcachecontrol.mdx +++ b/docs/models/components/chatcontentcachecontrol.mdx @@ -9,5 +9,5 @@ Anthropic-style cache breakpoint for the content part. Interchangeable with the | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `TTL` | [*components.AnthropicCacheControlTTL](../../models/components/anthropiccachecontrolttl.mdx) | ➖ | N/A | 5m | -| `Type` | [components.ChatContentCacheControlType](../../models/components/chatcontentcachecontroltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `TTL` | [*components.AnthropicCacheControlTTL](../../models/components/anthropiccachecontrolttl.mdx) | :heavy_minus_sign: | N/A | 5m | +| `Type` | [components.ChatContentCacheControlType](../../models/components/chatcontentcachecontroltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatcontentfile.mdx b/docs/models/components/chatcontentfile.mdx index 208f3a5a1..49c1fcbdf 100644 --- a/docs/models/components/chatcontentfile.mdx +++ b/docs/models/components/chatcontentfile.mdx @@ -9,5 +9,5 @@ File content part for document processing | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `File` | [components.ChatContentFileFile](../../models/components/chatcontentfilefile.mdx) | ✅ | N/A | -| `Type` | [components.ChatContentFileType](../../models/components/chatcontentfiletype.mdx) | ✅ | N/A | \ No newline at end of file +| `File` | [components.ChatContentFileFile](../../models/components/chatcontentfilefile.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ChatContentFileType](../../models/components/chatcontentfiletype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatcontentfilefile.mdx b/docs/models/components/chatcontentfilefile.mdx index 164a096ea..2769ae67a 100644 --- a/docs/models/components/chatcontentfilefile.mdx +++ b/docs/models/components/chatcontentfilefile.mdx @@ -6,6 +6,6 @@ title: "ChatContentFileFile" | Field | Type | Required | Description | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| `FileData` | `*string` | ➖ | File content as base64 data URL or URL | -| `FileID` | `*string` | ➖ | File ID for previously uploaded files | -| `Filename` | `*string` | ➖ | Original filename | \ No newline at end of file +| `FileData` | `*string` | :heavy_minus_sign: | File content as base64 data URL or URL | +| `FileID` | `*string` | :heavy_minus_sign: | File ID for previously uploaded files | +| `Filename` | `*string` | :heavy_minus_sign: | Original filename | \ No newline at end of file diff --git a/docs/models/components/chatcontentimage.mdx b/docs/models/components/chatcontentimage.mdx index d721b60bb..7978182c6 100644 --- a/docs/models/components/chatcontentimage.mdx +++ b/docs/models/components/chatcontentimage.mdx @@ -9,5 +9,5 @@ Image content part for vision models | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `ImageURL` | [components.ChatContentImageImageURL](../../models/components/chatcontentimageimageurl.mdx) | ✅ | N/A | -| `Type` | [components.ChatContentImageType](../../models/components/chatcontentimagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.ChatContentImageImageURL](../../models/components/chatcontentimageimageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ChatContentImageType](../../models/components/chatcontentimagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatcontentimageimageurl.mdx b/docs/models/components/chatcontentimageimageurl.mdx index 734580ead..4e9eaec26 100644 --- a/docs/models/components/chatcontentimageimageurl.mdx +++ b/docs/models/components/chatcontentimageimageurl.mdx @@ -6,5 +6,5 @@ title: "ChatContentImageImageURL" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Detail` | [*components.ChatContentImageDetail](../../models/components/chatcontentimagedetail.mdx) | ➖ | Image detail level for vision models. `original` is an OpenRouter extension (not in the OpenAI Chat Completions spec) requesting true original-resolution media; it is downgraded to `high` for providers that lack an original-resolution tier. | -| `URL` | `string` | ✅ | URL of the image (data: URLs supported) | \ No newline at end of file +| `Detail` | [*components.ChatContentImageDetail](../../models/components/chatcontentimagedetail.mdx) | :heavy_minus_sign: | Image detail level for vision models. `original` is an OpenRouter extension (not in the OpenAI Chat Completions spec) requesting true original-resolution media; it is downgraded to `high` for providers that lack an original-resolution tier. | +| `URL` | `string` | :heavy_check_mark: | URL of the image (data: URLs supported) | \ No newline at end of file diff --git a/docs/models/components/chatcontenttext.mdx b/docs/models/components/chatcontenttext.mdx index e997e01c9..1d8164037 100644 --- a/docs/models/components/chatcontenttext.mdx +++ b/docs/models/components/chatcontenttext.mdx @@ -9,7 +9,7 @@ Text content part | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheControl` | [*components.ChatContentCacheControl](../../models/components/chatcontentcachecontrol.mdx) | ➖ | Anthropic-style cache breakpoint for the content part. Interchangeable with the OpenAI-style `prompt_cache_breakpoint` marker: OpenRouter converts between the two based on the provider serving the request. | \{
"ttl": "5m",
"type": "ephemeral"
} | -| `PromptCacheBreakpoint` | optionalnullable.OptionalNullable[[components.PromptCacheBreakpoint](../../models/components/promptcachebreakpoint.mdx)] | ➖ | Marks an explicit prompt-cache boundary on this content block (OpenAI-style). Everything through the block carrying this marker is part of the candidate cached prefix. Supported natively by OpenAI GPT-5.6 and newer; on providers that use Anthropic-style `cache_control`, OpenRouter converts the marker to that format automatically. `ttl` ("30m" or "12h") overrides the request-level `prompt_cache_options.ttl` for this boundary; 12h writes bill at the higher cache-write rate. | \{
"mode": "explicit",
"ttl": "30m"
} | -| `Text` | `string` | ✅ | N/A | | -| `Type` | [components.ChatContentTextType](../../models/components/chatcontenttexttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.ChatContentCacheControl](../../models/components/chatcontentcachecontrol.mdx) | :heavy_minus_sign: | Anthropic-style cache breakpoint for the content part. Interchangeable with the OpenAI-style `prompt_cache_breakpoint` marker: OpenRouter converts between the two based on the provider serving the request. | \{
"ttl": "5m",
"type": "ephemeral"
} | +| `PromptCacheBreakpoint` | optionalnullable.OptionalNullable[[components.PromptCacheBreakpoint](../../models/components/promptcachebreakpoint.mdx)] | :heavy_minus_sign: | Marks an explicit prompt-cache boundary on this content block (OpenAI-style). Everything through the block carrying this marker is part of the candidate cached prefix. Supported natively by OpenAI GPT-5.6 and newer; on providers that use Anthropic-style `cache_control`, OpenRouter converts the marker to that format automatically. `ttl` ("30m" or "12h") overrides the request-level `prompt_cache_options.ttl` for this boundary; 12h writes bill at the higher cache-write rate. | \{
"mode": "explicit",
"ttl": "30m"
} | +| `Text` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.ChatContentTextType](../../models/components/chatcontenttexttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatcontentvideo.mdx b/docs/models/components/chatcontentvideo.mdx index 35ba5256e..9b545f87b 100644 --- a/docs/models/components/chatcontentvideo.mdx +++ b/docs/models/components/chatcontentvideo.mdx @@ -9,5 +9,5 @@ Video input content part | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Type` | [components.ChatContentVideoType](../../models/components/chatcontentvideotype.mdx) | ✅ | N/A | | -| `VideoURL` | [components.ChatContentVideoInput](../../models/components/chatcontentvideoinput.mdx) | ✅ | Video input object | \{
"url": "https://example.com/video.mp4"
} | \ No newline at end of file +| `Type` | [components.ChatContentVideoType](../../models/components/chatcontentvideotype.mdx) | :heavy_check_mark: | N/A | | +| `VideoURL` | [components.ChatContentVideoInput](../../models/components/chatcontentvideoinput.mdx) | :heavy_check_mark: | Video input object | \{
"url": "https://example.com/video.mp4"
} | \ No newline at end of file diff --git a/docs/models/components/chatcontentvideoinput.mdx b/docs/models/components/chatcontentvideoinput.mdx index 623c8b210..2bd6a8619 100644 --- a/docs/models/components/chatcontentvideoinput.mdx +++ b/docs/models/components/chatcontentvideoinput.mdx @@ -9,5 +9,5 @@ Video input object | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Processing` | [*components.ChatContentVideoInputProcessing](../../models/components/chatcontentvideoinputprocessing.mdx) | ➖ | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | -| `URL` | `string` | ✅ | URL of the video (data: URLs supported) | | \ No newline at end of file +| `Processing` | [*components.ChatContentVideoInputProcessing](../../models/components/chatcontentvideoinputprocessing.mdx) | :heavy_minus_sign: | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | +| `URL` | `string` | :heavy_check_mark: | URL of the video (data: URLs supported) | | \ No newline at end of file diff --git a/docs/models/components/chatdebugoptions.mdx b/docs/models/components/chatdebugoptions.mdx index d9d0aa32f..7d820388a 100644 --- a/docs/models/components/chatdebugoptions.mdx +++ b/docs/models/components/chatdebugoptions.mdx @@ -9,4 +9,4 @@ Debug options for inspecting request transformations (streaming only) | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | -| `EchoUpstreamBody` | `*bool` | ➖ | If true, includes the transformed upstream request body in a debug chunk at the start of the stream. Only works with streaming mode. | true | \ No newline at end of file +| `EchoUpstreamBody` | `*bool` | :heavy_minus_sign: | If true, includes the transformed upstream request body in a debug chunk at the start of the stream. Only works with streaming mode. | true | \ No newline at end of file diff --git a/docs/models/components/chatdevelopermessage.mdx b/docs/models/components/chatdevelopermessage.mdx index a602449fd..71c2c2a9d 100644 --- a/docs/models/components/chatdevelopermessage.mdx +++ b/docs/models/components/chatdevelopermessage.mdx @@ -9,7 +9,7 @@ Developer message | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ConfigurationUpdate` | optionalnullable.OptionalNullable[[components.ChatDeveloperMessageConfigurationUpdate](../../models/components/chatdevelopermessageconfigurationupdate.mdx)] | ➖ | OpenRouter extension. Same as the system message `configuration_update`: changes reasoning effort from this point in the conversation onward without invalidating the prompt cache for the preceding turns. | \{
"reasoning": \{
"effort": "low"
}
} | -| `Content` | [components.ChatDeveloperMessageContent](../../models/components/chatdevelopermessagecontent.mdx) | ✅ | Developer message content | This is a message from the developer. | -| `Name` | `*string` | ➖ | Optional name for the developer message | Developer | -| `Role` | [components.ChatDeveloperMessageRole](../../models/components/chatdevelopermessagerole.mdx) | ✅ | N/A | | \ No newline at end of file +| `ConfigurationUpdate` | optionalnullable.OptionalNullable[[components.ChatDeveloperMessageConfigurationUpdate](../../models/components/chatdevelopermessageconfigurationupdate.mdx)] | :heavy_minus_sign: | OpenRouter extension. Same as the system message `configuration_update`: changes reasoning effort from this point in the conversation onward without invalidating the prompt cache for the preceding turns. | \{
"reasoning": \{
"effort": "low"
}
} | +| `Content` | [components.ChatDeveloperMessageContent](../../models/components/chatdevelopermessagecontent.mdx) | :heavy_check_mark: | Developer message content | This is a message from the developer. | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for the developer message | Developer | +| `Role` | [components.ChatDeveloperMessageRole](../../models/components/chatdevelopermessagerole.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatdevelopermessageconfigurationupdate.mdx b/docs/models/components/chatdevelopermessageconfigurationupdate.mdx index 638ae159f..ebc763776 100644 --- a/docs/models/components/chatdevelopermessageconfigurationupdate.mdx +++ b/docs/models/components/chatdevelopermessageconfigurationupdate.mdx @@ -9,4 +9,4 @@ OpenRouter extension. Same as the system message `configuration_update`: changes | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | ✅ | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | \ No newline at end of file +| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | :heavy_check_mark: | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | \ No newline at end of file diff --git a/docs/models/components/chatdynamicservertool.mdx b/docs/models/components/chatdynamicservertool.mdx index 29c3aa6a3..0adb257b8 100644 --- a/docs/models/components/chatdynamicservertool.mdx +++ b/docs/models/components/chatdynamicservertool.mdx @@ -9,5 +9,5 @@ Generic OpenRouter server-tool envelope. `type` names a registered server tool ( | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Parameters` | map[string]`any` | ➖ | N/A | -| `Type` | `string` | ✅ | N/A | \ No newline at end of file +| `Parameters` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Type` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatformatgrammarconfig.mdx b/docs/models/components/chatformatgrammarconfig.mdx index ad5db7863..27fd2d493 100644 --- a/docs/models/components/chatformatgrammarconfig.mdx +++ b/docs/models/components/chatformatgrammarconfig.mdx @@ -9,5 +9,5 @@ Custom grammar response format | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Grammar` | `string` | ✅ | Custom grammar for text generation | root ::= "yes" \| "no" | -| `Type` | [components.ChatFormatGrammarConfigType](../../models/components/chatformatgrammarconfigtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Grammar` | `string` | :heavy_check_mark: | Custom grammar for text generation | root ::= "yes" \| "no" | +| `Type` | [components.ChatFormatGrammarConfigType](../../models/components/chatformatgrammarconfigtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatformatjsonobjectconfig.mdx b/docs/models/components/chatformatjsonobjectconfig.mdx index ade59977f..dd1a41d3d 100644 --- a/docs/models/components/chatformatjsonobjectconfig.mdx +++ b/docs/models/components/chatformatjsonobjectconfig.mdx @@ -9,4 +9,4 @@ JSON object response format | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Type` | [components.ChatFormatJSONObjectConfigType](../../models/components/chatformatjsonobjectconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ChatFormatJSONObjectConfigType](../../models/components/chatformatjsonobjectconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatformatjsonschemaconfig.mdx b/docs/models/components/chatformatjsonschemaconfig.mdx index 47f1d0b8b..269e7ca5a 100644 --- a/docs/models/components/chatformatjsonschemaconfig.mdx +++ b/docs/models/components/chatformatjsonschemaconfig.mdx @@ -9,5 +9,5 @@ JSON Schema response format for structured outputs | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `JSONSchema` | [components.ChatJSONSchemaConfig](../../models/components/chatjsonschemaconfig.mdx) | ✅ | JSON Schema configuration object | \{
"description": "A mathematical response",
"name": "math_response",
"schema": \{
"properties": \{
"answer": \{
"type": "number"
}
},
"required": [
"answer"
],
"type": "object"
},
"strict": true
} | -| `Type` | [components.ChatFormatJSONSchemaConfigType](../../models/components/chatformatjsonschemaconfigtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `JSONSchema` | [components.ChatJSONSchemaConfig](../../models/components/chatjsonschemaconfig.mdx) | :heavy_check_mark: | JSON Schema configuration object | \{
"description": "A mathematical response",
"name": "math_response",
"schema": \{
"properties": \{
"answer": \{
"type": "number"
}
},
"required": [
"answer"
],
"type": "object"
},
"strict": true
} | +| `Type` | [components.ChatFormatJSONSchemaConfigType](../../models/components/chatformatjsonschemaconfigtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatformatpythonconfig.mdx b/docs/models/components/chatformatpythonconfig.mdx index dab4ab7e5..5930db0a9 100644 --- a/docs/models/components/chatformatpythonconfig.mdx +++ b/docs/models/components/chatformatpythonconfig.mdx @@ -9,4 +9,4 @@ Python code response format | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Type` | [components.ChatFormatPythonConfigType](../../models/components/chatformatpythonconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ChatFormatPythonConfigType](../../models/components/chatformatpythonconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatformattextconfig.mdx b/docs/models/components/chatformattextconfig.mdx index 26ddc1ccc..104071e79 100644 --- a/docs/models/components/chatformattextconfig.mdx +++ b/docs/models/components/chatformattextconfig.mdx @@ -9,4 +9,4 @@ Default text response format | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Type` | [components.ChatFormatTextConfigType](../../models/components/chatformattextconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ChatFormatTextConfigType](../../models/components/chatformattextconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatfunctiontoolfunction.mdx b/docs/models/components/chatfunctiontoolfunction.mdx index c622aa598..64b9930d0 100644 --- a/docs/models/components/chatfunctiontoolfunction.mdx +++ b/docs/models/components/chatfunctiontoolfunction.mdx @@ -6,7 +6,7 @@ title: "ChatFunctionToolFunction" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheControl` | [*components.ChatContentCacheControl](../../models/components/chatcontentcachecontrol.mdx) | ➖ | Anthropic-style cache breakpoint for the content part. Interchangeable with the OpenAI-style `prompt_cache_breakpoint` marker: OpenRouter converts between the two based on the provider serving the request. | \{
"ttl": "5m",
"type": "ephemeral"
} | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Function` | [components.ChatFunctionToolFunctionFunction](../../models/components/chatfunctiontoolfunctionfunction.mdx) | ✅ | Function definition for tool calling | \{
"description": "Get the current weather for a location",
"name": "get_weather",
"parameters": \{
"properties": \{
"location": \{
"description": "City name",
"type": "string"
}
},
"required": [
"location"
],
"type": "object"
}
} | -| `Type` | [components.ChatFunctionToolType](../../models/components/chatfunctiontooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.ChatContentCacheControl](../../models/components/chatcontentcachecontrol.mdx) | :heavy_minus_sign: | Anthropic-style cache breakpoint for the content part. Interchangeable with the OpenAI-style `prompt_cache_breakpoint` marker: OpenRouter converts between the two based on the provider serving the request. | \{
"ttl": "5m",
"type": "ephemeral"
} | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Function` | [components.ChatFunctionToolFunctionFunction](../../models/components/chatfunctiontoolfunctionfunction.mdx) | :heavy_check_mark: | Function definition for tool calling | \{
"description": "Get the current weather for a location",
"name": "get_weather",
"parameters": \{
"properties": \{
"location": \{
"description": "City name",
"type": "string"
}
},
"required": [
"location"
],
"type": "object"
}
} | +| `Type` | [components.ChatFunctionToolType](../../models/components/chatfunctiontooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatfunctiontoolfunctionfunction.mdx b/docs/models/components/chatfunctiontoolfunctionfunction.mdx index c9d54f47f..2a4c734fa 100644 --- a/docs/models/components/chatfunctiontoolfunctionfunction.mdx +++ b/docs/models/components/chatfunctiontoolfunctionfunction.mdx @@ -9,8 +9,8 @@ Function definition for tool calling | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Description` | `*string` | ➖ | Function description for the model | Get the current weather for a location | -| `Name` | `string` | ✅ | Function name (a-z, A-Z, 0-9, underscores, dashes, max 64 chars) | get_weather | -| `Parameters` | map[string]`any` | ➖ | Function parameters as JSON Schema object | \{
"properties": \{
"location": \{
"description": "City name",
"type": "string"
}
},
"required": [
"location"
],
"type": "object"
} | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | Enable strict schema adherence | false | \ No newline at end of file +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Description` | `*string` | :heavy_minus_sign: | Function description for the model | Get the current weather for a location | +| `Name` | `string` | :heavy_check_mark: | Function name (a-z, A-Z, 0-9, underscores, dashes, max 64 chars) | get_weather | +| `Parameters` | map[string]`any` | :heavy_minus_sign: | Function parameters as JSON Schema object | \{
"properties": \{
"location": \{
"description": "City name",
"type": "string"
}
},
"required": [
"location"
],
"type": "object"
} | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Enable strict schema adherence | false | \ No newline at end of file diff --git a/docs/models/components/chatjsonschemaconfig.mdx b/docs/models/components/chatjsonschemaconfig.mdx index 01c6a35a0..c6ab0147b 100644 --- a/docs/models/components/chatjsonschemaconfig.mdx +++ b/docs/models/components/chatjsonschemaconfig.mdx @@ -9,7 +9,7 @@ JSON Schema configuration object | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Description` | `*string` | ➖ | Schema description for the model | A mathematical response | -| `Name` | `string` | ✅ | Schema name (a-z, A-Z, 0-9, underscores, dashes, max 64 chars) | math_response | -| `Schema` | map[string]`any` | ➖ | JSON Schema object | \{
"properties": \{
"answer": \{
"type": "number"
}
},
"required": [
"answer"
],
"type": "object"
} | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | Enable strict schema adherence | false | \ No newline at end of file +| `Description` | `*string` | :heavy_minus_sign: | Schema description for the model | A mathematical response | +| `Name` | `string` | :heavy_check_mark: | Schema name (a-z, A-Z, 0-9, underscores, dashes, max 64 chars) | math_response | +| `Schema` | map[string]`any` | :heavy_minus_sign: | JSON Schema object | \{
"properties": \{
"answer": \{
"type": "number"
}
},
"required": [
"answer"
],
"type": "object"
} | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Enable strict schema adherence | false | \ No newline at end of file diff --git a/docs/models/components/chatnamedtoolchoice.mdx b/docs/models/components/chatnamedtoolchoice.mdx index 55ba9b606..d3a4959c4 100644 --- a/docs/models/components/chatnamedtoolchoice.mdx +++ b/docs/models/components/chatnamedtoolchoice.mdx @@ -9,5 +9,5 @@ Named tool choice for specific function | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Function` | [components.ChatNamedToolChoiceFunction](../../models/components/chatnamedtoolchoicefunction.mdx) | ✅ | N/A | -| `Type` | [components.ChatNamedToolChoiceType](../../models/components/chatnamedtoolchoicetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Function` | [components.ChatNamedToolChoiceFunction](../../models/components/chatnamedtoolchoicefunction.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ChatNamedToolChoiceType](../../models/components/chatnamedtoolchoicetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chatnamedtoolchoicefunction.mdx b/docs/models/components/chatnamedtoolchoicefunction.mdx index f9657c9b3..2d9e7a888 100644 --- a/docs/models/components/chatnamedtoolchoicefunction.mdx +++ b/docs/models/components/chatnamedtoolchoicefunction.mdx @@ -6,4 +6,4 @@ title: "ChatNamedToolChoiceFunction" | Field | Type | Required | Description | Example | | --------------------- | --------------------- | --------------------- | --------------------- | --------------------- | -| `Name` | `string` | ✅ | Function name to call | get_weather | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | Function name to call | get_weather | \ No newline at end of file diff --git a/docs/models/components/chatrequest.mdx b/docs/models/components/chatrequest.mdx index 207932bf8..2e835a8b6 100644 --- a/docs/models/components/chatrequest.mdx +++ b/docs/models/components/chatrequest.mdx @@ -9,45 +9,45 @@ Chat completion request parameters | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Debug` | [*components.ChatDebugOptions](../../models/components/chatdebugoptions.mdx) | ➖ | Debug options for inspecting request transformations (streaming only) | \{
"echo_upstream_body": true
} | -| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | ➖ | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | -| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | Frequency penalty (-2.0 to 2.0) | 0 | -| `ImageConfig` | map[string][components.ImageConfig](../../models/components/imageconfig.mdx) | ➖ | Provider-specific image configuration options. Keys and values vary by model/provider. See https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details. | \{
"aspect_ratio": "16:9",
"quality": "high"
} | -| `LogitBias` | optionalnullable.OptionalNullable[map[string]`float64`] | ➖ | Token logit bias adjustments | \{
"50256": -100
} | -| `Logprobs` | optionalnullable.OptionalNullable[`bool`] | ➖ | Return log probabilities | false | -| `MaxCompletionTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Maximum tokens in completion | 100 | -| `MaxTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Maximum tokens (deprecated, use max_completion_tokens). Note: some providers enforce a minimum of 16. | 100 | -| `Messages` | [][components.ChatMessages](../../models/components/chatmessages.mdx) | ✅ | List of messages for the conversation | [
\{
"content": "Hello!",
"role": "user"
}
] | -| `Metadata` | map[string]`string` | ➖ | Key-value pairs for additional object information (max 16 pairs, 64 char keys, 512 char values) | \{
"session_id": "session-456",
"user_id": "user-123"
} | -| `MinP` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum probability threshold relative to the most likely token. Tokens with probability below min_p * (probability of top token) are filtered out. Not all providers support this parameter. | 0.1 | -| `Modalities` | [][components.Modality](../../models/components/modality.mdx) | ➖ | Output modalities for the response. Supported values are "text", "image", and "audio". | [
"text",
"image"
] | -| `Model` | `*string` | ➖ | Model to use for completion | openai/gpt-4 | -| `Models` | []`string` | ➖ | Models to use for completion | [
"openai/gpt-4",
"openai/gpt-4o"
] | -| `ParallelToolCalls` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enable parallel function calling during tool use. When true, the model may generate multiple tool calls in a single response. | true | -| `Plugins` | [][components.ChatRequestPlugin](../../models/components/chatrequestplugin.mdx) | ➖ | Plugins you want to enable for this request, including their settings. | | -| `Prediction` | optionalnullable.OptionalNullable[[components.Prediction](../../models/components/prediction.mdx)] | ➖ | Static predicted output content. Supported models can use this to reduce latency when much of the response is known in advance. | \{
"content": "Expected response",
"type": "content"
} | -| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | Presence penalty (-2.0 to 2.0) | 0 | -| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | ➖ | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | -| `Reasoning` | [*components.ChatRequestReasoning](../../models/components/chatrequestreasoning.mdx) | ➖ | Configuration options for reasoning models | \{
"effort": "medium",
"summary": "concise"
} | -| `ReasoningEffort` | optionalnullable.OptionalNullable[[components.ChatRequestReasoningEffort](../../models/components/chatrequestreasoningeffort.mdx)] | ➖ | Shorthand for setting reasoning effort. Equivalent to setting reasoning.effort. Cannot be used simultaneously with reasoning.effort if they differ. | medium | -| `RepetitionPenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | Penalizes tokens based on how much they have already appeared in the text. A value of 1.0 means no penalty. Values above 1.0 penalize repeated tokens more strongly. Not all providers support this parameter. | 1 | -| `ResponseFormat` | [*components.ResponseFormat](../../models/components/responseformat.mdx) | ➖ | Response format configuration | \{
"type": "json_object"
} | -| `Seed` | optionalnullable.OptionalNullable[`int64`] | ➖ | Random seed for deterministic outputs | 42 | -| `ServiceTier` | optionalnullable.OptionalNullable[[components.ChatRequestServiceTier](../../models/components/chatrequestservicetier.mdx)] | ➖ | The service tier to use for processing this request. `fast` is accepted as an alias for `priority`. `ultrafast` prefers ultrafast endpoints and falls back to `priority`, then default endpoints. | auto | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | -| `Stop` | optionalnullable.OptionalNullable[[components.ChatRequestStop](../../models/components/chatrequeststop.mdx)] | ➖ | Stop sequences (up to 4) | [
"\n"
] | -| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | ➖ | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | -| `Stream` | `*bool` | ➖ | Enable streaming response | false | -| `StreamOptions` | optionalnullable.OptionalNullable[[components.ChatStreamOptions](../../models/components/chatstreamoptions.mdx)] | ➖ | Streaming configuration options | \{
"include_usage": true
} | -| `Temperature` | optionalnullable.OptionalNullable[`float64`] | ➖ | Sampling temperature (0-2) | 0.7 | -| `ToolChoice` | [*components.ChatToolChoice](../../models/components/chattoolchoice.mdx) | ➖ | Tool choice configuration | auto | -| `Tools` | [][components.ChatFunctionTool](../../models/components/chatfunctiontool.mdx) | ➖ | Available tools for function calling | [
\{
"function": \{
"description": "Get weather",
"name": "get_weather"
},
"type": "function"
}
] | -| `TopA` | optionalnullable.OptionalNullable[`float64`] | ➖ | Consider only tokens with "sufficiently high" probabilities based on the probability of the most likely token. Not all providers support this parameter. | 0 | -| `TopK` | optionalnullable.OptionalNullable[`int64`] | ➖ | Limits the model to choose from the top K most likely tokens at each step. A value of 1 means the model will always pick the most likely next token. Not all providers support this parameter. | 40 | -| `TopLogprobs` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of top log probabilities to return (0-20) | 5 | -| `TopP` | optionalnullable.OptionalNullable[`float64`] | ➖ | Nucleus sampling parameter (0-1) | 1 | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | Per-end-user identifier for abuse isolation. Use a stable ID, hash, or pseudonym. When a provider requires a user identity, OpenRouter folds it into the hashed identity sent upstream and never forwards it raw. If omitted, requests use an account-level identity, so provider policy blocks can affect the whole account. | user-123 | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Debug` | [*components.ChatDebugOptions](../../models/components/chatdebugoptions.mdx) | :heavy_minus_sign: | Debug options for inspecting request transformations (streaming only) | \{
"echo_upstream_body": true
} | +| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | :heavy_minus_sign: | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | +| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Frequency penalty (-2.0 to 2.0) | 0 | +| `ImageConfig` | map[string][components.ImageConfig](../../models/components/imageconfig.mdx) | :heavy_minus_sign: | Provider-specific image configuration options. Keys and values vary by model/provider. See https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details. | \{
"aspect_ratio": "16:9",
"quality": "high"
} | +| `LogitBias` | optionalnullable.OptionalNullable[map[string]`float64`] | :heavy_minus_sign: | Token logit bias adjustments | \{
"50256": -100
} | +| `Logprobs` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Return log probabilities | false | +| `MaxCompletionTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Maximum tokens in completion | 100 | +| `MaxTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Maximum tokens (deprecated, use max_completion_tokens). Note: some providers enforce a minimum of 16. | 100 | +| `Messages` | [][components.ChatMessages](../../models/components/chatmessages.mdx) | :heavy_check_mark: | List of messages for the conversation | [
\{
"content": "Hello!",
"role": "user"
}
] | +| `Metadata` | map[string]`string` | :heavy_minus_sign: | Key-value pairs for additional object information (max 16 pairs, 64 char keys, 512 char values) | \{
"session_id": "session-456",
"user_id": "user-123"
} | +| `MinP` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum probability threshold relative to the most likely token. Tokens with probability below min_p * (probability of top token) are filtered out. Not all providers support this parameter. | 0.1 | +| `Modalities` | [][components.Modality](../../models/components/modality.mdx) | :heavy_minus_sign: | Output modalities for the response. Supported values are "text", "image", and "audio". | [
"text",
"image"
] | +| `Model` | `*string` | :heavy_minus_sign: | Model to use for completion | openai/gpt-4 | +| `Models` | []`string` | :heavy_minus_sign: | Models to use for completion | [
"openai/gpt-4",
"openai/gpt-4o"
] | +| `ParallelToolCalls` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enable parallel function calling during tool use. When true, the model may generate multiple tool calls in a single response. | true | +| `Plugins` | [][components.ChatRequestPlugin](../../models/components/chatrequestplugin.mdx) | :heavy_minus_sign: | Plugins you want to enable for this request, including their settings. | | +| `Prediction` | optionalnullable.OptionalNullable[[components.Prediction](../../models/components/prediction.mdx)] | :heavy_minus_sign: | Static predicted output content. Supported models can use this to reduce latency when much of the response is known in advance. | \{
"content": "Expected response",
"type": "content"
} | +| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Presence penalty (-2.0 to 2.0) | 0 | +| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | :heavy_minus_sign: | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | +| `Reasoning` | [*components.ChatRequestReasoning](../../models/components/chatrequestreasoning.mdx) | :heavy_minus_sign: | Configuration options for reasoning models | \{
"effort": "medium",
"summary": "concise"
} | +| `ReasoningEffort` | optionalnullable.OptionalNullable[[components.ChatRequestReasoningEffort](../../models/components/chatrequestreasoningeffort.mdx)] | :heavy_minus_sign: | Shorthand for setting reasoning effort. Equivalent to setting reasoning.effort. Cannot be used simultaneously with reasoning.effort if they differ. | medium | +| `RepetitionPenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Penalizes tokens based on how much they have already appeared in the text. A value of 1.0 means no penalty. Values above 1.0 penalize repeated tokens more strongly. Not all providers support this parameter. | 1 | +| `ResponseFormat` | [*components.ResponseFormat](../../models/components/responseformat.mdx) | :heavy_minus_sign: | Response format configuration | \{
"type": "json_object"
} | +| `Seed` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Random seed for deterministic outputs | 42 | +| `ServiceTier` | optionalnullable.OptionalNullable[[components.ChatRequestServiceTier](../../models/components/chatrequestservicetier.mdx)] | :heavy_minus_sign: | The service tier to use for processing this request. `fast` is accepted as an alias for `priority`. `ultrafast` prefers ultrafast endpoints and falls back to `priority`, then default endpoints. | auto | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | +| `Stop` | optionalnullable.OptionalNullable[[components.ChatRequestStop](../../models/components/chatrequeststop.mdx)] | :heavy_minus_sign: | Stop sequences (up to 4) | [
"\n"
] | +| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | :heavy_minus_sign: | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | +| `Stream` | `*bool` | :heavy_minus_sign: | Enable streaming response | false | +| `StreamOptions` | optionalnullable.OptionalNullable[[components.ChatStreamOptions](../../models/components/chatstreamoptions.mdx)] | :heavy_minus_sign: | Streaming configuration options | \{
"include_usage": true
} | +| `Temperature` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Sampling temperature (0-2) | 0.7 | +| `ToolChoice` | [*components.ChatToolChoice](../../models/components/chattoolchoice.mdx) | :heavy_minus_sign: | Tool choice configuration | auto | +| `Tools` | [][components.ChatFunctionTool](../../models/components/chatfunctiontool.mdx) | :heavy_minus_sign: | Available tools for function calling | [
\{
"function": \{
"description": "Get weather",
"name": "get_weather"
},
"type": "function"
}
] | +| `TopA` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Consider only tokens with "sufficiently high" probabilities based on the probability of the most likely token. Not all providers support this parameter. | 0 | +| `TopK` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Limits the model to choose from the top K most likely tokens at each step. A value of 1 means the model will always pick the most likely next token. Not all providers support this parameter. | 40 | +| `TopLogprobs` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of top log probabilities to return (0-20) | 5 | +| `TopP` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Nucleus sampling parameter (0-1) | 1 | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | Per-end-user identifier for abuse isolation. Use a stable ID, hash, or pseudonym. When a provider requires a user identity, OpenRouter folds it into the hashed identity sent upstream and never forwards it raw. If omitted, requests use an account-level identity, so provider policy blocks can affect the whole account. | user-123 | \ No newline at end of file diff --git a/docs/models/components/chatrequestreasoning.mdx b/docs/models/components/chatrequestreasoning.mdx index 58cde929a..bd0c82b7a 100644 --- a/docs/models/components/chatrequestreasoning.mdx +++ b/docs/models/components/chatrequestreasoning.mdx @@ -9,5 +9,5 @@ Configuration options for reasoning models | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | -| `Effort` | optionalnullable.OptionalNullable[[components.ChatRequestEffort](../../models/components/chatrequesteffort.mdx)] | ➖ | Constrains effort on reasoning for reasoning models | medium | -| `Summary` | optionalnullable.OptionalNullable[[components.ChatReasoningSummaryVerbosityEnum](../../models/components/chatreasoningsummaryverbosityenum.mdx)] | ➖ | N/A | concise | \ No newline at end of file +| `Effort` | optionalnullable.OptionalNullable[[components.ChatRequestEffort](../../models/components/chatrequesteffort.mdx)] | :heavy_minus_sign: | Constrains effort on reasoning for reasoning models | medium | +| `Summary` | optionalnullable.OptionalNullable[[components.ChatReasoningSummaryVerbosityEnum](../../models/components/chatreasoningsummaryverbosityenum.mdx)] | :heavy_minus_sign: | N/A | concise | \ No newline at end of file diff --git a/docs/models/components/chatresult.mdx b/docs/models/components/chatresult.mdx index 1783ec432..f8387aa1c 100644 --- a/docs/models/components/chatresult.mdx +++ b/docs/models/components/chatresult.mdx @@ -9,14 +9,14 @@ Chat completion response | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | ➖ | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | -| `Choices` | [][components.ChatChoice](../../models/components/chatchoice.mdx) | ✅ | List of completion choices | | -| `Created` | `int64` | ✅ | Unix timestamp of creation | 1677652288 | -| `ID` | `string` | ✅ | Unique completion identifier | chatcmpl-123 | -| `Model` | `string` | ✅ | Model used for completion | openai/gpt-4 | -| `Object` | [components.ChatResultObject](../../models/components/chatresultobject.mdx) | ✅ | N/A | | -| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | ➖ | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | -| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | ➖ | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | default | -| `SystemFingerprint` | `*string` | ✅ | System fingerprint | fp_44709d6fcb | -| `Usage` | [*components.ChatUsage](../../models/components/chatusage.mdx) | ➖ | Token usage statistics | \{
"completion_tokens": 15,
"completion_tokens_details": \{
"reasoning_tokens": 5
},
"cost": 0.0012,
"cost_details": \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
},
"is_byok": false,
"prompt_tokens": 10,
"prompt_tokens_details": \{
"cached_tokens": 2
},
"server_tool_use_details": \{
"tool_calls_executed": 2,
"tool_calls_requested": 2
},
"total_tokens": 25
} | \ No newline at end of file +| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | :heavy_minus_sign: | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | +| `Choices` | [][components.ChatChoice](../../models/components/chatchoice.mdx) | :heavy_check_mark: | List of completion choices | | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp of creation | 1677652288 | +| `ID` | `string` | :heavy_check_mark: | Unique completion identifier | chatcmpl-123 | +| `Model` | `string` | :heavy_check_mark: | Model used for completion | openai/gpt-4 | +| `Object` | [components.ChatResultObject](../../models/components/chatresultobject.mdx) | :heavy_check_mark: | N/A | | +| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | :heavy_minus_sign: | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | +| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | :heavy_minus_sign: | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | default | +| `SystemFingerprint` | `*string` | :heavy_check_mark: | System fingerprint | fp_44709d6fcb | +| `Usage` | [*components.ChatUsage](../../models/components/chatusage.mdx) | :heavy_minus_sign: | Token usage statistics | \{
"completion_tokens": 15,
"completion_tokens_details": \{
"reasoning_tokens": 5
},
"cost": 0.0012,
"cost_details": \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
},
"is_byok": false,
"prompt_tokens": 10,
"prompt_tokens_details": \{
"cached_tokens": 2
},
"server_tool_use_details": \{
"tool_calls_executed": 2,
"tool_calls_requested": 2
},
"total_tokens": 25
} | \ No newline at end of file diff --git a/docs/models/components/chatsearchmodelsservertool.mdx b/docs/models/components/chatsearchmodelsservertool.mdx index 38b554934..55ce5ec93 100644 --- a/docs/models/components/chatsearchmodelsservertool.mdx +++ b/docs/models/components/chatsearchmodelsservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: searches and filters AI models available on Ope | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | ➖ | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | -| `Type` | [components.ChatSearchModelsServerToolType](../../models/components/chatsearchmodelsservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | +| `Type` | [components.ChatSearchModelsServerToolType](../../models/components/chatsearchmodelsservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatservertoolchoice.mdx b/docs/models/components/chatservertoolchoice.mdx index 977d0ea33..b75d04c8b 100644 --- a/docs/models/components/chatservertoolchoice.mdx +++ b/docs/models/components/chatservertoolchoice.mdx @@ -9,4 +9,4 @@ OpenRouter extension: force a specific server tool by naming it directly in `too | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Type` | `string` | ✅ | OpenRouter server-tool type to force (e.g. `openrouter:web_search`, `web_search`, `web_search_preview`). | openrouter:web_search | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | OpenRouter server-tool type to force (e.g. `openrouter:web_search`, `web_search`, `web_search_preview`). | openrouter:web_search | \ No newline at end of file diff --git a/docs/models/components/chatstreamchoice.mdx b/docs/models/components/chatstreamchoice.mdx index 6b53ace15..ace80d155 100644 --- a/docs/models/components/chatstreamchoice.mdx +++ b/docs/models/components/chatstreamchoice.mdx @@ -9,7 +9,7 @@ Streaming completion choice chunk | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Delta` | [components.ChatStreamDelta](../../models/components/chatstreamdelta.mdx) | ✅ | Delta changes in streaming response | \{
"content": "Hello",
"role": "assistant"
} | -| `FinishReason` | [*components.ChatFinishReasonEnum](../../models/components/chatfinishreasonenum.mdx) | ✅ | N/A | stop | -| `Index` | `int64` | ✅ | Choice index | 0 | -| `Logprobs` | optionalnullable.OptionalNullable[[components.ChatTokenLogprobs](../../models/components/chattokenlogprobs.mdx)] | ➖ | Log probabilities for the completion | \{
"content": [
\{
"bytes": null,
"logprob": -0.612345,
"token": " Hello",
"top_logprobs": []
}
],
"refusal": null
} | \ No newline at end of file +| `Delta` | [components.ChatStreamDelta](../../models/components/chatstreamdelta.mdx) | :heavy_check_mark: | Delta changes in streaming response | \{
"content": "Hello",
"role": "assistant"
} | +| `FinishReason` | [*components.ChatFinishReasonEnum](../../models/components/chatfinishreasonenum.mdx) | :heavy_check_mark: | N/A | stop | +| `Index` | `int64` | :heavy_check_mark: | Choice index | 0 | +| `Logprobs` | optionalnullable.OptionalNullable[[components.ChatTokenLogprobs](../../models/components/chattokenlogprobs.mdx)] | :heavy_minus_sign: | Log probabilities for the completion | \{
"content": [
\{
"bytes": null,
"logprob": -0.612345,
"token": " Hello",
"top_logprobs": []
}
],
"refusal": null
} | \ No newline at end of file diff --git a/docs/models/components/chatstreamchunk.mdx b/docs/models/components/chatstreamchunk.mdx index bee495593..2b8496226 100644 --- a/docs/models/components/chatstreamchunk.mdx +++ b/docs/models/components/chatstreamchunk.mdx @@ -9,15 +9,15 @@ Streaming chat completion chunk | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | ➖ | N/A | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | -| `Choices` | [][components.ChatStreamChoice](../../models/components/chatstreamchoice.mdx) | ✅ | List of streaming chunk choices | | -| `Created` | `int64` | ✅ | Unix timestamp of creation | 1677652288 | -| `Error` | [*components.ChatStreamChunkError](../../models/components/chatstreamchunkerror.mdx) | ➖ | Error information | \{
"code": 429,
"message": "Rate limit exceeded",
"metadata": \{
"error_type": "rate_limit_exceeded"
}
} | -| `ID` | `string` | ✅ | Unique chunk identifier | chatcmpl-123 | -| `Model` | `string` | ✅ | Model used for completion | openai/gpt-4 | -| `Object` | [components.ChatStreamChunkObject](../../models/components/chatstreamchunkobject.mdx) | ✅ | N/A | | -| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | ➖ | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | -| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | ➖ | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | default | -| `SystemFingerprint` | `*string` | ➖ | System fingerprint | fp_44709d6fcb | -| `Usage` | [*components.ChatUsage](../../models/components/chatusage.mdx) | ➖ | Token usage statistics | \{
"completion_tokens": 15,
"completion_tokens_details": \{
"reasoning_tokens": 5
},
"cost": 0.0012,
"cost_details": \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
},
"is_byok": false,
"prompt_tokens": 10,
"prompt_tokens_details": \{
"cached_tokens": 2
},
"server_tool_use_details": \{
"tool_calls_executed": 2,
"tool_calls_requested": 2
},
"total_tokens": 25
} | \ No newline at end of file +| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | :heavy_minus_sign: | N/A | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | +| `Choices` | [][components.ChatStreamChoice](../../models/components/chatstreamchoice.mdx) | :heavy_check_mark: | List of streaming chunk choices | | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp of creation | 1677652288 | +| `Error` | [*components.ChatStreamChunkError](../../models/components/chatstreamchunkerror.mdx) | :heavy_minus_sign: | Error information | \{
"code": 429,
"message": "Rate limit exceeded",
"metadata": \{
"error_type": "rate_limit_exceeded"
}
} | +| `ID` | `string` | :heavy_check_mark: | Unique chunk identifier | chatcmpl-123 | +| `Model` | `string` | :heavy_check_mark: | Model used for completion | openai/gpt-4 | +| `Object` | [components.ChatStreamChunkObject](../../models/components/chatstreamchunkobject.mdx) | :heavy_check_mark: | N/A | | +| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | :heavy_minus_sign: | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | +| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | :heavy_minus_sign: | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | default | +| `SystemFingerprint` | `*string` | :heavy_minus_sign: | System fingerprint | fp_44709d6fcb | +| `Usage` | [*components.ChatUsage](../../models/components/chatusage.mdx) | :heavy_minus_sign: | Token usage statistics | \{
"completion_tokens": 15,
"completion_tokens_details": \{
"reasoning_tokens": 5
},
"cost": 0.0012,
"cost_details": \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
},
"is_byok": false,
"prompt_tokens": 10,
"prompt_tokens_details": \{
"cached_tokens": 2
},
"server_tool_use_details": \{
"tool_calls_executed": 2,
"tool_calls_requested": 2
},
"total_tokens": 25
} | \ No newline at end of file diff --git a/docs/models/components/chatstreamchunkerror.mdx b/docs/models/components/chatstreamchunkerror.mdx index a6319b92c..b5d7abc14 100644 --- a/docs/models/components/chatstreamchunkerror.mdx +++ b/docs/models/components/chatstreamchunkerror.mdx @@ -9,6 +9,6 @@ Error information | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Code` | `int` | ✅ | Error code | 429 | -| `Message` | `string` | ✅ | Error message | Rate limit exceeded | -| `Metadata` | [*components.ChatStreamChunkMetadata](../../models/components/chatstreamchunkmetadata.mdx) | ➖ | Structured error metadata | | \ No newline at end of file +| `Code` | `int` | :heavy_check_mark: | Error code | 429 | +| `Message` | `string` | :heavy_check_mark: | Error message | Rate limit exceeded | +| `Metadata` | [*components.ChatStreamChunkMetadata](../../models/components/chatstreamchunkmetadata.mdx) | :heavy_minus_sign: | Structured error metadata | | \ No newline at end of file diff --git a/docs/models/components/chatstreamchunkmetadata.mdx b/docs/models/components/chatstreamchunkmetadata.mdx index b67840432..249b702b3 100644 --- a/docs/models/components/chatstreamchunkmetadata.mdx +++ b/docs/models/components/chatstreamchunkmetadata.mdx @@ -9,5 +9,5 @@ Structured error metadata | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `ErrorType` | [components.APIErrorType](../../models/components/apierrortype.mdx) | ✅ | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | -| `ProviderCode` | `*string` | ➖ | Upstream provider-specific error code, when available | | \ No newline at end of file +| `ErrorType` | [components.APIErrorType](../../models/components/apierrortype.mdx) | :heavy_check_mark: | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | +| `ProviderCode` | `*string` | :heavy_minus_sign: | Upstream provider-specific error code, when available | | \ No newline at end of file diff --git a/docs/models/components/chatstreamdelta.mdx b/docs/models/components/chatstreamdelta.mdx index 722d01483..e09e1eec9 100644 --- a/docs/models/components/chatstreamdelta.mdx +++ b/docs/models/components/chatstreamdelta.mdx @@ -9,10 +9,10 @@ Delta changes in streaming response | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Audio` | [*components.ChatAudioOutput](../../models/components/chataudiooutput.mdx) | ➖ | N/A | \{
"data": "UklGRnoGAABXQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YQoGAACBhYqFbF1f",
"expires_at": 1677652400,
"id": "audio_abc123",
"transcript": "Hello! How can I help you today?"
} | -| `Content` | optionalnullable.OptionalNullable[`string`] | ➖ | Message content delta | Hello | -| `Reasoning` | optionalnullable.OptionalNullable[`string`] | ➖ | Reasoning content delta | I need to | -| `ReasoningDetails` | [][components.ReasoningDetailUnion](../../models/components/reasoningdetailunion.mdx) | ➖ | Reasoning details for extended thinking models | [
\{
"text": "Let me think about this...",
"type": "reasoning.text"
}
] | -| `Refusal` | optionalnullable.OptionalNullable[`string`] | ➖ | Refusal message delta | null | -| `Role` | [*components.ChatStreamDeltaRole](../../models/components/chatstreamdeltarole.mdx) | ➖ | The role of the message author | assistant | -| `ToolCalls` | [][components.ChatStreamToolCall](../../models/components/chatstreamtoolcall.mdx) | ➖ | Tool calls delta | | \ No newline at end of file +| `Audio` | [*components.ChatAudioOutput](../../models/components/chataudiooutput.mdx) | :heavy_minus_sign: | N/A | \{
"data": "UklGRnoGAABXQVZFZm10IBAAAAABAAEAQB8AAEAfAAABAAgAZGF0YQoGAACBhYqFbF1f",
"expires_at": 1677652400,
"id": "audio_abc123",
"transcript": "Hello! How can I help you today?"
} | +| `Content` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Message content delta | Hello | +| `Reasoning` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Reasoning content delta | I need to | +| `ReasoningDetails` | [][components.ReasoningDetailUnion](../../models/components/reasoningdetailunion.mdx) | :heavy_minus_sign: | Reasoning details for extended thinking models | [
\{
"text": "Let me think about this...",
"type": "reasoning.text"
}
] | +| `Refusal` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Refusal message delta | null | +| `Role` | [*components.ChatStreamDeltaRole](../../models/components/chatstreamdeltarole.mdx) | :heavy_minus_sign: | The role of the message author | assistant | +| `ToolCalls` | [][components.ChatStreamToolCall](../../models/components/chatstreamtoolcall.mdx) | :heavy_minus_sign: | Tool calls delta | | \ No newline at end of file diff --git a/docs/models/components/chatstreamingresponse.mdx b/docs/models/components/chatstreamingresponse.mdx index f65ce6974..fffbbb270 100644 --- a/docs/models/components/chatstreamingresponse.mdx +++ b/docs/models/components/chatstreamingresponse.mdx @@ -6,4 +6,4 @@ title: "ChatStreamingResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ChatStreamChunk](../../models/components/chatstreamchunk.mdx) | ✅ | Streaming chat completion chunk | \{
"choices": [
\{
"delta": \{
"content": "Hello",
"role": "assistant"
},
"finish_reason": null,
"index": 0
}
],
"created": 1677652288,
"id": "chatcmpl-123",
"model": "openai/gpt-4",
"object": "chat.completion.chunk"
} | \ No newline at end of file +| `Data` | [components.ChatStreamChunk](../../models/components/chatstreamchunk.mdx) | :heavy_check_mark: | Streaming chat completion chunk | \{
"choices": [
\{
"delta": \{
"content": "Hello",
"role": "assistant"
},
"finish_reason": null,
"index": 0
}
],
"created": 1677652288,
"id": "chatcmpl-123",
"model": "openai/gpt-4",
"object": "chat.completion.chunk"
} | \ No newline at end of file diff --git a/docs/models/components/chatstreamoptions.mdx b/docs/models/components/chatstreamoptions.mdx index ebce1f51e..186c02d0c 100644 --- a/docs/models/components/chatstreamoptions.mdx +++ b/docs/models/components/chatstreamoptions.mdx @@ -9,4 +9,4 @@ Streaming configuration options | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| ~~`IncludeUsage`~~ | `*bool` | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: This field has no effect. Full usage details are always included. | true | \ No newline at end of file +| ~~`IncludeUsage`~~ | `*bool` | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: This field has no effect. Full usage details are always included. | true | \ No newline at end of file diff --git a/docs/models/components/chatstreamtoolcall.mdx b/docs/models/components/chatstreamtoolcall.mdx index 25a05887d..6f5e9e459 100644 --- a/docs/models/components/chatstreamtoolcall.mdx +++ b/docs/models/components/chatstreamtoolcall.mdx @@ -9,7 +9,7 @@ Tool call delta for streaming responses | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `Function` | [*components.ChatStreamToolCallFunction](../../models/components/chatstreamtoolcallfunction.mdx) | ➖ | Function call details | | -| `ID` | `*string` | ➖ | Tool call identifier | call_abc123 | -| `Index` | `int64` | ✅ | Tool call index in the array | 0 | -| `Type` | [*components.ChatStreamToolCallType](../../models/components/chatstreamtoolcalltype.mdx) | ➖ | Tool call type | function | \ No newline at end of file +| `Function` | [*components.ChatStreamToolCallFunction](../../models/components/chatstreamtoolcallfunction.mdx) | :heavy_minus_sign: | Function call details | | +| `ID` | `*string` | :heavy_minus_sign: | Tool call identifier | call_abc123 | +| `Index` | `int64` | :heavy_check_mark: | Tool call index in the array | 0 | +| `Type` | [*components.ChatStreamToolCallType](../../models/components/chatstreamtoolcalltype.mdx) | :heavy_minus_sign: | Tool call type | function | \ No newline at end of file diff --git a/docs/models/components/chatstreamtoolcallfunction.mdx b/docs/models/components/chatstreamtoolcallfunction.mdx index eacf9a285..c1d33edba 100644 --- a/docs/models/components/chatstreamtoolcallfunction.mdx +++ b/docs/models/components/chatstreamtoolcallfunction.mdx @@ -9,5 +9,5 @@ Function call details | Field | Type | Required | Description | Example | | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | -| `Arguments` | `*string` | ➖ | Function arguments as JSON string | \{"location": "..."} | -| `Name` | `*string` | ➖ | Function name | get_weather | \ No newline at end of file +| `Arguments` | `*string` | :heavy_minus_sign: | Function arguments as JSON string | \{"location": "..."} | +| `Name` | `*string` | :heavy_minus_sign: | Function name | get_weather | \ No newline at end of file diff --git a/docs/models/components/chatsystemmessage.mdx b/docs/models/components/chatsystemmessage.mdx index fc560d3a1..376954a3b 100644 --- a/docs/models/components/chatsystemmessage.mdx +++ b/docs/models/components/chatsystemmessage.mdx @@ -9,7 +9,7 @@ System message for setting behavior | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ConfigurationUpdate` | optionalnullable.OptionalNullable[[components.ChatSystemMessageConfigurationUpdate](../../models/components/chatsystemmessageconfigurationupdate.mdx)] | ➖ | OpenRouter extension. Changes reasoning effort from this point in the conversation onward without invalidating the prompt cache for the preceding turns. Place it on a content-less system message (`content: ""`) directly before the user message it should apply to, and keep it at that position in later requests. Equivalent to the OpenAI Responses `configuration_update` input item and the Anthropic Messages per-message `output_config.effort`. | \{
"reasoning": \{
"effort": "low"
}
} | -| `Content` | [components.ChatSystemMessageContent](../../models/components/chatsystemmessagecontent.mdx) | ✅ | System message content | You are a helpful assistant. | -| `Name` | `*string` | ➖ | Optional name for the system message | Assistant Config | -| `Role` | [components.ChatSystemMessageRole](../../models/components/chatsystemmessagerole.mdx) | ✅ | N/A | | \ No newline at end of file +| `ConfigurationUpdate` | optionalnullable.OptionalNullable[[components.ChatSystemMessageConfigurationUpdate](../../models/components/chatsystemmessageconfigurationupdate.mdx)] | :heavy_minus_sign: | OpenRouter extension. Changes reasoning effort from this point in the conversation onward without invalidating the prompt cache for the preceding turns. Place it on a content-less system message (`content: ""`) directly before the user message it should apply to, and keep it at that position in later requests. Equivalent to the OpenAI Responses `configuration_update` input item and the Anthropic Messages per-message `output_config.effort`. | \{
"reasoning": \{
"effort": "low"
}
} | +| `Content` | [components.ChatSystemMessageContent](../../models/components/chatsystemmessagecontent.mdx) | :heavy_check_mark: | System message content | You are a helpful assistant. | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for the system message | Assistant Config | +| `Role` | [components.ChatSystemMessageRole](../../models/components/chatsystemmessagerole.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatsystemmessageconfigurationupdate.mdx b/docs/models/components/chatsystemmessageconfigurationupdate.mdx index b9d3c69c1..32d6713ff 100644 --- a/docs/models/components/chatsystemmessageconfigurationupdate.mdx +++ b/docs/models/components/chatsystemmessageconfigurationupdate.mdx @@ -9,4 +9,4 @@ OpenRouter extension. Changes reasoning effort from this point in the conversati | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | ✅ | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | \ No newline at end of file +| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | :heavy_check_mark: | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | \ No newline at end of file diff --git a/docs/models/components/chattokenlogprob.mdx b/docs/models/components/chattokenlogprob.mdx index 247da450e..b1543a482 100644 --- a/docs/models/components/chattokenlogprob.mdx +++ b/docs/models/components/chattokenlogprob.mdx @@ -9,7 +9,7 @@ Token log probability information | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Bytes` | []`int64` | ✅ | UTF-8 bytes of the token | -| `Logprob` | `float64` | ✅ | Log probability of the token | -| `Token` | `string` | ✅ | The token | -| `TopLogprobs` | [][components.ChatTokenLogprobTopLogprob](../../models/components/chattokenlogprobtoplogprob.mdx) | ✅ | Top alternative tokens with probabilities | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | UTF-8 bytes of the token | +| `Logprob` | `float64` | :heavy_check_mark: | Log probability of the token | +| `Token` | `string` | :heavy_check_mark: | The token | +| `TopLogprobs` | [][components.ChatTokenLogprobTopLogprob](../../models/components/chattokenlogprobtoplogprob.mdx) | :heavy_check_mark: | Top alternative tokens with probabilities | \ No newline at end of file diff --git a/docs/models/components/chattokenlogprobs.mdx b/docs/models/components/chattokenlogprobs.mdx index 8b95880dd..067f0fcdf 100644 --- a/docs/models/components/chattokenlogprobs.mdx +++ b/docs/models/components/chattokenlogprobs.mdx @@ -9,5 +9,5 @@ Log probabilities for the completion | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.ChatTokenLogprob](../../models/components/chattokenlogprob.mdx) | ✅ | Log probabilities for content tokens | -| `Refusal` | optionalnullable.OptionalNullable[[][components.ChatTokenLogprob](../../models/components/chattokenlogprob.mdx)] | ➖ | Log probabilities for refusal tokens | \ No newline at end of file +| `Content` | [][components.ChatTokenLogprob](../../models/components/chattokenlogprob.mdx) | :heavy_check_mark: | Log probabilities for content tokens | +| `Refusal` | optionalnullable.OptionalNullable[[][components.ChatTokenLogprob](../../models/components/chattokenlogprob.mdx)] | :heavy_minus_sign: | Log probabilities for refusal tokens | \ No newline at end of file diff --git a/docs/models/components/chattokenlogprobtoplogprob.mdx b/docs/models/components/chattokenlogprobtoplogprob.mdx index 79e3e4198..a7c9c4b81 100644 --- a/docs/models/components/chattokenlogprobtoplogprob.mdx +++ b/docs/models/components/chattokenlogprobtoplogprob.mdx @@ -6,6 +6,6 @@ title: "ChatTokenLogprobTopLogprob" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chattoolcall.mdx b/docs/models/components/chattoolcall.mdx index 607124b9f..61d059663 100644 --- a/docs/models/components/chattoolcall.mdx +++ b/docs/models/components/chattoolcall.mdx @@ -9,6 +9,6 @@ Tool call made by the assistant | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Function` | [components.ChatToolCallFunction](../../models/components/chattoolcallfunction.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | Tool call identifier | -| `Type` | [components.ChatToolCallType](../../models/components/chattoolcalltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Function` | [components.ChatToolCallFunction](../../models/components/chattoolcallfunction.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | Tool call identifier | +| `Type` | [components.ChatToolCallType](../../models/components/chattoolcalltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/chattoolcallfunction.mdx b/docs/models/components/chattoolcallfunction.mdx index 2314523ed..908931f3b 100644 --- a/docs/models/components/chattoolcallfunction.mdx +++ b/docs/models/components/chattoolcallfunction.mdx @@ -6,5 +6,5 @@ title: "ChatToolCallFunction" | Field | Type | Required | Description | | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | -| `Arguments` | `string` | ✅ | Function arguments as JSON string | -| `Name` | `string` | ✅ | Function name to call | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | Function arguments as JSON string | +| `Name` | `string` | :heavy_check_mark: | Function name to call | \ No newline at end of file diff --git a/docs/models/components/chattoolmessage.mdx b/docs/models/components/chattoolmessage.mdx index 8375711db..894285e3b 100644 --- a/docs/models/components/chattoolmessage.mdx +++ b/docs/models/components/chattoolmessage.mdx @@ -9,6 +9,6 @@ Tool response message | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Content` | [components.ChatToolMessageContent](../../models/components/chattoolmessagecontent.mdx) | ✅ | Tool response content | The weather in San Francisco is 72°F and sunny. | -| `Role` | [components.ChatToolMessageRole](../../models/components/chattoolmessagerole.mdx) | ✅ | N/A | | -| `ToolCallID` | `string` | ✅ | ID of the assistant message tool call this message responds to | call_abc123 | \ No newline at end of file +| `Content` | [components.ChatToolMessageContent](../../models/components/chattoolmessagecontent.mdx) | :heavy_check_mark: | Tool response content | The weather in San Francisco is 72°F and sunny. | +| `Role` | [components.ChatToolMessageRole](../../models/components/chattoolmessagerole.mdx) | :heavy_check_mark: | N/A | | +| `ToolCallID` | `string` | :heavy_check_mark: | ID of the assistant message tool call this message responds to | call_abc123 | \ No newline at end of file diff --git a/docs/models/components/chatusage.mdx b/docs/models/components/chatusage.mdx index 6331c2b91..691f7b23d 100644 --- a/docs/models/components/chatusage.mdx +++ b/docs/models/components/chatusage.mdx @@ -9,12 +9,12 @@ Token usage statistics | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `CompletionTokens` | `int64` | ✅ | Number of tokens in the completion | | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.ChatUsageCompletionTokensDetails](../../models/components/chatusagecompletiontokensdetails.mdx)] | ➖ | Detailed completion token usage | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `PromptTokens` | `int64` | ✅ | Number of tokens in the prompt | | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.ChatUsagePromptTokensDetails](../../models/components/chatusageprompttokensdetails.mdx)] | ➖ | Detailed prompt token usage | | -| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.ServerToolUseDetails](../../models/components/servertoolusedetails.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | \{
"tool_calls_executed": 2,
"tool_calls_requested": 2,
"web_search_requests": 2
} | -| `TotalTokens` | `int64` | ✅ | Total number of tokens | | \ No newline at end of file +| `CompletionTokens` | `int64` | :heavy_check_mark: | Number of tokens in the completion | | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.ChatUsageCompletionTokensDetails](../../models/components/chatusagecompletiontokensdetails.mdx)] | :heavy_minus_sign: | Detailed completion token usage | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Number of tokens in the prompt | | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.ChatUsagePromptTokensDetails](../../models/components/chatusageprompttokensdetails.mdx)] | :heavy_minus_sign: | Detailed prompt token usage | | +| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.ServerToolUseDetails](../../models/components/servertoolusedetails.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | \{
"tool_calls_executed": 2,
"tool_calls_requested": 2,
"web_search_requests": 2
} | +| `TotalTokens` | `int64` | :heavy_check_mark: | Total number of tokens | | \ No newline at end of file diff --git a/docs/models/components/chatusagecompletiontokensdetails.mdx b/docs/models/components/chatusagecompletiontokensdetails.mdx index e824b194b..f657f3448 100644 --- a/docs/models/components/chatusagecompletiontokensdetails.mdx +++ b/docs/models/components/chatusagecompletiontokensdetails.mdx @@ -9,7 +9,7 @@ Detailed completion token usage | Field | Type | Required | Description | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `AcceptedPredictionTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Accepted prediction tokens | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for audio output | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for reasoning | -| `RejectedPredictionTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Rejected prediction tokens | \ No newline at end of file +| `AcceptedPredictionTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Accepted prediction tokens | +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for audio output | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for reasoning | +| `RejectedPredictionTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Rejected prediction tokens | \ No newline at end of file diff --git a/docs/models/components/chatusageprompttokensdetails.mdx b/docs/models/components/chatusageprompttokensdetails.mdx index 566f2663f..4810cf7d8 100644 --- a/docs/models/components/chatusageprompttokensdetails.mdx +++ b/docs/models/components/chatusageprompttokensdetails.mdx @@ -9,7 +9,7 @@ Detailed prompt token usage | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | `*int64` | ➖ | Audio input tokens | -| `CacheWriteTokens` | `*int64` | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | `*int64` | ➖ | Cached prompt tokens | -| `VideoTokens` | `*int64` | ➖ | Video input tokens | \ No newline at end of file +| `AudioTokens` | `*int64` | :heavy_minus_sign: | Audio input tokens | +| `CacheWriteTokens` | `*int64` | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | `*int64` | :heavy_minus_sign: | Cached prompt tokens | +| `VideoTokens` | `*int64` | :heavy_minus_sign: | Video input tokens | \ No newline at end of file diff --git a/docs/models/components/chatusermessage.mdx b/docs/models/components/chatusermessage.mdx index 07d61f471..d1bf5ce4f 100644 --- a/docs/models/components/chatusermessage.mdx +++ b/docs/models/components/chatusermessage.mdx @@ -9,6 +9,6 @@ User message | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Content` | [components.ChatUserMessageContent](../../models/components/chatusermessagecontent.mdx) | ✅ | User message content | What is the capital of France? | -| `Name` | `*string` | ➖ | Optional name for the user | User | -| `Role` | [components.ChatUserMessageRole](../../models/components/chatusermessagerole.mdx) | ✅ | N/A | | \ No newline at end of file +| `Content` | [components.ChatUserMessageContent](../../models/components/chatusermessagecontent.mdx) | :heavy_check_mark: | User message content | What is the capital of France? | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for the user | User | +| `Role` | [components.ChatUserMessageRole](../../models/components/chatusermessagerole.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/chatwebsearchshorthand.mdx b/docs/models/components/chatwebsearchshorthand.mdx index 5ce99f90f..dc39cb0c0 100644 --- a/docs/models/components/chatwebsearchshorthand.mdx +++ b/docs/models/components/chatwebsearchshorthand.mdx @@ -9,16 +9,16 @@ Web search tool using OpenAI Responses API syntax. Automatically converted to op | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedDomains` | []`string` | ➖ | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `ExcludedDomains` | []`string` | ➖ | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | -| `MaxCharacters` | `*int64` | ➖ | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxTotalResults` | `*int64` | ➖ | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `Parameters` | [*components.WebSearchConfig](../../models/components/websearchconfig.mdx) | ➖ | N/A | \{
"max_results": 5,
"search_context_size": "medium"
} | -| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | ➖ | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | -| `Type` | [components.ChatWebSearchShorthandType](../../models/components/chatwebsearchshorthandtype.mdx) | ✅ | N/A | | -| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | ➖ | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_minus_sign: | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `ExcludedDomains` | []`string` | :heavy_minus_sign: | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | +| `MaxCharacters` | `*int64` | :heavy_minus_sign: | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxTotalResults` | `*int64` | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `Parameters` | [*components.WebSearchConfig](../../models/components/websearchconfig.mdx) | :heavy_minus_sign: | N/A | \{
"max_results": 5,
"search_context_size": "medium"
} | +| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | +| `Type` | [components.ChatWebSearchShorthandType](../../models/components/chatwebsearchshorthandtype.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | :heavy_minus_sign: | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/choice.mdx b/docs/models/components/choice.mdx index 369d0e9db..2c57c13fb 100644 --- a/docs/models/components/choice.mdx +++ b/docs/models/components/choice.mdx @@ -6,8 +6,8 @@ title: "Choice" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `FinishReason` | [components.FinishReason](../../models/components/finishreason.mdx) | ✅ | N/A | stop | -| `Index` | `int64` | ✅ | N/A | | -| `Logprobs` | [*components.Logprobs](../../models/components/logprobs.mdx) | ✅ | N/A | | -| `Message` | [components.Message](../../models/components/message.mdx) | ✅ | N/A | | -| `NativeFinishReason` | `*string` | ✅ | N/A | | \ No newline at end of file +| `FinishReason` | [components.FinishReason](../../models/components/finishreason.mdx) | :heavy_check_mark: | N/A | stop | +| `Index` | `int64` | :heavy_check_mark: | N/A | | +| `Logprobs` | [*components.Logprobs](../../models/components/logprobs.mdx) | :heavy_check_mark: | N/A | | +| `Message` | [components.Message](../../models/components/message.mdx) | :heavy_check_mark: | N/A | | +| `NativeFinishReason` | `*string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/clientclosedrequestresponseerrordata.mdx b/docs/models/components/clientclosedrequestresponseerrordata.mdx index 848156fdd..3af4502a5 100644 --- a/docs/models/components/clientclosedrequestresponseerrordata.mdx +++ b/docs/models/components/clientclosedrequestresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for ClientClosedRequestResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/code.mdx b/docs/models/components/code.mdx deleted file mode 100644 index 4edfa740a..000000000 --- a/docs/models/components/code.mdx +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Code" ---- - -## Supported Types - -### - -```go -code := components.CreateCodeStr(string{/* values here */}) -``` - -### - -```go -code := components.CreateCodeInteger(int64{/* values here */}) -``` - -## Union Discrimination - -Use the `Type` field to determine which variant is active, then access the corresponding field: - -```go -switch code.Type { - case components.CodeTypeStr: - // code.Str is populated - case components.CodeTypeInteger: - // code.Integer is populated -} -``` diff --git a/docs/models/components/codeinterpretercallcodedeltaevent.mdx b/docs/models/components/codeinterpretercallcodedeltaevent.mdx index 9384cd531..cacd126e1 100644 --- a/docs/models/components/codeinterpretercallcodedeltaevent.mdx +++ b/docs/models/components/codeinterpretercallcodedeltaevent.mdx @@ -9,8 +9,8 @@ Incremental chunk of code being streamed for a `code_interpreter_call`. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CodeInterpreterCallCodeDeltaEventType](../../models/components/codeinterpretercallcodedeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterCallCodeDeltaEventType](../../models/components/codeinterpretercallcodedeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpretercallcodedoneevent.mdx b/docs/models/components/codeinterpretercallcodedoneevent.mdx index 9ab93243c..2881a462d 100644 --- a/docs/models/components/codeinterpretercallcodedoneevent.mdx +++ b/docs/models/components/codeinterpretercallcodedoneevent.mdx @@ -9,8 +9,8 @@ Emitted when code streaming completes for a `code_interpreter_call`. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Code` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CodeInterpreterCallCodeDoneEventType](../../models/components/codeinterpretercallcodedoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Code` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterCallCodeDoneEventType](../../models/components/codeinterpretercallcodedoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpretercallcompletedevent.mdx b/docs/models/components/codeinterpretercallcompletedevent.mdx index ffacec43f..2f1bd1d44 100644 --- a/docs/models/components/codeinterpretercallcompletedevent.mdx +++ b/docs/models/components/codeinterpretercallcompletedevent.mdx @@ -9,7 +9,7 @@ Code interpreter call completed | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CodeInterpreterCallCompletedEventType](../../models/components/codeinterpretercallcompletedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterCallCompletedEventType](../../models/components/codeinterpretercallcompletedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpretercallinprogressevent.mdx b/docs/models/components/codeinterpretercallinprogressevent.mdx index e4cdb0941..17e85cf0e 100644 --- a/docs/models/components/codeinterpretercallinprogressevent.mdx +++ b/docs/models/components/codeinterpretercallinprogressevent.mdx @@ -9,7 +9,7 @@ Code interpreter call in progress | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CodeInterpreterCallInProgressEventType](../../models/components/codeinterpretercallinprogresseventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterCallInProgressEventType](../../models/components/codeinterpretercallinprogresseventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpretercallinterpretingevent.mdx b/docs/models/components/codeinterpretercallinterpretingevent.mdx index b6413c2ab..90f2aae8e 100644 --- a/docs/models/components/codeinterpretercallinterpretingevent.mdx +++ b/docs/models/components/codeinterpretercallinterpretingevent.mdx @@ -9,7 +9,7 @@ Code interpreter is executing the code | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CodeInterpreterCallInterpretingEventType](../../models/components/codeinterpretercallinterpretingeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterCallInterpretingEventType](../../models/components/codeinterpretercallinterpretingeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpreterfileoutput.mdx b/docs/models/components/codeinterpreterfileoutput.mdx index b54069840..2ab8eb84c 100644 --- a/docs/models/components/codeinterpreterfileoutput.mdx +++ b/docs/models/components/codeinterpreterfileoutput.mdx @@ -6,13 +6,13 @@ title: "CodeInterpreterFileOutput" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DownloadURL` | `*string` | ➖ | Provider-issued download URL for the generated file. Typically signed and time-limited (see `expires_at`); fetch promptly rather than persisting the URL. | -| `ErrorCode` | optionalnullable.OptionalNullable[`string`] | ➖ | Provider error code when generating or persisting the file failed; null or absent on success. | -| `ExpiresAt` | `*string` | ➖ | When the `download_url` stops working, as an ISO 8601 timestamp. After this time the file must be regenerated. | -| `Filename` | `*string` | ➖ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `MediaType` | `*string` | ➖ | N/A | -| `Sha256` | `*string` | ➖ | N/A | -| `SizeBytes` | `*int64` | ➖ | N/A | -| `Status` | `*string` | ➖ | Provider-reported readiness of the generated file (e.g. `ready`). Values other than `ready` indicate the artifact may not be downloadable. | -| `Type` | [components.CodeInterpreterFileOutputType](../../models/components/codeinterpreterfileoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `DownloadURL` | `*string` | :heavy_minus_sign: | Provider-issued download URL for the generated file. Typically signed and time-limited (see `expires_at`); fetch promptly rather than persisting the URL. | +| `ErrorCode` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Provider error code when generating or persisting the file failed; null or absent on success. | +| `ExpiresAt` | `*string` | :heavy_minus_sign: | When the `download_url` stops working, as an ISO 8601 timestamp. After this time the file must be regenerated. | +| `Filename` | `*string` | :heavy_minus_sign: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `MediaType` | `*string` | :heavy_minus_sign: | N/A | +| `Sha256` | `*string` | :heavy_minus_sign: | N/A | +| `SizeBytes` | `*int64` | :heavy_minus_sign: | N/A | +| `Status` | `*string` | :heavy_minus_sign: | Provider-reported readiness of the generated file (e.g. `ready`). Values other than `ready` indicate the artifact may not be downloadable. | +| `Type` | [components.CodeInterpreterFileOutputType](../../models/components/codeinterpreterfileoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpreterimageoutput.mdx b/docs/models/components/codeinterpreterimageoutput.mdx index b1f17b735..e84a5d592 100644 --- a/docs/models/components/codeinterpreterimageoutput.mdx +++ b/docs/models/components/codeinterpreterimageoutput.mdx @@ -6,5 +6,5 @@ title: "CodeInterpreterImageOutput" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Type` | [components.CodeInterpreterImageOutputType](../../models/components/codeinterpreterimageoutputtype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.CodeInterpreterImageOutputType](../../models/components/codeinterpreterimageoutputtype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpreterlogsoutput.mdx b/docs/models/components/codeinterpreterlogsoutput.mdx index 7e8ae461d..a4c4d46a7 100644 --- a/docs/models/components/codeinterpreterlogsoutput.mdx +++ b/docs/models/components/codeinterpreterlogsoutput.mdx @@ -6,5 +6,5 @@ title: "CodeInterpreterLogsOutput" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Logs` | `string` | ✅ | N/A | -| `Type` | [components.CodeInterpreterLogsOutputType](../../models/components/codeinterpreterlogsoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Logs` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.CodeInterpreterLogsOutputType](../../models/components/codeinterpreterlogsoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codeinterpreterservertool.mdx b/docs/models/components/codeinterpreterservertool.mdx index d07484c5a..9a8544350 100644 --- a/docs/models/components/codeinterpreterservertool.mdx +++ b/docs/models/components/codeinterpreterservertool.mdx @@ -9,5 +9,5 @@ Code interpreter tool configuration | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Container` | [components.Container](../../models/components/container.mdx) | ✅ | N/A | -| `Type` | [components.TypeCodeInterpreter](../../models/components/typecodeinterpreter.mdx) | ✅ | N/A | \ No newline at end of file +| `Container` | [components.Container](../../models/components/container.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeCodeInterpreter](../../models/components/typecodeinterpreter.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/codexlocalshelltool.mdx b/docs/models/components/codexlocalshelltool.mdx index f9424cc21..7f7725af8 100644 --- a/docs/models/components/codexlocalshelltool.mdx +++ b/docs/models/components/codexlocalshelltool.mdx @@ -9,4 +9,4 @@ Local shell tool configuration | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Type` | [components.CodexLocalShellToolType](../../models/components/codexlocalshelltooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.CodexLocalShellToolType](../../models/components/codexlocalshelltooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/compactionitem.mdx b/docs/models/components/compactionitem.mdx index 5d360e8aa..b7b846c91 100644 --- a/docs/models/components/compactionitem.mdx +++ b/docs/models/components/compactionitem.mdx @@ -9,7 +9,7 @@ A context compaction marker with encrypted summary | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `EncryptedContent` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | [components.CompactionItemType](../../models/components/compactionitemtype.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"encrypted_content": "enc_abc123...",
"type": "compaction"
} | \ No newline at end of file +| `EncryptedContent` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.CompactionItemType](../../models/components/compactionitemtype.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"encrypted_content": "enc_abc123...",
"type": "compaction"
} | \ No newline at end of file diff --git a/docs/models/components/compoundfilter.mdx b/docs/models/components/compoundfilter.mdx index bfe89847d..7fbf1362d 100644 --- a/docs/models/components/compoundfilter.mdx +++ b/docs/models/components/compoundfilter.mdx @@ -9,5 +9,5 @@ A compound filter that combines multiple comparison or compound filters | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Filters` | []map[string]`any` | ✅ | N/A | -| `Type` | [components.CompoundFilterType](../../models/components/compoundfiltertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Filters` | []map[string]`any` | :heavy_check_mark: | N/A | +| `Type` | [components.CompoundFilterType](../../models/components/compoundfiltertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/computeruseservertool.mdx b/docs/models/components/computeruseservertool.mdx index 542108672..4317e533c 100644 --- a/docs/models/components/computeruseservertool.mdx +++ b/docs/models/components/computeruseservertool.mdx @@ -9,7 +9,7 @@ Computer use preview tool configuration | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `DisplayHeight` | `int64` | ✅ | N/A | -| `DisplayWidth` | `int64` | ✅ | N/A | -| `Environment` | [components.EnvironmentEnum](../../models/components/environmentenum.mdx) | ✅ | N/A | -| `Type` | [components.ComputerUseServerToolType](../../models/components/computeruseservertooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `DisplayHeight` | `int64` | :heavy_check_mark: | N/A | +| `DisplayWidth` | `int64` | :heavy_check_mark: | N/A | +| `Environment` | [components.EnvironmentEnum](../../models/components/environmentenum.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ComputerUseServerToolType](../../models/components/computeruseservertooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/configurationupdateitem.mdx b/docs/models/components/configurationupdateitem.mdx index a40c7d52f..7c2ce6e55 100644 --- a/docs/models/components/configurationupdateitem.mdx +++ b/docs/models/components/configurationupdateitem.mdx @@ -9,6 +9,6 @@ Changes reasoning effort from this point in the conversation onward without inva | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | ✅ | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | -| `Type` | [components.ConfigurationUpdateItemType](../../models/components/configurationupdateitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Reasoning` | [components.ConfigurationUpdateReasoning](../../models/components/configurationupdatereasoning.mdx) | :heavy_check_mark: | Reasoning settings applied from this point in the conversation onward | \{
"effort": "low"
} | +| `Type` | [components.ConfigurationUpdateItemType](../../models/components/configurationupdateitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/configurationupdatereasoning.mdx b/docs/models/components/configurationupdatereasoning.mdx index 8c57d0c95..a13d2a858 100644 --- a/docs/models/components/configurationupdatereasoning.mdx +++ b/docs/models/components/configurationupdatereasoning.mdx @@ -9,4 +9,4 @@ Reasoning settings applied from this point in the conversation onward | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Effort` | [components.ConfigurationUpdateReasoningEffort](../../models/components/configurationupdatereasoningeffort.mdx) | ✅ | Reasoning effort to apply from this point in the conversation onward | low | \ No newline at end of file +| `Effort` | [components.ConfigurationUpdateReasoningEffort](../../models/components/configurationupdatereasoningeffort.mdx) | :heavy_check_mark: | Reasoning effort to apply from this point in the conversation onward | low | \ No newline at end of file diff --git a/docs/models/components/conflictresponseerrordata.mdx b/docs/models/components/conflictresponseerrordata.mdx index bcffefd90..f7a2d6ffd 100644 --- a/docs/models/components/conflictresponseerrordata.mdx +++ b/docs/models/components/conflictresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for ConflictResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/containerauto.mdx b/docs/models/components/containerauto.mdx index 28ec54494..f0a61aa66 100644 --- a/docs/models/components/containerauto.mdx +++ b/docs/models/components/containerauto.mdx @@ -6,6 +6,6 @@ title: "ContainerAuto" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `FileIds` | []`string` | ➖ | N/A | -| `MemoryLimit` | optionalnullable.OptionalNullable[[components.MemoryLimit](../../models/components/memorylimit.mdx)] | ➖ | N/A | -| `Type` | [components.ContainerType](../../models/components/containertype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileIds` | []`string` | :heavy_minus_sign: | N/A | +| `MemoryLimit` | optionalnullable.OptionalNullable[[components.MemoryLimit](../../models/components/memorylimit.mdx)] | :heavy_minus_sign: | N/A | +| `Type` | [components.ContainerType](../../models/components/containertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/containerautoenvironment.mdx b/docs/models/components/containerautoenvironment.mdx index 3d7abff5e..0c022b727 100644 --- a/docs/models/components/containerautoenvironment.mdx +++ b/docs/models/components/containerautoenvironment.mdx @@ -9,6 +9,6 @@ An OpenRouter-managed, auto-provisioned ephemeral container. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `FileIds` | []`string` | ➖ | Workspace file ids (or_file_…) to attach into the container before the first command runs. Each file is copied to the container home as a writable copy named \{last 8 characters of the file id}-\{base filename} (a file stored as data/report.csv with id or_file_…NR6q4V8w attaches to ~/NR6q4V8w-report.csv), so same-named files never collide; the source document is never modified. Unknown, foreign, or malformed ids fail the request with a 400 before any command executes. Max 20 ids. | [
"or_file_011CNha8iCJcU1wXNR6q4V8w"
] | -| `NetworkPolicy` | [*components.ContainerNetworkPolicy](../../models/components/containernetworkpolicy.mdx) | ➖ | Network egress policy for the container. "disabled" blocks all outbound internet; "allowlist" permits only hosts matching the listed hostnames or * glob patterns (ports 80/443, DNS via Cloudflare resolvers). The policy is fixed when a container starts: sending a different policy to a warm container fails the request with a 409. Omitted: defaults to "disabled" (no outbound internet). For unrestricted egress, use an allowlist of ["*"]. | \{
"allowed_domains": [
"pypi.org",
"files.pythonhosted.org"
],
"type": "allowlist"
} | -| `Type` | [components.ContainerAutoEnvironmentType](../../models/components/containerautoenvironmenttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `FileIds` | []`string` | :heavy_minus_sign: | Workspace file ids (or_file_…) to attach into the container before the first command runs. Each file is copied to the container home as a writable copy named \{last 8 characters of the file id}-\{base filename} (a file stored as data/report.csv with id or_file_…NR6q4V8w attaches to ~/NR6q4V8w-report.csv), so same-named files never collide; the source document is never modified. Unknown, foreign, or malformed ids fail the request with a 400 before any command executes. Max 20 ids. | [
"or_file_011CNha8iCJcU1wXNR6q4V8w"
] | +| `NetworkPolicy` | [*components.ContainerNetworkPolicy](../../models/components/containernetworkpolicy.mdx) | :heavy_minus_sign: | Network egress policy for the container. "disabled" blocks all outbound internet; "allowlist" permits only hosts matching the listed hostnames or * glob patterns (ports 80/443, DNS via Cloudflare resolvers). The policy is fixed when a container starts: sending a different policy to a warm container fails the request with a 409. Omitted: defaults to "disabled" (no outbound internet). For unrestricted egress, use an allowlist of ["*"]. | \{
"allowed_domains": [
"pypi.org",
"files.pythonhosted.org"
],
"type": "allowlist"
} | +| `Type` | [components.ContainerAutoEnvironmentType](../../models/components/containerautoenvironmenttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/containerfile.mdx b/docs/models/components/containerfile.mdx index 882b5794e..26ec73eda 100644 --- a/docs/models/components/containerfile.mdx +++ b/docs/models/components/containerfile.mdx @@ -6,10 +6,10 @@ title: "ContainerFile" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | -| `Bytes` | `int64` | ✅ | File size in bytes. | 123 | -| `ContainerID` | `string` | ✅ | The container the file belongs to — echoes the `container_id` path parameter (OpenAI field name). | sess_abc123 | -| `CreatedAt` | `int64` | ✅ | Unix timestamp (seconds) when the file was last synced. | 1755640000 | -| `ID` | `string` | ✅ | Container file id: `cfile_` + base64url of the file path. | cfile_b3V0L3JlcG9ydC5jc3Y | -| `Object` | [components.ContainerFileObject](../../models/components/containerfileobject.mdx) | ✅ | N/A | container.file | -| `Path` | `string` | ✅ | Container-relative file path. | out/report.csv | -| `Source` | [components.ContainerFileSource](../../models/components/containerfilesource.mdx) | ✅ | Container files are always produced by the assistant sandbox. | assistant | \ No newline at end of file +| `Bytes` | `int64` | :heavy_check_mark: | File size in bytes. | 123 | +| `ContainerID` | `string` | :heavy_check_mark: | The container the file belongs to — echoes the `container_id` path parameter (OpenAI field name). | sess_abc123 | +| `CreatedAt` | `int64` | :heavy_check_mark: | Unix timestamp (seconds) when the file was last synced. | 1755640000 | +| `ID` | `string` | :heavy_check_mark: | Container file id: `cfile_` + base64url of the file path. | cfile_b3V0L3JlcG9ydC5jc3Y | +| `Object` | [components.ContainerFileObject](../../models/components/containerfileobject.mdx) | :heavy_check_mark: | N/A | container.file | +| `Path` | `string` | :heavy_check_mark: | Container-relative file path. | out/report.csv | +| `Source` | [components.ContainerFileSource](../../models/components/containerfilesource.mdx) | :heavy_check_mark: | Container files are always produced by the assistant sandbox. | assistant | \ No newline at end of file diff --git a/docs/models/components/containerfilelistresponse.mdx b/docs/models/components/containerfilelistresponse.mdx index 06759ba1c..6269ff622 100644 --- a/docs/models/components/containerfilelistresponse.mdx +++ b/docs/models/components/containerfilelistresponse.mdx @@ -6,8 +6,8 @@ title: "ContainerFileListResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.ContainerFile](../../models/components/containerfile.mdx) | ✅ | N/A | | -| `FirstID` | `*string` | ✅ | N/A | cfile_b3V0L3JlcG9ydC5jc3Y | -| `HasMore` | `bool` | ✅ | True when another page can be fetched by passing `after=last_id`; `last_id` is non-null whenever this is true. | false | -| `LastID` | `*string` | ✅ | Cursor for the next page (pass as `after`). The last entry’s id, except when the page stopped at the per-request scan bound on hidden bookkeeping objects: then it names the scan position and may not appear in `data`. Null only when `has_more` is false and `data` is empty. | cfile_b3V0L3JlcG9ydC5jc3Y | -| `Object` | [components.ContainerFileListResponseObject](../../models/components/containerfilelistresponseobject.mdx) | ✅ | N/A | list | \ No newline at end of file +| `Data` | [][components.ContainerFile](../../models/components/containerfile.mdx) | :heavy_check_mark: | N/A | | +| `FirstID` | `*string` | :heavy_check_mark: | N/A | cfile_b3V0L3JlcG9ydC5jc3Y | +| `HasMore` | `bool` | :heavy_check_mark: | True when another page can be fetched by passing `after=last_id`; `last_id` is non-null whenever this is true. | false | +| `LastID` | `*string` | :heavy_check_mark: | Cursor for the next page (pass as `after`). The last entry’s id, except when the page stopped at the per-request scan bound on hidden bookkeeping objects: then it names the scan position and may not appear in `data`. Null only when `has_more` is false and `data` is empty. | cfile_b3V0L3JlcG9ydC5jc3Y | +| `Object` | [components.ContainerFileListResponseObject](../../models/components/containerfilelistresponseobject.mdx) | :heavy_check_mark: | N/A | list | \ No newline at end of file diff --git a/docs/models/components/containernetworkpolicyallowlist.mdx b/docs/models/components/containernetworkpolicyallowlist.mdx index 405cb8462..66a74b43b 100644 --- a/docs/models/components/containernetworkpolicyallowlist.mdx +++ b/docs/models/components/containernetworkpolicyallowlist.mdx @@ -6,5 +6,5 @@ title: "ContainerNetworkPolicyAllowlist" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedDomains` | []`string` | ✅ | Hostnames the container may reach over ports 80/443 (max 50). Entries are lowercase hostnames or glob patterns where * matches any run of characters (e.g. *.example.com). An exact hostname does not cover its subdomains — use a glob or list each hostname. pip needs both pypi.org and files.pythonhosted.org (or *.pythonhosted.org). | [
"pypi.org",
"files.pythonhosted.org"
] | -| `Type` | [components.TypeAllowlist](../../models/components/typeallowlist.mdx) | ✅ | Outbound access restricted to the listed domains. | | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_check_mark: | Hostnames the container may reach over ports 80/443 (max 50). Entries are lowercase hostnames or glob patterns where * matches any run of characters (e.g. *.example.com). An exact hostname does not cover its subdomains — use a glob or list each hostname. pip needs both pypi.org and files.pythonhosted.org (or *.pythonhosted.org). | [
"pypi.org",
"files.pythonhosted.org"
] | +| `Type` | [components.TypeAllowlist](../../models/components/typeallowlist.mdx) | :heavy_check_mark: | Outbound access restricted to the listed domains. | | \ No newline at end of file diff --git a/docs/models/components/containernetworkpolicydisabled.mdx b/docs/models/components/containernetworkpolicydisabled.mdx index 12c57f2f4..85be85d3b 100644 --- a/docs/models/components/containernetworkpolicydisabled.mdx +++ b/docs/models/components/containernetworkpolicydisabled.mdx @@ -6,4 +6,4 @@ title: "ContainerNetworkPolicyDisabled" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Type` | [components.ContainerNetworkPolicyTypeDisabled](../../models/components/containernetworkpolicytypedisabled.mdx) | ✅ | No outbound internet access. | \ No newline at end of file +| `Type` | [components.ContainerNetworkPolicyTypeDisabled](../../models/components/containernetworkpolicytypedisabled.mdx) | :heavy_check_mark: | No outbound internet access. | \ No newline at end of file diff --git a/docs/models/components/containerreferenceenvironment.mdx b/docs/models/components/containerreferenceenvironment.mdx index 1ab47d38e..7be53eeb9 100644 --- a/docs/models/components/containerreferenceenvironment.mdx +++ b/docs/models/components/containerreferenceenvironment.mdx @@ -9,7 +9,7 @@ Reference to a container by its canonical id — a previously returned container | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | Canonical container id to reuse (max 40 characters, letters/digits/underscores/hyphens). Any container_id previously returned by a bash or shell tool result works here and reattaches to the same container and files — including session-derived ids (sess_...) and generation-derived ids (gen_...). Note that a session-derived id is always sess_ + the sanitized session key, which is not necessarily the raw session id you sent. Using the same container_id from both the bash and shell tools shares the same files, with last-write-wins when both flush concurrently. A fresh name creates a new persistent container. Containers are always scoped to your account and workspace. | sess_abc123 | -| `FileIds` | []`string` | ➖ | Workspace file ids (or_file_…) to attach into the container before the first command runs. Each file is copied to the container home as a writable copy named \{last 8 characters of the file id}-\{base filename} (a file stored as data/report.csv with id or_file_…NR6q4V8w attaches to ~/NR6q4V8w-report.csv), so same-named files never collide; the source document is never modified. Unknown, foreign, or malformed ids fail the request with a 400 before any command executes. Max 20 ids. | [
"or_file_011CNha8iCJcU1wXNR6q4V8w"
] | -| `NetworkPolicy` | [*components.ContainerNetworkPolicy](../../models/components/containernetworkpolicy.mdx) | ➖ | Network egress policy for the container. "disabled" blocks all outbound internet; "allowlist" permits only hosts matching the listed hostnames or * glob patterns (ports 80/443, DNS via Cloudflare resolvers). The policy is fixed when a container starts: sending a different policy to a warm container fails the request with a 409. Omitted: defaults to "disabled" (no outbound internet). For unrestricted egress, use an allowlist of ["*"]. | \{
"allowed_domains": [
"pypi.org",
"files.pythonhosted.org"
],
"type": "allowlist"
} | -| `Type` | [components.ContainerReferenceEnvironmentType](../../models/components/containerreferenceenvironmenttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | Canonical container id to reuse (max 40 characters, letters/digits/underscores/hyphens). Any container_id previously returned by a bash or shell tool result works here and reattaches to the same container and files — including session-derived ids (sess_...) and generation-derived ids (gen_...). Note that a session-derived id is always sess_ + the sanitized session key, which is not necessarily the raw session id you sent. Using the same container_id from both the bash and shell tools shares the same files, with last-write-wins when both flush concurrently. A fresh name creates a new persistent container. Containers are always scoped to your account and workspace. | sess_abc123 | +| `FileIds` | []`string` | :heavy_minus_sign: | Workspace file ids (or_file_…) to attach into the container before the first command runs. Each file is copied to the container home as a writable copy named \{last 8 characters of the file id}-\{base filename} (a file stored as data/report.csv with id or_file_…NR6q4V8w attaches to ~/NR6q4V8w-report.csv), so same-named files never collide; the source document is never modified. Unknown, foreign, or malformed ids fail the request with a 400 before any command executes. Max 20 ids. | [
"or_file_011CNha8iCJcU1wXNR6q4V8w"
] | +| `NetworkPolicy` | [*components.ContainerNetworkPolicy](../../models/components/containernetworkpolicy.mdx) | :heavy_minus_sign: | Network egress policy for the container. "disabled" blocks all outbound internet; "allowlist" permits only hosts matching the listed hostnames or * glob patterns (ports 80/443, DNS via Cloudflare resolvers). The policy is fixed when a container starts: sending a different policy to a warm container fails the request with a 409. Omitted: defaults to "disabled" (no outbound internet). For unrestricted egress, use an allowlist of ["*"]. | \{
"allowed_domains": [
"pypi.org",
"files.pythonhosted.org"
],
"type": "allowlist"
} | +| `Type` | [components.ContainerReferenceEnvironmentType](../../models/components/containerreferenceenvironmenttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentcompaction.mdx b/docs/models/components/contentcompaction.mdx index 5fec86138..c29bc3322 100644 --- a/docs/models/components/contentcompaction.mdx +++ b/docs/models/components/contentcompaction.mdx @@ -6,7 +6,7 @@ title: "ContentCompaction" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Content` | `*string` | ✅ | N/A | | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | [components.MessagesMessageParamTypeCompaction](../../models/components/messagesmessageparamtypecompaction.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Content` | `*string` | :heavy_check_mark: | N/A | | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.MessagesMessageParamTypeCompaction](../../models/components/messagesmessageparamtypecompaction.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentencryptedcontent.mdx b/docs/models/components/contentencryptedcontent.mdx index 90b387d63..ddd84c8e7 100644 --- a/docs/models/components/contentencryptedcontent.mdx +++ b/docs/models/components/contentencryptedcontent.mdx @@ -6,6 +6,6 @@ title: "ContentEncryptedContent" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `EncryptedContent` | `string` | ✅ | N/A | -| `Type` | [components.TypeEncryptedContent](../../models/components/typeencryptedcontent.mdx) | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `EncryptedContent` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.TypeEncryptedContent](../../models/components/typeencryptedcontent.mdx) | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentfilterbuiltinentry.mdx b/docs/models/components/contentfilterbuiltinentry.mdx index fe2e1e5d4..36e3d28de 100644 --- a/docs/models/components/contentfilterbuiltinentry.mdx +++ b/docs/models/components/contentfilterbuiltinentry.mdx @@ -9,7 +9,7 @@ A builtin content filter entry. Builtin filters include PII detectors, API-key a | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [components.ContentFilterBuiltinAction](../../models/components/contentfilterbuiltinaction.mdx) | ✅ | Action taken when the builtin filter triggers | block | -| `Label` | `*string` | ➖ | Read-only, system-assigned redaction placeholder derived from the slug (e.g. "[EMAIL]", "[PHONE]"). Not settable by the caller. | [EMAIL] | -| `ScanScope` | [*components.PromptInjectionScanScope](../../models/components/promptinjectionscanscope.mdx) | ➖ | Which message roles to scan for prompt injection. Only applies to the regex-prompt-injection builtin. Defaults to all_messages. | user_only | -| `Slug` | [components.ContentFilterBuiltinSlug](../../models/components/contentfilterbuiltinslug.mdx) | ✅ | The builtin filter identifier | regex-prompt-injection | \ No newline at end of file +| `Action` | [components.ContentFilterBuiltinAction](../../models/components/contentfilterbuiltinaction.mdx) | :heavy_check_mark: | Action taken when the builtin filter triggers | block | +| `Label` | `*string` | :heavy_minus_sign: | Read-only, system-assigned redaction placeholder derived from the slug (e.g. "[EMAIL]", "[PHONE]"). Not settable by the caller. | [EMAIL] | +| `ScanScope` | [*components.PromptInjectionScanScope](../../models/components/promptinjectionscanscope.mdx) | :heavy_minus_sign: | Which message roles to scan for prompt injection. Only applies to the regex-prompt-injection builtin. Defaults to all_messages. | user_only | +| `Slug` | [components.ContentFilterBuiltinSlug](../../models/components/contentfilterbuiltinslug.mdx) | :heavy_check_mark: | The builtin filter identifier | regex-prompt-injection | \ No newline at end of file diff --git a/docs/models/components/contentfilterbuiltinentryinput.mdx b/docs/models/components/contentfilterbuiltinentryinput.mdx index e48650c9c..5a92789b3 100644 --- a/docs/models/components/contentfilterbuiltinentryinput.mdx +++ b/docs/models/components/contentfilterbuiltinentryinput.mdx @@ -9,7 +9,7 @@ A builtin content filter entry for create/update requests. Labels are system-ass | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [components.ContentFilterBuiltinAction](../../models/components/contentfilterbuiltinaction.mdx) | ✅ | Action taken when the builtin filter triggers | block | -| ~~`Label`~~ | `*string` | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: labels are system-assigned and cannot be set by the caller. Accepted for backward compatibility but silently ignored. | | -| `ScanScope` | [*components.PromptInjectionScanScope](../../models/components/promptinjectionscanscope.mdx) | ➖ | Which message roles to scan for prompt injection. Only applies to the regex-prompt-injection builtin. Defaults to all_messages. | user_only | -| `Slug` | [components.ContentFilterBuiltinSlug](../../models/components/contentfilterbuiltinslug.mdx) | ✅ | The builtin filter identifier | regex-prompt-injection | \ No newline at end of file +| `Action` | [components.ContentFilterBuiltinAction](../../models/components/contentfilterbuiltinaction.mdx) | :heavy_check_mark: | Action taken when the builtin filter triggers | block | +| ~~`Label`~~ | `*string` | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: labels are system-assigned and cannot be set by the caller. Accepted for backward compatibility but silently ignored. | | +| `ScanScope` | [*components.PromptInjectionScanScope](../../models/components/promptinjectionscanscope.mdx) | :heavy_minus_sign: | Which message roles to scan for prompt injection. Only applies to the regex-prompt-injection builtin. Defaults to all_messages. | user_only | +| `Slug` | [components.ContentFilterBuiltinSlug](../../models/components/contentfilterbuiltinslug.mdx) | :heavy_check_mark: | The builtin filter identifier | regex-prompt-injection | \ No newline at end of file diff --git a/docs/models/components/contentfilterentry.mdx b/docs/models/components/contentfilterentry.mdx index bad791ebf..b48bd98f8 100644 --- a/docs/models/components/contentfilterentry.mdx +++ b/docs/models/components/contentfilterentry.mdx @@ -9,6 +9,6 @@ A custom regex content filter that scans request messages for matching patterns. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Action` | [components.ContentFilterAction](../../models/components/contentfilteraction.mdx) | ✅ | Action taken when the pattern matches | block | -| `Label` | optionalnullable.OptionalNullable[`string`] | ➖ | Optional label used in redaction placeholders or error messages | [API_KEY] | -| `Pattern` | `string` | ✅ | A regex pattern to match against request content | \b(sk-[a-zA-Z0-9]\{48})\b | \ No newline at end of file +| `Action` | [components.ContentFilterAction](../../models/components/contentfilteraction.mdx) | :heavy_check_mark: | Action taken when the pattern matches | block | +| `Label` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Optional label used in redaction placeholders or error messages | [API_KEY] | +| `Pattern` | `string` | :heavy_check_mark: | A regex pattern to match against request content | \b(sk-[a-zA-Z0-9]\{48})\b | \ No newline at end of file diff --git a/docs/models/components/contentimageurl.mdx b/docs/models/components/contentimageurl.mdx index 9dfeb1b04..dd326660a 100644 --- a/docs/models/components/contentimageurl.mdx +++ b/docs/models/components/contentimageurl.mdx @@ -6,5 +6,5 @@ title: "ContentImageURL" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ImageURL` | [components.ContentImageURLImageURL](../../models/components/contentimageurlimageurl.mdx) | ✅ | N/A | -| `Type` | [components.FileTypeImageURL](../../models/components/filetypeimageurl.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.ContentImageURLImageURL](../../models/components/contentimageurlimageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.FileTypeImageURL](../../models/components/filetypeimageurl.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentimageurlimageurl.mdx b/docs/models/components/contentimageurlimageurl.mdx index 09954e882..1328a98d5 100644 --- a/docs/models/components/contentimageurlimageurl.mdx +++ b/docs/models/components/contentimageurlimageurl.mdx @@ -6,4 +6,4 @@ title: "ContentImageURLImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartaddedevent.mdx b/docs/models/components/contentpartaddedevent.mdx index 88a75e880..0ff8554c9 100644 --- a/docs/models/components/contentpartaddedevent.mdx +++ b/docs/models/components/contentpartaddedevent.mdx @@ -9,9 +9,9 @@ Event emitted when a new content part is added to an output item | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `ContentIndex` | `int64` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `Part` | [components.ContentPartAddedEventPart](../../models/components/contentpartaddedeventpart.mdx) | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ContentPartAddedEventType](../../models/components/contentpartaddedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `Part` | [components.ContentPartAddedEventPart](../../models/components/contentpartaddedeventpart.mdx) | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ContentPartAddedEventType](../../models/components/contentpartaddedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartaudio.mdx b/docs/models/components/contentpartaudio.mdx index 36f5ccf4a..caf675127 100644 --- a/docs/models/components/contentpartaudio.mdx +++ b/docs/models/components/contentpartaudio.mdx @@ -6,5 +6,5 @@ title: "ContentPartAudio" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `AudioURL` | [components.AudioURL](../../models/components/audiourl.mdx) | ✅ | N/A | -| `Type` | [components.ContentPartAudioType](../../models/components/contentpartaudiotype.mdx) | ✅ | N/A | \ No newline at end of file +| `AudioURL` | [components.AudioURL](../../models/components/audiourl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ContentPartAudioType](../../models/components/contentpartaudiotype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartdoneevent.mdx b/docs/models/components/contentpartdoneevent.mdx index 9d3854394..864566ba6 100644 --- a/docs/models/components/contentpartdoneevent.mdx +++ b/docs/models/components/contentpartdoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when a content part is complete | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `ContentIndex` | `int64` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `Part` | [components.ContentPartDoneEventPart](../../models/components/contentpartdoneeventpart.mdx) | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ContentPartDoneEventType](../../models/components/contentpartdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `Part` | [components.ContentPartDoneEventPart](../../models/components/contentpartdoneeventpart.mdx) | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ContentPartDoneEventType](../../models/components/contentpartdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartimage.mdx b/docs/models/components/contentpartimage.mdx index d12776a64..38f6d6a38 100644 --- a/docs/models/components/contentpartimage.mdx +++ b/docs/models/components/contentpartimage.mdx @@ -6,5 +6,5 @@ title: "ContentPartImage" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `ImageURL` | [components.ContentPartImageImageURL](../../models/components/contentpartimageimageurl.mdx) | ✅ | N/A | -| `Type` | [components.ContentPartImageType](../../models/components/contentpartimagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.ContentPartImageImageURL](../../models/components/contentpartimageimageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ContentPartImageType](../../models/components/contentpartimagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartimageimageurl.mdx b/docs/models/components/contentpartimageimageurl.mdx index 28dc58406..cb2bb88a3 100644 --- a/docs/models/components/contentpartimageimageurl.mdx +++ b/docs/models/components/contentpartimageimageurl.mdx @@ -6,4 +6,4 @@ title: "ContentPartImageImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentpartinputaudio.mdx b/docs/models/components/contentpartinputaudio.mdx index 16c0346ad..3a57ab34d 100644 --- a/docs/models/components/contentpartinputaudio.mdx +++ b/docs/models/components/contentpartinputaudio.mdx @@ -6,5 +6,5 @@ title: "ContentPartInputAudio" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `InputAudio` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | ✅ | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | -| `Type` | [components.ContentPartInputAudioType](../../models/components/contentpartinputaudiotype.mdx) | ✅ | N/A | | \ No newline at end of file +| `InputAudio` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | :heavy_check_mark: | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | +| `Type` | [components.ContentPartInputAudioType](../../models/components/contentpartinputaudiotype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentpartinputfile.mdx b/docs/models/components/contentpartinputfile.mdx index 2da178d04..53966b872 100644 --- a/docs/models/components/contentpartinputfile.mdx +++ b/docs/models/components/contentpartinputfile.mdx @@ -6,5 +6,5 @@ title: "ContentPartInputFile" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `InputFile` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | ✅ | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | -| `Type` | [components.ContentPartInputFileType](../../models/components/contentpartinputfiletype.mdx) | ✅ | N/A | | \ No newline at end of file +| `InputFile` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | :heavy_check_mark: | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | +| `Type` | [components.ContentPartInputFileType](../../models/components/contentpartinputfiletype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentpartinputvideo.mdx b/docs/models/components/contentpartinputvideo.mdx index 8c102fab1..8e03b7472 100644 --- a/docs/models/components/contentpartinputvideo.mdx +++ b/docs/models/components/contentpartinputvideo.mdx @@ -6,5 +6,5 @@ title: "ContentPartInputVideo" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `InputVideo` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | ✅ | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | -| `Type` | [components.ContentPartInputVideoType](../../models/components/contentpartinputvideotype.mdx) | ✅ | N/A | | \ No newline at end of file +| `InputVideo` | [components.MultimodalMedia](../../models/components/multimodalmedia.mdx) | :heavy_check_mark: | N/A | \{
"data": "data:audio/wav;base64,UklGRiQAAABXQVZFZm10IBAAAAA...",
"format": "wav"
} | +| `Type` | [components.ContentPartInputVideoType](../../models/components/contentpartinputvideotype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentpartvideo.mdx b/docs/models/components/contentpartvideo.mdx index 5973f9b52..42e9a7d29 100644 --- a/docs/models/components/contentpartvideo.mdx +++ b/docs/models/components/contentpartvideo.mdx @@ -6,5 +6,5 @@ title: "ContentPartVideo" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Type` | [components.ContentPartVideoType](../../models/components/contentpartvideotype.mdx) | ✅ | N/A | -| `VideoURL` | [components.VideoURL](../../models/components/videourl.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ContentPartVideoType](../../models/components/contentpartvideotype.mdx) | :heavy_check_mark: | N/A | +| `VideoURL` | [components.VideoURL](../../models/components/videourl.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentredactedthinking.mdx b/docs/models/components/contentredactedthinking.mdx index e755ede21..018f5cbd7 100644 --- a/docs/models/components/contentredactedthinking.mdx +++ b/docs/models/components/contentredactedthinking.mdx @@ -6,5 +6,5 @@ title: "ContentRedactedThinking" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `Data` | `string` | ✅ | N/A | -| `Type` | [components.MessagesMessageParamTypeRedactedThinking](../../models/components/messagesmessageparamtyperedactedthinking.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesMessageParamTypeRedactedThinking](../../models/components/messagesmessageparamtyperedactedthinking.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentservertooluse.mdx b/docs/models/components/contentservertooluse.mdx index e868c05f1..dc706284e 100644 --- a/docs/models/components/contentservertooluse.mdx +++ b/docs/models/components/contentservertooluse.mdx @@ -6,8 +6,8 @@ title: "ContentServerToolUse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `ID` | `string` | ✅ | N/A | | -| `Input` | `any` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Type` | [components.MessagesMessageParamTypeServerToolUse](../../models/components/messagesmessageparamtypeservertooluse.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Input` | `any` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.MessagesMessageParamTypeServerToolUse](../../models/components/messagesmessageparamtypeservertooluse.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contenttext.mdx b/docs/models/components/contenttext.mdx index 4e3541eb2..e92d1c327 100644 --- a/docs/models/components/contenttext.mdx +++ b/docs/models/components/contenttext.mdx @@ -6,5 +6,5 @@ title: "ContentText" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.BatchObjectFileTypeText](../../models/components/batchobjectfiletypetext.mdx) | ✅ | N/A | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.BatchObjectFileTypeText](../../models/components/batchobjectfiletypetext.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentthinking.mdx b/docs/models/components/contentthinking.mdx index 5fe1f0bce..625af8ff2 100644 --- a/docs/models/components/contentthinking.mdx +++ b/docs/models/components/contentthinking.mdx @@ -6,6 +6,6 @@ title: "ContentThinking" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Signature` | `string` | ✅ | N/A | -| `Thinking` | `string` | ✅ | N/A | -| `Type` | [components.MessagesMessageParamTypeThinking](../../models/components/messagesmessageparamtypethinking.mdx) | ✅ | N/A | \ No newline at end of file +| `Signature` | `string` | :heavy_check_mark: | N/A | +| `Thinking` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesMessageParamTypeThinking](../../models/components/messagesmessageparamtypethinking.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contenttoolreference.mdx b/docs/models/components/contenttoolreference.mdx index 7a2d5a419..cee24863d 100644 --- a/docs/models/components/contenttoolreference.mdx +++ b/docs/models/components/contenttoolreference.mdx @@ -6,5 +6,5 @@ title: "ContentToolReference" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `ToolName` | `string` | ✅ | N/A | -| `Type` | [components.MessagesMessageParamTypeToolReference](../../models/components/messagesmessageparamtypetoolreference.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesMessageParamTypeToolReference](../../models/components/messagesmessageparamtypetoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contenttoolresult.mdx b/docs/models/components/contenttoolresult.mdx index e539309d3..13241baa3 100644 --- a/docs/models/components/contenttoolresult.mdx +++ b/docs/models/components/contenttoolresult.mdx @@ -6,8 +6,8 @@ title: "ContentToolResult" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Content` | [*components.MessagesMessageParamContentUnion2](../../models/components/messagesmessageparamcontentunion2.mdx) | ➖ | N/A | | -| `IsError` | `*bool` | ➖ | N/A | | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.TypeToolResult](../../models/components/typetoolresult.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Content` | [*components.MessagesMessageParamContentUnion2](../../models/components/messagesmessageparamcontentunion2.mdx) | :heavy_minus_sign: | N/A | | +| `IsError` | `*bool` | :heavy_minus_sign: | N/A | | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeToolResult](../../models/components/typetoolresult.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contenttooluse.mdx b/docs/models/components/contenttooluse.mdx index c76cc9875..5432648fe 100644 --- a/docs/models/components/contenttooluse.mdx +++ b/docs/models/components/contenttooluse.mdx @@ -6,8 +6,8 @@ title: "ContentToolUse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `ID` | `string` | ✅ | N/A | | -| `Input` | `any` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Type` | [components.MessagesMessageParamTypeToolUse](../../models/components/messagesmessageparamtypetooluse.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Input` | `any` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.MessagesMessageParamTypeToolUse](../../models/components/messagesmessageparamtypetooluse.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contenttoplogprob.mdx b/docs/models/components/contenttoplogprob.mdx index b27301c52..6b398df96 100644 --- a/docs/models/components/contenttoplogprob.mdx +++ b/docs/models/components/contenttoplogprob.mdx @@ -6,6 +6,6 @@ title: "ContentTopLogprob" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contentwebsearchtoolresult.mdx b/docs/models/components/contentwebsearchtoolresult.mdx index 0ac434b95..cc9a9c07f 100644 --- a/docs/models/components/contentwebsearchtoolresult.mdx +++ b/docs/models/components/contentwebsearchtoolresult.mdx @@ -6,7 +6,7 @@ title: "ContentWebSearchToolResult" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Content` | [components.MessagesMessageParamContentUnion3](../../models/components/messagesmessageparamcontentunion3.mdx) | ✅ | N/A | | -| `ToolUseID` | `string` | ✅ | N/A | | -| `Type` | [components.MessagesMessageParamTypeWebSearchToolResult](../../models/components/messagesmessageparamtypewebsearchtoolresult.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Content` | [components.MessagesMessageParamContentUnion3](../../models/components/messagesmessageparamcontentunion3.mdx) | :heavy_check_mark: | N/A | | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.MessagesMessageParamTypeWebSearchToolResult](../../models/components/messagesmessageparamtypewebsearchtoolresult.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contentwebsearchtoolresulterror.mdx b/docs/models/components/contentwebsearchtoolresulterror.mdx index fc52f1423..0c7fb33ee 100644 --- a/docs/models/components/contentwebsearchtoolresulterror.mdx +++ b/docs/models/components/contentwebsearchtoolresulterror.mdx @@ -6,5 +6,5 @@ title: "ContentWebSearchToolResultError" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `ErrorCode` | [components.MessagesMessageParamErrorCode](../../models/components/messagesmessageparamerrorcode.mdx) | ✅ | N/A | -| `Type` | [components.MessagesMessageParamTypeWebSearchToolResultError](../../models/components/messagesmessageparamtypewebsearchtoolresulterror.mdx) | ✅ | N/A | \ No newline at end of file +| `ErrorCode` | [components.MessagesMessageParamErrorCode](../../models/components/messagesmessageparamerrorcode.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesMessageParamTypeWebSearchToolResultError](../../models/components/messagesmessageparamtypewebsearchtoolresulterror.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/contextcompactionitem.mdx b/docs/models/components/contextcompactionitem.mdx index b5ee4936f..8ac1ee1ca 100644 --- a/docs/models/components/contextcompactionitem.mdx +++ b/docs/models/components/contextcompactionitem.mdx @@ -9,7 +9,7 @@ A context compaction marker with an optional encrypted summary | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | [components.ContextCompactionItemType](../../models/components/contextcompactionitemtype.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"encrypted_content": "enc_abc123...",
"type": "context_compaction"
} | \ No newline at end of file +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.ContextCompactionItemType](../../models/components/contextcompactionitemtype.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"encrypted_content": "enc_abc123...",
"type": "context_compaction"
} | \ No newline at end of file diff --git a/docs/models/components/contextcompressionplugin.mdx b/docs/models/components/contextcompressionplugin.mdx index c51fa60fd..50c79da24 100644 --- a/docs/models/components/contextcompressionplugin.mdx +++ b/docs/models/components/contextcompressionplugin.mdx @@ -6,6 +6,6 @@ title: "ContextCompressionPlugin" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | Set to false to disable the context-compression plugin for this request. Defaults to true. | | -| `Engine` | [*components.ContextCompressionEngine](../../models/components/contextcompressionengine.mdx) | ➖ | The compression engine to use. Defaults to "middle-out". | middle-out | -| `ID` | [components.ContextCompressionPluginID](../../models/components/contextcompressionpluginid.mdx) | ✅ | N/A | | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the context-compression plugin for this request. Defaults to true. | | +| `Engine` | [*components.ContextCompressionEngine](../../models/components/contextcompressionengine.mdx) | :heavy_minus_sign: | The compression engine to use. Defaults to "middle-out". | middle-out | +| `ID` | [components.ContextCompressionPluginID](../../models/components/contextcompressionpluginid.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/contextmanagement.mdx b/docs/models/components/contextmanagement.mdx index b6fa7bcbe..be2538c0e 100644 --- a/docs/models/components/contextmanagement.mdx +++ b/docs/models/components/contextmanagement.mdx @@ -6,4 +6,4 @@ title: "ContextManagement" | Field | Type | Required | Description | | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | -| `Edits` | [][components.Edit](../../models/components/edit.mdx) | ➖ | N/A | \ No newline at end of file +| `Edits` | [][components.Edit](../../models/components/edit.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/contradiction.mdx b/docs/models/components/contradiction.mdx index 70f03571a..eff1167cf 100644 --- a/docs/models/components/contradiction.mdx +++ b/docs/models/components/contradiction.mdx @@ -6,5 +6,5 @@ title: "Contradiction" | Field | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `Stances` | [][components.Stance](../../models/components/stance.mdx) | ✅ | N/A | -| `Topic` | `string` | ✅ | N/A | \ No newline at end of file +| `Stances` | [][components.Stance](../../models/components/stance.mdx) | :heavy_check_mark: | N/A | +| `Topic` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/costdetails.mdx b/docs/models/components/costdetails.mdx index f1e37a790..3fc74c6e1 100644 --- a/docs/models/components/costdetails.mdx +++ b/docs/models/components/costdetails.mdx @@ -9,7 +9,7 @@ Breakdown of upstream inference costs | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ServerToolCost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Metered server-tool execution cost (for example, shell sandbox time) billed for this request, in USD. Matches the billed checkpoint and settlement amounts exactly. 0 when a metered server tool ran but settled at zero dollars; absent when no metered server tool ran. | -| `UpstreamInferenceCompletionsCost` | `float64` | ✅ | N/A | -| `UpstreamInferenceCost` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `UpstreamInferencePromptCost` | `float64` | ✅ | N/A | \ No newline at end of file +| `ServerToolCost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Metered server-tool execution cost (for example, shell sandbox time) billed for this request, in USD. Matches the billed checkpoint and settlement amounts exactly. 0 when a metered server tool ran but settled at zero dollars; absent when no metered server tool ran. | +| `UpstreamInferenceCompletionsCost` | `float64` | :heavy_check_mark: | N/A | +| `UpstreamInferenceCost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `UpstreamInferencePromptCost` | `float64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/createbyokkeyrequest.mdx b/docs/models/components/createbyokkeyrequest.mdx index 72b9935cd..07fef5e89 100644 --- a/docs/models/components/createbyokkeyrequest.mdx +++ b/docs/models/components/createbyokkeyrequest.mdx @@ -6,16 +6,16 @@ title: "CreateBYOKKeyRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedAPIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` means no restriction. Must contain at least one hash if provided. Hashes that do not belong to your account return a 400. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | -| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | -| `AllowedUserIds` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | -| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.CreateBYOKKeyRequestDeclaredRegion](../../models/components/createbyokkeyrequestdeclaredregion.mdx)] | ➖ | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. Defaults to the key's region for OpenAI and Fireworks, otherwise `null`. | null | -| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. Defaults to `null`. | null | -| `Disabled` | `*bool` | ➖ | Whether this credential should be created in a disabled state. | false | -| `IsBYOKOnly` | `*bool` | ➖ | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. Defaults to `false`. | false | -| `IsFallback` | `*bool` | ➖ | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. | false | -| `IsRequired` | `*bool` | ➖ | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. Defaults to `false`. | false | -| `Key` | `string` | ✅ | The raw provider API key or credential. This value is encrypted at rest and never returned in API responses. | sk-proj-abc123... | -| `Name` | optionalnullable.OptionalNullable[`string`] | ➖ | Optional human-readable name for the credential. | Production OpenAI Key | -| `Provider` | [components.BYOKProviderSlug](../../models/components/byokproviderslug.mdx) | ✅ | The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | -| `WorkspaceID` | `*string` | ➖ | Optional workspace ID to scope the credential to. When omitted, the credential is created in the account's default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `AllowedAPIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` means no restriction. Must contain at least one hash if provided. Hashes that do not belong to your account return a 400. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | +| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | +| `AllowedUserIds` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | +| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.CreateBYOKKeyRequestDeclaredRegion](../../models/components/createbyokkeyrequestdeclaredregion.mdx)] | :heavy_minus_sign: | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. Defaults to the key's region for OpenAI and Fireworks, otherwise `null`. | null | +| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. Defaults to `null`. | null | +| `Disabled` | `*bool` | :heavy_minus_sign: | Whether this credential should be created in a disabled state. | false | +| `IsBYOKOnly` | `*bool` | :heavy_minus_sign: | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. Defaults to `false`. | false | +| `IsFallback` | `*bool` | :heavy_minus_sign: | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. | false | +| `IsRequired` | `*bool` | :heavy_minus_sign: | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. Defaults to `false`. | false | +| `Key` | `string` | :heavy_check_mark: | The raw provider API key or credential. This value is encrypted at rest and never returned in API responses. | sk-proj-abc123... | +| `Name` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Optional human-readable name for the credential. | Production OpenAI Key | +| `Provider` | [components.BYOKProviderSlug](../../models/components/byokproviderslug.mdx) | :heavy_check_mark: | The upstream provider this credential authenticates against, as a lowercase slug (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to scope the credential to. When omitted, the credential is created in the account's default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/createbyokkeyresponse.mdx b/docs/models/components/createbyokkeyresponse.mdx index 5f9e0ba2d..c0e18d9d9 100644 --- a/docs/models/components/createbyokkeyresponse.mdx +++ b/docs/models/components/createbyokkeyresponse.mdx @@ -6,4 +6,4 @@ title: "CreateBYOKKeyResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | ✅ | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | :heavy_check_mark: | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/createexternaluserrequest.mdx b/docs/models/components/createexternaluserrequest.mdx index 0ac78c9f5..2d40f192e 100644 --- a/docs/models/components/createexternaluserrequest.mdx +++ b/docs/models/components/createexternaluserrequest.mdx @@ -6,4 +6,4 @@ title: "CreateExternalUserRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `User` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file +| `User` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file diff --git a/docs/models/components/createguardrailrequest.mdx b/docs/models/components/createguardrailrequest.mdx index 5157303b1..f72b4769f 100644 --- a/docs/models/components/createguardrailrequest.mdx +++ b/docs/models/components/createguardrailrequest.mdx @@ -6,27 +6,27 @@ title: "CreateGuardrailRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | -| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | -| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | ➖ | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. An empty array is rejected. | [
"europe"
] | -| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model identifiers (slug or canonical_slug accepted) | [
"openai/gpt-5.2",
"anthropic/claude-4.5-opus-20251124",
"deepseek/deepseek-r1-0528:free"
] | -| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | List of allowed provider IDs | [
"openai",
"anthropic",
"deepseek"
] | -| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntryInput](../../models/components/contentfilterbuiltinentryinput.mdx)] | ➖ | Builtin content filters to apply. Every builtin slug supports "block", "redact", and the detect-only "flag" action. | [
\{
"action": "block",
"slug": "regex-prompt-injection"
}
] | -| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | ➖ | Custom regex content filters to apply to request messages | [
\{
"action": "redact",
"label": "[API_KEY]",
"pattern": "\\b(sk-[a-zA-Z0-9]\{48})\\b"
}
] | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | Description of the guardrail | A guardrail for limiting API usage | -| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that publish prompts. | false | -| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that train on request data. | true | -| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows paid endpoints that train on request data. | true | -| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | false | -| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | false | -| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model identifiers to exclude from routing (slug or canonical_slug accepted) | [
"openai/gpt-4o-mini"
] | -| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | List of provider IDs to exclude from routing | [
"azure"
] | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. Defaults to false. | false | -| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | ➖ | Spending limit in USD. Must be provided together with `reset_interval`: a request that sets only one of the two is rejected with a 400. | 50 | -| `Name` | `string` | ✅ | Name for the new guardrail | My New Guardrail | -| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | ➖ | Interval at which the limit resets (daily, weekly, monthly) | monthly | -| `WorkspaceID` | `*string` | ➖ | The workspace to create the guardrail in. When omitted, the guardrail is created in the default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. This only places the guardrail in the workspace; the created guardrail enforces nothing for that workspace's traffic until it is assigned to API keys or members. To restrict all traffic in a workspace, update the workspace's default guardrail instead. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | +| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | +| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | :heavy_minus_sign: | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. An empty array is rejected. | [
"europe"
] | +| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model identifiers (slug or canonical_slug accepted) | [
"openai/gpt-5.2",
"anthropic/claude-4.5-opus-20251124",
"deepseek/deepseek-r1-0528:free"
] | +| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | List of allowed provider IDs | [
"openai",
"anthropic",
"deepseek"
] | +| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntryInput](../../models/components/contentfilterbuiltinentryinput.mdx)] | :heavy_minus_sign: | Builtin content filters to apply. Every builtin slug supports "block", "redact", and the detect-only "flag" action. | [
\{
"action": "block",
"slug": "regex-prompt-injection"
}
] | +| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | :heavy_minus_sign: | Custom regex content filters to apply to request messages | [
\{
"action": "redact",
"label": "[API_KEY]",
"pattern": "\\b(sk-[a-zA-Z0-9]\{48})\\b"
}
] | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Description of the guardrail | A guardrail for limiting API usage | +| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that publish prompts. | false | +| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that train on request data. | true | +| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows paid endpoints that train on request data. | true | +| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | false | +| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | false | +| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model identifiers to exclude from routing (slug or canonical_slug accepted) | [
"openai/gpt-4o-mini"
] | +| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | List of provider IDs to exclude from routing | [
"azure"
] | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. Defaults to false. | false | +| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Spending limit in USD. Must be provided together with `reset_interval`: a request that sets only one of the two is rejected with a 400. | 50 | +| `Name` | `string` | :heavy_check_mark: | Name for the new guardrail | My New Guardrail | +| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | :heavy_minus_sign: | Interval at which the limit resets (daily, weekly, monthly) | monthly | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | The workspace to create the guardrail in. When omitted, the guardrail is created in the default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. This only places the guardrail in the workspace; the created guardrail enforces nothing for that workspace's traffic until it is assigned to API keys or members. To restrict all traffic in a workspace, update the workspace's default guardrail instead. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/components/createguardrailresponse.mdx b/docs/models/components/createguardrailresponse.mdx index 813b35f37..0c0484aff 100644 --- a/docs/models/components/createguardrailresponse.mdx +++ b/docs/models/components/createguardrailresponse.mdx @@ -6,4 +6,4 @@ title: "CreateGuardrailResponse" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | ✅ | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file +| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | :heavy_check_mark: | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file diff --git a/docs/models/components/createinternrequest.mdx b/docs/models/components/createinternrequest.mdx deleted file mode 100644 index 18c787ed4..000000000 --- a/docs/models/components/createinternrequest.mdx +++ /dev/null @@ -1,17 +0,0 @@ ---- -title: "CreateInternRequest" ---- - -Settings for a new intern. - - -## Fields - -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | Free-form description, or null. | -| `Instructions` | optionalnullable.OptionalNullable[`string`] | ➖ | Standing instructions the intern boots with, or null. | -| `Name` | `string` | ✅ | Intern name, unique per creator within the workspace. | -| `Provision` | `*bool` | ➖ | Start provisioning during this create operation. Defaults to false. | -| `VaultID` | `*string` | ➖ | Vault owned by another intern in this workspace to attach as a borrowed vault. | -| `WorkspaceID` | `*string` | ➖ | Workspace that will own the intern. Defaults to the workspace the API key resolves to. When given, it must match the API key workspace. | \ No newline at end of file diff --git a/docs/models/components/createobservabilitydestinationrequest.mdx b/docs/models/components/createobservabilitydestinationrequest.mdx index 1c232e1bd..2fe77b485 100644 --- a/docs/models/components/createobservabilitydestinationrequest.mdx +++ b/docs/models/components/createobservabilitydestinationrequest.mdx @@ -6,17 +6,17 @@ title: "CreateObservabilityDestinationRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | -| `BroadcastGenerationCost` | `*bool` | ➖ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `*bool` | ➖ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `*bool` | ➖ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `*bool` | ➖ | When true, include request-context generation metadata. | false | -| `Config` | map[string]`any` | ✅ | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `Enabled` | `*bool` | ➖ | Whether this destination should be enabled immediately. | true | -| `FilterRules` | optionalnullable.OptionalNullable[[components.ObservabilityFilterRulesConfigNullable](../../models/components/observabilityfilterrulesconfignullable.mdx)] | ➖ | Optional structured filter rules controlling which events are forwarded. | null | -| `Name` | `string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `*bool` | ➖ | When true, request/response bodies are not forwarded — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegionInput](../../models/components/observabilitydataregioninput.mdx) | ➖ | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. | [
"global"
] | -| `SamplingRate` | `*float64` | ➖ | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.CreateObservabilityDestinationRequestType](../../models/components/createobservabilitydestinationrequesttype.mdx) | ✅ | The destination type. Only stable destination types are accepted. | langfuse | -| `WorkspaceID` | `*string` | ➖ | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes whose traffic is forwarded. `null` or omitted means all keys. Must contain at least one hash if provided. | null | +| `BroadcastGenerationCost` | `*bool` | :heavy_minus_sign: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `*bool` | :heavy_minus_sign: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `*bool` | :heavy_minus_sign: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `*bool` | :heavy_minus_sign: | When true, include request-context generation metadata. | false | +| `Config` | map[string]`any` | :heavy_check_mark: | Provider-specific configuration. The shape depends on `type` and is validated server-side. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `Enabled` | `*bool` | :heavy_minus_sign: | Whether this destination should be enabled immediately. | true | +| `FilterRules` | optionalnullable.OptionalNullable[[components.ObservabilityFilterRulesConfigNullable](../../models/components/observabilityfilterrulesconfignullable.mdx)] | :heavy_minus_sign: | Optional structured filter rules controlling which events are forwarded. | null | +| `Name` | `string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `*bool` | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegionInput](../../models/components/observabilitydataregioninput.mdx) | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field defaults to ['global']; the array must be non-empty. | [
"global"
] | +| `SamplingRate` | `*float64` | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.CreateObservabilityDestinationRequestType](../../models/components/createobservabilitydestinationrequesttype.mdx) | :heavy_check_mark: | The destination type. Only stable destination types are accepted. | langfuse | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/createobservabilitydestinationresponse.mdx b/docs/models/components/createobservabilitydestinationresponse.mdx index 9e357c0a1..02732f049 100644 --- a/docs/models/components/createobservabilitydestinationresponse.mdx +++ b/docs/models/components/createobservabilitydestinationresponse.mdx @@ -6,4 +6,4 @@ title: "CreateObservabilityDestinationResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | ✅ | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/createpresetfrominferenceresponse.mdx b/docs/models/components/createpresetfrominferenceresponse.mdx index 765b9e6ec..1dc095a80 100644 --- a/docs/models/components/createpresetfrominferenceresponse.mdx +++ b/docs/models/components/createpresetfrominferenceresponse.mdx @@ -9,4 +9,4 @@ Response containing the created preset with its designated version. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.PresetWithDesignatedVersion](../../models/components/presetwithdesignatedversion.mdx) | ✅ | A preset with its currently designated version. | \{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version": \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
},
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
} | \ No newline at end of file +| `Data` | [components.PresetWithDesignatedVersion](../../models/components/presetwithdesignatedversion.mdx) | :heavy_check_mark: | A preset with its currently designated version. | \{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version": \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
},
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
} | \ No newline at end of file diff --git a/docs/models/components/createprivateendpointrequest.mdx b/docs/models/components/createprivateendpointrequest.mdx index 84099f109..7a1afd27a 100644 --- a/docs/models/components/createprivateendpointrequest.mdx +++ b/docs/models/components/createprivateendpointrequest.mdx @@ -6,11 +6,11 @@ title: "CreatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Activate` | [*components.PrivateEndpointActivation](../../models/components/privateendpointactivation.mdx) | ➖ | Validate and activate in the same call. On a failed validation the draft is kept and returned with a 422, so fix it and call `/validate` and `/activate` instead of creating it again. | \{
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | -| `BaseURL` | `*string` | ➖ | HTTPS base URL of your deployment. Required unless the provider derives its URL from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | -| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.CreatePrivateEndpointRequestDeclaredRegion](../../models/components/createprivateendpointrequestdeclaredregion.mdx)] | ➖ | Attest where this deployment processes data. | us | -| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Attest that this deployment retains no prompt or completion data. | | -| `ModelPermaslug` | `string` | ✅ | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | -| `Pricing` | [*components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | ➖ | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | -| `ProviderSlug` | `string` | ✅ | Slug of the upstream provider. | azure | -| `UpstreamModelID` | `string` | ✅ | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file +| `Activate` | [*components.PrivateEndpointActivation](../../models/components/privateendpointactivation.mdx) | :heavy_minus_sign: | Validate and activate in the same call. On a failed validation the draft is kept and returned with a 422, so fix it and call `/validate` and `/activate` instead of creating it again. | \{
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | +| `BaseURL` | `*string` | :heavy_minus_sign: | HTTPS base URL of your deployment. Required unless the provider derives its URL from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | +| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.CreatePrivateEndpointRequestDeclaredRegion](../../models/components/createprivateendpointrequestdeclaredregion.mdx)] | :heavy_minus_sign: | Attest where this deployment processes data. | us | +| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Attest that this deployment retains no prompt or completion data. | | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | +| `Pricing` | [*components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | :heavy_minus_sign: | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | +| `ProviderSlug` | `string` | :heavy_check_mark: | Slug of the upstream provider. | azure | +| `UpstreamModelID` | `string` | :heavy_check_mark: | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file diff --git a/docs/models/components/createprivateendpointvalidationfailedresponsedata.mdx b/docs/models/components/createprivateendpointvalidationfailedresponsedata.mdx index 62ebef42b..852b33b91 100644 --- a/docs/models/components/createprivateendpointvalidationfailedresponsedata.mdx +++ b/docs/models/components/createprivateendpointvalidationfailedresponsedata.mdx @@ -6,5 +6,5 @@ title: "CreatePrivateEndpointValidationFailedResponseData" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `Endpoint` | [components.ManagedPrivateEndpoint](../../models/components/managedprivateendpoint.mdx) | ✅ | N/A | -| `Validation` | [*components.PrivateEndpointValidationNullable](../../models/components/privateendpointvalidationnullable.mdx) | ✅ | N/A | \ No newline at end of file +| `Endpoint` | [components.ManagedPrivateEndpoint](../../models/components/managedprivateendpoint.mdx) | :heavy_check_mark: | N/A | +| `Validation` | [*components.PrivateEndpointValidationNullable](../../models/components/privateendpointvalidationnullable.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/createprivateendpointvalidationfailedresponseerror.mdx b/docs/models/components/createprivateendpointvalidationfailedresponseerror.mdx index ea13a95ac..8c723288f 100644 --- a/docs/models/components/createprivateendpointvalidationfailedresponseerror.mdx +++ b/docs/models/components/createprivateendpointvalidationfailedresponseerror.mdx @@ -6,5 +6,5 @@ title: "CreatePrivateEndpointValidationFailedResponseError" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/createscimgroupmappingrequest.mdx b/docs/models/components/createscimgroupmappingrequest.mdx index bf680f52f..42cb64559 100644 --- a/docs/models/components/createscimgroupmappingrequest.mdx +++ b/docs/models/components/createscimgroupmappingrequest.mdx @@ -6,6 +6,6 @@ title: "CreateScimGroupMappingRequest" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Role` | [components.CreateScimGroupMappingRequestRole](../../models/components/createscimgroupmappingrequestrole.mdx) | ✅ | N/A | -| `ScimGroupID` | `string` | ✅ | N/A | -| `WorkspaceID` | `string` | ✅ | N/A | \ No newline at end of file +| `Role` | [components.CreateScimGroupMappingRequestRole](../../models/components/createscimgroupmappingrequestrole.mdx) | :heavy_check_mark: | N/A | +| `ScimGroupID` | `string` | :heavy_check_mark: | N/A | +| `WorkspaceID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/createscimgroupmappingresponse.mdx b/docs/models/components/createscimgroupmappingresponse.mdx index 61334a1ee..9440c95d4 100644 --- a/docs/models/components/createscimgroupmappingresponse.mdx +++ b/docs/models/components/createscimgroupmappingresponse.mdx @@ -6,4 +6,4 @@ title: "CreateScimGroupMappingResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/createscimsyncjobresponse.mdx b/docs/models/components/createscimsyncjobresponse.mdx index 5dd0e6f6d..81504d827 100644 --- a/docs/models/components/createscimsyncjobresponse.mdx +++ b/docs/models/components/createscimsyncjobresponse.mdx @@ -6,4 +6,4 @@ title: "CreateScimSyncJobResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Data` | [components.ScimSyncJob](../../models/components/scimsyncjob.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.ScimSyncJob](../../models/components/scimsyncjob.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/createworkspacerequest.mdx b/docs/models/components/createworkspacerequest.mdx index 4238549a3..36a87f5b6 100644 --- a/docs/models/components/createworkspacerequest.mdx +++ b/docs/models/components/createworkspacerequest.mdx @@ -6,15 +6,15 @@ title: "CreateWorkspaceRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DefaultImageModel` | optionalnullable.OptionalNullable[`string`] | ➖ | Default image model for this workspace | openai/dall-e-3 | -| `DefaultProviderSort` | optionalnullable.OptionalNullable[`string`] | ➖ | Default provider sort preference (price, throughput, latency, exacto) | price | -| `DefaultTextModel` | optionalnullable.OptionalNullable[`string`] | ➖ | Default text model for this workspace | openai/gpt-4o | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | Description of the workspace | Production environment workspace | -| `DisabledServerTools` | optionalnullable.OptionalNullable[[][components.CreateWorkspaceRequestDisabledServerTool](../../models/components/createworkspacerequestdisabledservertool.mdx)] | ➖ | OpenRouter server tools that requests in this workspace may not invoke. Requests naming a disabled tool are rejected with 403. An empty array or null clears the list. | [
"openrouter:web_search",
"openrouter:bash"
] | -| `IoLoggingAPIKeyIds` | optionalnullable.OptionalNullable[[]`int64`] | ➖ | Optional array of API key IDs to filter I/O logging | null | -| `IoLoggingSamplingRate` | `*float64` | ➖ | Sampling rate for I/O logging (0.0001-1) | 1 | -| `IsDataDiscountLoggingEnabled` | `*bool` | ➖ | Whether data discount logging is enabled | true | -| `IsObservabilityBroadcastEnabled` | `*bool` | ➖ | Whether broadcast is enabled | false | -| `IsObservabilityIoLoggingEnabled` | `*bool` | ➖ | Whether private logging is enabled | false | -| `Name` | `string` | ✅ | Name for the new workspace | Production | -| `Slug` | `string` | ✅ | URL-friendly slug (lowercase alphanumeric segments separated by single hyphens, no leading/trailing hyphens) | production | \ No newline at end of file +| `DefaultImageModel` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default image model for this workspace | openai/dall-e-3 | +| `DefaultProviderSort` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default provider sort preference (price, throughput, latency, exacto) | price | +| `DefaultTextModel` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default text model for this workspace | openai/gpt-4o | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Description of the workspace | Production environment workspace | +| `DisabledServerTools` | optionalnullable.OptionalNullable[[][components.CreateWorkspaceRequestDisabledServerTool](../../models/components/createworkspacerequestdisabledservertool.mdx)] | :heavy_minus_sign: | OpenRouter server tools that requests in this workspace may not invoke. Requests naming a disabled tool are rejected with 403. An empty array or null clears the list. | [
"openrouter:web_search",
"openrouter:bash"
] | +| `IoLoggingAPIKeyIds` | optionalnullable.OptionalNullable[[]`int64`] | :heavy_minus_sign: | Optional array of API key IDs to filter I/O logging | null | +| `IoLoggingSamplingRate` | `*float64` | :heavy_minus_sign: | Sampling rate for I/O logging (0.0001-1) | 1 | +| `IsDataDiscountLoggingEnabled` | `*bool` | :heavy_minus_sign: | Whether data discount logging is enabled | true | +| `IsObservabilityBroadcastEnabled` | `*bool` | :heavy_minus_sign: | Whether broadcast is enabled | false | +| `IsObservabilityIoLoggingEnabled` | `*bool` | :heavy_minus_sign: | Whether private logging is enabled | false | +| `Name` | `string` | :heavy_check_mark: | Name for the new workspace | Production | +| `Slug` | `string` | :heavy_check_mark: | URL-friendly slug (lowercase alphanumeric segments separated by single hyphens, no leading/trailing hyphens) | production | \ No newline at end of file diff --git a/docs/models/components/createworkspaceresponse.mdx b/docs/models/components/createworkspaceresponse.mdx index 8806285c0..390c1ae20 100644 --- a/docs/models/components/createworkspaceresponse.mdx +++ b/docs/models/components/createworkspaceresponse.mdx @@ -6,4 +6,4 @@ title: "CreateWorkspaceResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Workspace](../../models/components/workspace.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file +| `Data` | [components.Workspace](../../models/components/workspace.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file diff --git a/docs/models/components/customtool.mdx b/docs/models/components/customtool.mdx index 83ad691aa..0be291eeb 100644 --- a/docs/models/components/customtool.mdx +++ b/docs/models/components/customtool.mdx @@ -9,9 +9,9 @@ Custom tool configuration | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Description` | `*string` | ➖ | N/A | | -| `Format` | [*components.Format](../../models/components/format.mdx) | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Type` | [components.CustomToolTypeCustom](../../models/components/customtooltypecustom.mdx) | ✅ | N/A | | \ No newline at end of file +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Description` | `*string` | :heavy_minus_sign: | N/A | | +| `Format` | [*components.Format](../../models/components/format.mdx) | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.CustomToolTypeCustom](../../models/components/customtooltypecustom.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/customtoolcallinputdeltaevent.mdx b/docs/models/components/customtoolcallinputdeltaevent.mdx index 1e60870dd..487e53971 100644 --- a/docs/models/components/customtoolcallinputdeltaevent.mdx +++ b/docs/models/components/customtoolcallinputdeltaevent.mdx @@ -9,8 +9,8 @@ Event emitted when a custom tool call's freeform input is being streamed. Mirror | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CustomToolCallInputDeltaEventType](../../models/components/customtoolcallinputdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CustomToolCallInputDeltaEventType](../../models/components/customtoolcallinputdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/customtoolcallinputdoneevent.mdx b/docs/models/components/customtoolcallinputdoneevent.mdx index 8d359288a..dac6d4d87 100644 --- a/docs/models/components/customtoolcallinputdoneevent.mdx +++ b/docs/models/components/customtoolcallinputdoneevent.mdx @@ -9,8 +9,8 @@ Event emitted when a custom tool call's freeform input streaming is complete. Mi | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Input` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.CustomToolCallInputDoneEventType](../../models/components/customtoolcallinputdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Input` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.CustomToolCallInputDoneEventType](../../models/components/customtoolcallinputdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/customtoolcallitem.mdx b/docs/models/components/customtoolcallitem.mdx index d612becd2..c67b023fb 100644 --- a/docs/models/components/customtoolcallitem.mdx +++ b/docs/models/components/customtoolcallitem.mdx @@ -9,11 +9,11 @@ A call to a custom (freeform-grammar) tool created by the model — distinct fro | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Async` | optionalnullable.OptionalNullable[`bool`] | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Input` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | optionalnullable.OptionalNullable[`string`] | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.CustomToolCallItemType](../../models/components/customtoolcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Async` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Input` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.CustomToolCallItemType](../../models/components/customtoolcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/customtoolcalloutputitem.mdx b/docs/models/components/customtoolcalloutputitem.mdx index 10f36104e..7ec0b9d38 100644 --- a/docs/models/components/customtoolcalloutputitem.mdx +++ b/docs/models/components/customtoolcalloutputitem.mdx @@ -9,7 +9,7 @@ The output from a custom (freeform-grammar) tool call execution. Mirrors `functi | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `CallID` | `string` | ✅ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `Output` | [components.CustomToolCallOutputItemOutputUnion2](../../models/components/customtoolcalloutputitemoutputunion2.mdx) | ✅ | N/A | -| `Type` | [components.CustomToolCallOutputItemTypeCustomToolCallOutput](../../models/components/customtoolcalloutputitemtypecustomtoolcalloutput.mdx) | ✅ | N/A | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `Output` | [components.CustomToolCallOutputItemOutputUnion2](../../models/components/customtoolcalloutputitemoutputunion2.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.CustomToolCallOutputItemTypeCustomToolCallOutput](../../models/components/customtoolcalloutputitemtypecustomtoolcalloutput.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/customtoolcalloutputitemoutputinputimage.mdx b/docs/models/components/customtoolcalloutputitemoutputinputimage.mdx index 9e8c8427c..4055f686d 100644 --- a/docs/models/components/customtoolcalloutputitemoutputinputimage.mdx +++ b/docs/models/components/customtoolcalloutputitemoutputinputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Detail` | [components.CustomToolCallOutputItemDetail](../../models/components/customtoolcalloutputitemdetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.CustomToolCallOutputItemOutputType](../../models/components/customtoolcalloutputitemoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.CustomToolCallOutputItemDetail](../../models/components/customtoolcalloutputitemdetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.CustomToolCallOutputItemOutputType](../../models/components/customtoolcalloutputitemoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/dabenchmarkentry.mdx b/docs/models/components/dabenchmarkentry.mdx index f99928c48..c95852f49 100644 --- a/docs/models/components/dabenchmarkentry.mdx +++ b/docs/models/components/dabenchmarkentry.mdx @@ -9,8 +9,8 @@ A single Design Arena benchmark entry for a specific arena+category | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `Arena` | `string` | ✅ | Arena type (e.g. models, builders, agents) | models | -| `Category` | `string` | ✅ | Category within the arena (e.g. website, gamedev, uicomponent) | website | -| `Elo` | `float64` | ✅ | ELO rating from head-to-head arena battles | 1385.2 | -| `Rank` | `int64` | ✅ | Rank position within this arena+category among models available on OpenRouter (1 = highest ELO) | 5 | -| `WinRate` | `float64` | ✅ | Win rate percentage in arena battles | 62.5 | \ No newline at end of file +| `Arena` | `string` | :heavy_check_mark: | Arena type (e.g. models, builders, agents) | models | +| `Category` | `string` | :heavy_check_mark: | Category within the arena (e.g. website, gamedev, uicomponent) | website | +| `Elo` | `float64` | :heavy_check_mark: | ELO rating from head-to-head arena battles | 1385.2 | +| `Rank` | `int64` | :heavy_check_mark: | Rank position within this arena+category among models available on OpenRouter (1 = highest ELO) | 5 | +| `WinRate` | `float64` | :heavy_check_mark: | Win rate percentage in arena battles | 62.5 | \ No newline at end of file diff --git a/docs/models/components/datetimeservertool.mdx b/docs/models/components/datetimeservertool.mdx index 8e2ab49cd..221fe0940 100644 --- a/docs/models/components/datetimeservertool.mdx +++ b/docs/models/components/datetimeservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: returns the current date and time | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.DatetimeServerToolConfig](../../models/components/datetimeservertoolconfig.mdx) | ➖ | Configuration for the openrouter:datetime server tool | \{
"timezone": "America/New_York"
} | -| `Type` | [components.DatetimeServerToolType](../../models/components/datetimeservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.DatetimeServerToolConfig](../../models/components/datetimeservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:datetime server tool | \{
"timezone": "America/New_York"
} | +| `Type` | [components.DatetimeServerToolType](../../models/components/datetimeservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/datetimeservertoolconfig.mdx b/docs/models/components/datetimeservertoolconfig.mdx index aa411f8fd..afcc032a2 100644 --- a/docs/models/components/datetimeservertoolconfig.mdx +++ b/docs/models/components/datetimeservertoolconfig.mdx @@ -9,4 +9,4 @@ Configuration for the openrouter:datetime server tool | Field | Type | Required | Description | Example | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Timezone` | `*string` | ➖ | IANA timezone name (e.g. "America/New_York"). Defaults to UTC. | America/New_York | \ No newline at end of file +| `Timezone` | `*string` | :heavy_minus_sign: | IANA timezone name (e.g. "America/New_York"). Defaults to UTC. | America/New_York | \ No newline at end of file diff --git a/docs/models/components/debugevent.mdx b/docs/models/components/debugevent.mdx index 95ed0a23e..e2ceb694d 100644 --- a/docs/models/components/debugevent.mdx +++ b/docs/models/components/debugevent.mdx @@ -9,6 +9,6 @@ Debug event emitted when debug.echo_upstream_body is true. Contains the transfor | Field | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Debug` | [components.DebugEventDebug](../../models/components/debugeventdebug.mdx) | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.DebugEventType](../../models/components/debugeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Debug` | [components.DebugEventDebug](../../models/components/debugeventdebug.mdx) | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.DebugEventType](../../models/components/debugeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/debugeventdebug.mdx b/docs/models/components/debugeventdebug.mdx index 1ad9be38d..9df19ec9a 100644 --- a/docs/models/components/debugeventdebug.mdx +++ b/docs/models/components/debugeventdebug.mdx @@ -6,5 +6,5 @@ title: "DebugEventDebug" | Field | Type | Required | Description | | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `EchoUpstreamBody` | map[string]`any` | ➖ | N/A | -| `Timings` | [*components.DebugEventTimings](../../models/components/debugeventtimings.mdx) | ➖ | N/A | \ No newline at end of file +| `EchoUpstreamBody` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Timings` | [*components.DebugEventTimings](../../models/components/debugeventtimings.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/debugeventtimings.mdx b/docs/models/components/debugeventtimings.mdx index 6dddd22b8..c925054ae 100644 --- a/docs/models/components/debugeventtimings.mdx +++ b/docs/models/components/debugeventtimings.mdx @@ -6,6 +6,6 @@ title: "DebugEventTimings" | Field | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `EpochMs` | `int64` | ✅ | N/A | -| `Event` | [components.DebugEventEvent](../../models/components/debugeventevent.mdx) | ✅ | N/A | -| `StartMs` | `int64` | ✅ | N/A | \ No newline at end of file +| `EpochMs` | `int64` | :heavy_check_mark: | N/A | +| `Event` | [components.DebugEventEvent](../../models/components/debugeventevent.mdx) | :heavy_check_mark: | N/A | +| `StartMs` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisions.mdx b/docs/models/components/decisions.mdx index 93156b90f..72fd4efa3 100644 --- a/docs/models/components/decisions.mdx +++ b/docs/models/components/decisions.mdx @@ -6,6 +6,6 @@ title: "Decisions" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/decisionsboxanswer.mdx b/docs/models/components/decisionsboxanswer.mdx index 35ae24ea9..a482ed7e5 100644 --- a/docs/models/components/decisionsboxanswer.mdx +++ b/docs/models/components/decisionsboxanswer.mdx @@ -6,6 +6,6 @@ title: "DecisionsBoxAnswer" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Box` | [components.Box](../../models/components/box.mdx) | ✅ | N/A | -| `Confidence` | `*float64` | ➖ | N/A | -| `Type` | [components.DecisionsBoxAnswerType](../../models/components/decisionsboxanswertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Box` | [components.Box](../../models/components/box.mdx) | :heavy_check_mark: | N/A | +| `Confidence` | `*float64` | :heavy_minus_sign: | N/A | +| `Type` | [components.DecisionsBoxAnswerType](../../models/components/decisionsboxanswertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsboxquestion.mdx b/docs/models/components/decisionsboxquestion.mdx index a885239b4..f505488ad 100644 --- a/docs/models/components/decisionsboxquestion.mdx +++ b/docs/models/components/decisionsboxquestion.mdx @@ -6,5 +6,5 @@ title: "DecisionsBoxQuestion" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Instructions` | [components.DecisionsBoxQuestionInstructions](../../models/components/decisionsboxquestioninstructions.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | -| `Type` | [components.DecisionsBoxQuestionType](../../models/components/decisionsboxquestiontype.mdx) | ✅ | N/A | \ No newline at end of file +| `Instructions` | [components.DecisionsBoxQuestionInstructions](../../models/components/decisionsboxquestioninstructions.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | +| `Type` | [components.DecisionsBoxQuestionType](../../models/components/decisionsboxquestiontype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionschoiceanswer.mdx b/docs/models/components/decisionschoiceanswer.mdx index cb067ff54..0b8964ab3 100644 --- a/docs/models/components/decisionschoiceanswer.mdx +++ b/docs/models/components/decisionschoiceanswer.mdx @@ -6,7 +6,7 @@ title: "DecisionsChoiceAnswer" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Choice` | `string` | ✅ | N/A | -| `Confidence` | `*float64` | ➖ | N/A | -| `Probabilities` | map[string]`float64` | ➖ | N/A | -| `Type` | [components.DecisionsChoiceAnswerType](../../models/components/decisionschoiceanswertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Choice` | `string` | :heavy_check_mark: | N/A | +| `Confidence` | `*float64` | :heavy_minus_sign: | N/A | +| `Probabilities` | map[string]`float64` | :heavy_minus_sign: | N/A | +| `Type` | [components.DecisionsChoiceAnswerType](../../models/components/decisionschoiceanswertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionschoicequestion.mdx b/docs/models/components/decisionschoicequestion.mdx index c894f9bf4..cd83cdf6c 100644 --- a/docs/models/components/decisionschoicequestion.mdx +++ b/docs/models/components/decisionschoicequestion.mdx @@ -6,6 +6,6 @@ title: "DecisionsChoiceQuestion" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Criteria` | map[string][*components.Criteria](../../models/components/criteria.mdx) | ✅ | N/A | -| `Instructions` | [components.DecisionsChoiceQuestionInstructions](../../models/components/decisionschoicequestioninstructions.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | -| `Type` | [components.DecisionsChoiceQuestionType](../../models/components/decisionschoicequestiontype.mdx) | ✅ | N/A | \ No newline at end of file +| `Criteria` | map[string][*components.Criteria](../../models/components/criteria.mdx) | :heavy_check_mark: | N/A | +| `Instructions` | [components.DecisionsChoiceQuestionInstructions](../../models/components/decisionschoicequestioninstructions.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | +| `Type` | [components.DecisionsChoiceQuestionType](../../models/components/decisionschoicequestiontype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsnoulanswer.mdx b/docs/models/components/decisionsnoulanswer.mdx index d644c3709..3aea0c5c2 100644 --- a/docs/models/components/decisionsnoulanswer.mdx +++ b/docs/models/components/decisionsnoulanswer.mdx @@ -6,5 +6,5 @@ title: "DecisionsNoulAnswer" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Noul` | `float64` | ✅ | N/A | -| `Type` | [components.DecisionsNoulAnswerType](../../models/components/decisionsnoulanswertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Noul` | `float64` | :heavy_check_mark: | N/A | +| `Type` | [components.DecisionsNoulAnswerType](../../models/components/decisionsnoulanswertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsnoulquestion.mdx b/docs/models/components/decisionsnoulquestion.mdx index fcaafca54..3566d9cc5 100644 --- a/docs/models/components/decisionsnoulquestion.mdx +++ b/docs/models/components/decisionsnoulquestion.mdx @@ -6,6 +6,6 @@ title: "DecisionsNoulQuestion" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Criteria` | [*components.DecisionsNoulQuestionCriteria](../../models/components/decisionsnoulquestioncriteria.mdx) | ➖ | N/A | -| `Instructions` | [components.DecisionsNoulQuestionInstructions](../../models/components/decisionsnoulquestioninstructions.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | -| `Type` | [components.DecisionsNoulQuestionType](../../models/components/decisionsnoulquestiontype.mdx) | ✅ | N/A | \ No newline at end of file +| `Criteria` | [*components.DecisionsNoulQuestionCriteria](../../models/components/decisionsnoulquestioncriteria.mdx) | :heavy_minus_sign: | N/A | +| `Instructions` | [components.DecisionsNoulQuestionInstructions](../../models/components/decisionsnoulquestioninstructions.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | +| `Type` | [components.DecisionsNoulQuestionType](../../models/components/decisionsnoulquestiontype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsnoulquestioncriteria.mdx b/docs/models/components/decisionsnoulquestioncriteria.mdx index e479d8a28..891e8365b 100644 --- a/docs/models/components/decisionsnoulquestioncriteria.mdx +++ b/docs/models/components/decisionsnoulquestioncriteria.mdx @@ -6,5 +6,5 @@ title: "DecisionsNoulQuestionCriteria" | Field | Type | Required | Description | | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | -| `False` | [components.False](../../models/components/false.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | -| `True` | [components.True](../../models/components/true.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | \ No newline at end of file +| `False` | [components.False](../../models/components/false.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | +| `True` | [components.True](../../models/components/true.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | \ No newline at end of file diff --git a/docs/models/components/decisionsrequest.mdx b/docs/models/components/decisionsrequest.mdx index c24687c92..eb2788da9 100644 --- a/docs/models/components/decisionsrequest.mdx +++ b/docs/models/components/decisionsrequest.mdx @@ -6,10 +6,10 @@ title: "DecisionsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Model` | `string` | ✅ | N/A | | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | N/A | \{
"allow_fallbacks": true
} | -| `Questions` | map[string][components.Questions](../../models/components/questions.mdx) | ✅ | N/A | | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `State` | [components.State](../../models/components/state.mdx) | ✅ | The content to evaluate: a plain string, or a JSON object or array of related context. | | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | N/A | \{
"allow_fallbacks": true
} | +| `Questions` | map[string][components.Questions](../../models/components/questions.mdx) | :heavy_check_mark: | N/A | | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `State` | [components.State](../../models/components/state.mdx) | :heavy_check_mark: | The content to evaluate: a plain string, or a JSON object or array of related context. | | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/decisionsresponse.mdx b/docs/models/components/decisionsresponse.mdx index 1c8031767..56c0634a1 100644 --- a/docs/models/components/decisionsresponse.mdx +++ b/docs/models/components/decisionsresponse.mdx @@ -6,8 +6,8 @@ title: "DecisionsResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Answers` | map[string][components.Answers](../../models/components/answers.mdx) | ✅ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `Model` | `string` | ✅ | N/A | -| `Provider` | `*string` | ➖ | N/A | -| `Usage` | [components.DecisionsResponseUsage](../../models/components/decisionsresponseusage.mdx) | ✅ | N/A | \ No newline at end of file +| `Answers` | map[string][components.Answers](../../models/components/answers.mdx) | :heavy_check_mark: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Provider` | `*string` | :heavy_minus_sign: | N/A | +| `Usage` | [components.DecisionsResponseUsage](../../models/components/decisionsresponseusage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsresponseusage.mdx b/docs/models/components/decisionsresponseusage.mdx index 1a9779095..c5f773737 100644 --- a/docs/models/components/decisionsresponseusage.mdx +++ b/docs/models/components/decisionsresponseusage.mdx @@ -6,6 +6,6 @@ title: "DecisionsResponseUsage" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Cost` | `*float64` | ➖ | N/A | -| `InputTokens` | `int64` | ✅ | N/A | -| `OutputTokens` | `int64` | ✅ | N/A | \ No newline at end of file +| `Cost` | `*float64` | :heavy_minus_sign: | N/A | +| `InputTokens` | `int64` | :heavy_check_mark: | N/A | +| `OutputTokens` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsscoreanswer.mdx b/docs/models/components/decisionsscoreanswer.mdx index dc4337ab7..b99f15142 100644 --- a/docs/models/components/decisionsscoreanswer.mdx +++ b/docs/models/components/decisionsscoreanswer.mdx @@ -6,8 +6,8 @@ title: "DecisionsScoreAnswer" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Confidence` | `*float64` | ➖ | N/A | -| `Legend` | map[string][components.Legend](../../models/components/legend.mdx) | ➖ | N/A | -| `Probabilities` | map[string]`float64` | ➖ | N/A | -| `Score` | `float64` | ✅ | N/A | -| `Type` | [components.DecisionsScoreAnswerType](../../models/components/decisionsscoreanswertype.mdx) | ✅ | N/A | \ No newline at end of file +| `Confidence` | `*float64` | :heavy_minus_sign: | N/A | +| `Legend` | map[string][components.Legend](../../models/components/legend.mdx) | :heavy_minus_sign: | N/A | +| `Probabilities` | map[string]`float64` | :heavy_minus_sign: | N/A | +| `Score` | `float64` | :heavy_check_mark: | N/A | +| `Type` | [components.DecisionsScoreAnswerType](../../models/components/decisionsscoreanswertype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/decisionsscorequestion.mdx b/docs/models/components/decisionsscorequestion.mdx index 92d2c0227..327538fd2 100644 --- a/docs/models/components/decisionsscorequestion.mdx +++ b/docs/models/components/decisionsscorequestion.mdx @@ -6,6 +6,6 @@ title: "DecisionsScoreQuestion" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Criteria` | [][components.Criterion](../../models/components/criterion.mdx) | ✅ | N/A | -| `Instructions` | [components.DecisionsScoreQuestionInstructions](../../models/components/decisionsscorequestioninstructions.mdx) | ✅ | A plain string, or a JSON object or array of structured guidance. | -| `Type` | [components.DecisionsScoreQuestionType](../../models/components/decisionsscorequestiontype.mdx) | ✅ | N/A | \ No newline at end of file +| `Criteria` | [][components.Criterion](../../models/components/criterion.mdx) | :heavy_check_mark: | N/A | +| `Instructions` | [components.DecisionsScoreQuestionInstructions](../../models/components/decisionsscorequestioninstructions.mdx) | :heavy_check_mark: | A plain string, or a JSON object or array of structured guidance. | +| `Type` | [components.DecisionsScoreQuestionType](../../models/components/decisionsscorequestiontype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/defaultparameters.mdx b/docs/models/components/defaultparameters.mdx index 97cbacfaa..e6ddbdebf 100644 --- a/docs/models/components/defaultparameters.mdx +++ b/docs/models/components/defaultparameters.mdx @@ -9,9 +9,9 @@ Default parameters for this model | Field | Type | Required | Description | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `RepetitionPenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `Temperature` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `TopK` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `TopP` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | \ No newline at end of file +| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `RepetitionPenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `Temperature` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `TopK` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `TopP` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/deferredbm25search.mdx b/docs/models/components/deferredbm25search.mdx index fc459d399..180448c0f 100644 --- a/docs/models/components/deferredbm25search.mdx +++ b/docs/models/components/deferredbm25search.mdx @@ -9,5 +9,5 @@ Deterministic BM25 retrieval over supplied tool definitions. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `MaxResults` | `*int64` | ➖ | N/A | -| `Type` | [components.DeferredBm25SearchType](../../models/components/deferredbm25searchtype.mdx) | ✅ | N/A | \ No newline at end of file +| `MaxResults` | `*int64` | :heavy_minus_sign: | N/A | +| `Type` | [components.DeferredBm25SearchType](../../models/components/deferredbm25searchtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/deferredcustomsearch.mdx b/docs/models/components/deferredcustomsearch.mdx index 13827b3b6..580017a2e 100644 --- a/docs/models/components/deferredcustomsearch.mdx +++ b/docs/models/components/deferredcustomsearch.mdx @@ -9,7 +9,7 @@ Caller-executed search returning existing tool identities under result_key. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `MaxResults` | `*int64` | ➖ | N/A | -| `ResultKey` | `string` | ✅ | N/A | -| `ToolID` | `string` | ✅ | N/A | -| `Type` | [components.DeferredCustomSearchType](../../models/components/deferredcustomsearchtype.mdx) | ✅ | N/A | \ No newline at end of file +| `MaxResults` | `*int64` | :heavy_minus_sign: | N/A | +| `ResultKey` | `string` | :heavy_check_mark: | N/A | +| `ToolID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.DeferredCustomSearchType](../../models/components/deferredcustomsearchtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/deferredregexsearch.mdx b/docs/models/components/deferredregexsearch.mdx index aa8ac32b5..a057c12c9 100644 --- a/docs/models/components/deferredregexsearch.mdx +++ b/docs/models/components/deferredregexsearch.mdx @@ -9,5 +9,5 @@ Versioned safe-regex retrieval over supplied tool definitions. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `MaxResults` | `*int64` | ➖ | N/A | -| `Type` | [components.DeferredRegexSearchType](../../models/components/deferredregexsearchtype.mdx) | ✅ | N/A | \ No newline at end of file +| `MaxResults` | `*int64` | :heavy_minus_sign: | N/A | +| `Type` | [components.DeferredRegexSearchType](../../models/components/deferredregexsearchtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/deferredtoolscontrol.mdx b/docs/models/components/deferredtoolscontrol.mdx index 17eaf43d9..136c83b9c 100644 --- a/docs/models/components/deferredtoolscontrol.mdx +++ b/docs/models/components/deferredtoolscontrol.mdx @@ -9,7 +9,7 @@ Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Profile` | [components.Profile](../../models/components/profile.mdx) | ✅ | Loading profile. Only `portable` is available in this release: OpenRouter serves deferral with router-built search and call wrappers on any model. | | -| `Protocol` | [components.Protocol](../../models/components/protocol.mdx) | ✅ | N/A | | -| `Search` | [components.DeferredToolsSearchStrategy](../../models/components/deferredtoolssearchstrategy.mdx) | ✅ | Router-local regex/BM25 or caller-owned custom search. | \{
"max_results": 5,
"type": "bm25"
} | -| `Validation` | [components.Validation](../../models/components/validation.mdx) | ✅ | Where tool-call arguments are checked against the original schema. Only `runtime` (in OpenRouter) is available in this release. | | \ No newline at end of file +| `Profile` | [components.Profile](../../models/components/profile.mdx) | :heavy_check_mark: | Loading profile. Only `portable` is available in this release: OpenRouter serves deferral with router-built search and call wrappers on any model. | | +| `Protocol` | [components.Protocol](../../models/components/protocol.mdx) | :heavy_check_mark: | N/A | | +| `Search` | [components.DeferredToolsSearchStrategy](../../models/components/deferredtoolssearchstrategy.mdx) | :heavy_check_mark: | Router-local regex/BM25 or caller-owned custom search. | \{
"max_results": 5,
"type": "bm25"
} | +| `Validation` | [components.Validation](../../models/components/validation.mdx) | :heavy_check_mark: | Where tool-call arguments are checked against the original schema. Only `runtime` (in OpenRouter) is available in this release. | | \ No newline at end of file diff --git a/docs/models/components/deletebyokkeyresponse.mdx b/docs/models/components/deletebyokkeyresponse.mdx index 77b479ff2..a658459f3 100644 --- a/docs/models/components/deletebyokkeyresponse.mdx +++ b/docs/models/components/deletebyokkeyresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteBYOKKeyResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Deleted` | `bool` | ✅ | Confirmation that the BYOK credential was deleted. | true | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Confirmation that the BYOK credential was deleted. | true | \ No newline at end of file diff --git a/docs/models/components/deleteguardrailresponse.mdx b/docs/models/components/deleteguardrailresponse.mdx index 89d0213ed..ee9b0e2bb 100644 --- a/docs/models/components/deleteguardrailresponse.mdx +++ b/docs/models/components/deleteguardrailresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteGuardrailResponse" | Field | Type | Required | Description | Example | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `Deleted` | `bool` | ✅ | Confirmation that the guardrail was deleted | true | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Confirmation that the guardrail was deleted | true | \ No newline at end of file diff --git a/docs/models/components/deleteinternrequest.mdx b/docs/models/components/deleteinternrequest.mdx deleted file mode 100644 index d768aac32..000000000 --- a/docs/models/components/deleteinternrequest.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "DeleteInternRequest" ---- - -Optional consent for a teardown that discards the workspace. - - -## Fields - -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `AcknowledgeWorkspaceLoss` | `*bool` | ➖ | Delete even though the workspace backup was not confirmed. Defaults to false, which refuses the teardown when a workspace archive is missing. | \ No newline at end of file diff --git a/docs/models/components/deleteinternresponse.mdx b/docs/models/components/deleteinternresponse.mdx deleted file mode 100644 index b2c5be667..000000000 --- a/docs/models/components/deleteinternresponse.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "DeleteInternResponse" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Deleting` | `bool` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/deleteobservabilitydestinationresponse.mdx b/docs/models/components/deleteobservabilitydestinationresponse.mdx index f9ccc0664..70b0298e4 100644 --- a/docs/models/components/deleteobservabilitydestinationresponse.mdx +++ b/docs/models/components/deleteobservabilitydestinationresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteObservabilityDestinationResponse" | Field | Type | Required | Description | | ------------------------- | ------------------------- | ------------------------- | ------------------------- | -| `Deleted` | `bool` | ✅ | Always `true` on success. | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Always `true` on success. | \ No newline at end of file diff --git a/docs/models/components/deleteprivateendpointresponse.mdx b/docs/models/components/deleteprivateendpointresponse.mdx index 2d90617f0..de6692d25 100644 --- a/docs/models/components/deleteprivateendpointresponse.mdx +++ b/docs/models/components/deleteprivateendpointresponse.mdx @@ -6,4 +6,4 @@ title: "DeletePrivateEndpointResponse" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Data` | [components.DeletePrivateEndpointResponseData](../../models/components/deleteprivateendpointresponsedata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.DeletePrivateEndpointResponseData](../../models/components/deleteprivateendpointresponsedata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/deleteprivateendpointresponsedata.mdx b/docs/models/components/deleteprivateendpointresponsedata.mdx index 30b1e6f79..71baa8231 100644 --- a/docs/models/components/deleteprivateendpointresponsedata.mdx +++ b/docs/models/components/deleteprivateendpointresponsedata.mdx @@ -6,4 +6,4 @@ title: "DeletePrivateEndpointResponseData" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file diff --git a/docs/models/components/deletescimgroupmappingresponse.mdx b/docs/models/components/deletescimgroupmappingresponse.mdx index 17491daf5..2e155cc07 100644 --- a/docs/models/components/deletescimgroupmappingresponse.mdx +++ b/docs/models/components/deletescimgroupmappingresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteScimGroupMappingResponse" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Deleted` | `bool` | ✅ | N/A | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/deleteworkspacebudgetresponse.mdx b/docs/models/components/deleteworkspacebudgetresponse.mdx index 3bc166739..1bdca53e3 100644 --- a/docs/models/components/deleteworkspacebudgetresponse.mdx +++ b/docs/models/components/deleteworkspacebudgetresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteWorkspaceBudgetResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `Deleted` | `bool` | ✅ | Confirmation that the budget was deleted (or did not exist) | true | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Confirmation that the budget was deleted (or did not exist) | true | \ No newline at end of file diff --git a/docs/models/components/deleteworkspaceresponse.mdx b/docs/models/components/deleteworkspaceresponse.mdx index a9c812cdb..895665447 100644 --- a/docs/models/components/deleteworkspaceresponse.mdx +++ b/docs/models/components/deleteworkspaceresponse.mdx @@ -6,4 +6,4 @@ title: "DeleteWorkspaceResponse" | Field | Type | Required | Description | Example | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `Deleted` | `bool` | ✅ | Confirmation that the workspace was deleted | true | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Confirmation that the workspace was deleted | true | \ No newline at end of file diff --git a/docs/models/components/easyinputmessage.mdx b/docs/models/components/easyinputmessage.mdx index 6d8ba22a6..736d5df2e 100644 --- a/docs/models/components/easyinputmessage.mdx +++ b/docs/models/components/easyinputmessage.mdx @@ -6,7 +6,7 @@ title: "EasyInputMessage" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[components.EasyInputMessageContentUnion2](../../models/components/easyinputmessagecontentunion2.mdx)] | ➖ | N/A | | -| `Phase` | optionalnullable.OptionalNullable[[components.EasyInputMessagePhaseUnion](../../models/components/easyinputmessagephaseunion.mdx)] | ➖ | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | final_answer | -| `Role` | [components.EasyInputMessageRoleUnion](../../models/components/easyinputmessageroleunion.mdx) | ✅ | N/A | | -| `Type` | [*components.EasyInputMessageTypeMessage](../../models/components/easyinputmessagetypemessage.mdx) | ➖ | N/A | | \ No newline at end of file +| `Content` | optionalnullable.OptionalNullable[[components.EasyInputMessageContentUnion2](../../models/components/easyinputmessagecontentunion2.mdx)] | :heavy_minus_sign: | N/A | | +| `Phase` | optionalnullable.OptionalNullable[[components.EasyInputMessagePhaseUnion](../../models/components/easyinputmessagephaseunion.mdx)] | :heavy_minus_sign: | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | final_answer | +| `Role` | [components.EasyInputMessageRoleUnion](../../models/components/easyinputmessageroleunion.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [*components.EasyInputMessageTypeMessage](../../models/components/easyinputmessagetypemessage.mdx) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/easyinputmessagecontentinputimage.mdx b/docs/models/components/easyinputmessagecontentinputimage.mdx index bf042ea8f..044ea66d3 100644 --- a/docs/models/components/easyinputmessagecontentinputimage.mdx +++ b/docs/models/components/easyinputmessagecontentinputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Detail` | [components.EasyInputMessageDetail](../../models/components/easyinputmessagedetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.EasyInputMessageTypeInputImage](../../models/components/easyinputmessagetypeinputimage.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.EasyInputMessageDetail](../../models/components/easyinputmessagedetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.EasyInputMessageTypeInputImage](../../models/components/easyinputmessagetypeinputimage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/edgenetworktimeoutresponseerrordata.mdx b/docs/models/components/edgenetworktimeoutresponseerrordata.mdx index d3c21a9a2..6039582e7 100644 --- a/docs/models/components/edgenetworktimeoutresponseerrordata.mdx +++ b/docs/models/components/edgenetworktimeoutresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for EdgeNetworkTimeoutResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/editclearthinking20251015.mdx b/docs/models/components/editclearthinking20251015.mdx index 9b1d54f87..fe22b8b8c 100644 --- a/docs/models/components/editclearthinking20251015.mdx +++ b/docs/models/components/editclearthinking20251015.mdx @@ -6,5 +6,5 @@ title: "EditClearThinking20251015" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Keep` | [*components.Keep](../../models/components/keep.mdx) | ➖ | N/A | -| `Type` | [components.TypeClearThinking20251015](../../models/components/typeclearthinking20251015.mdx) | ✅ | N/A | \ No newline at end of file +| `Keep` | [*components.Keep](../../models/components/keep.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.TypeClearThinking20251015](../../models/components/typeclearthinking20251015.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/editcleartooluses20250919.mdx b/docs/models/components/editcleartooluses20250919.mdx index 9d615885c..c91abc41e 100644 --- a/docs/models/components/editcleartooluses20250919.mdx +++ b/docs/models/components/editcleartooluses20250919.mdx @@ -6,9 +6,9 @@ title: "EditClearToolUses20250919" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ClearAtLeast` | optionalnullable.OptionalNullable[[components.AnthropicInputTokensClearAtLeast](../../models/components/anthropicinputtokensclearatleast.mdx)] | ➖ | N/A | \{
"type": "input_tokens",
"value": 50000
} | -| `ClearToolInputs` | optionalnullable.OptionalNullable[[components.ClearToolInputs](../../models/components/cleartoolinputs.mdx)] | ➖ | N/A | | -| `ExcludeTools` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | | -| `Keep` | [*components.AnthropicToolUsesKeep](../../models/components/anthropictooluseskeep.mdx) | ➖ | N/A | \{
"type": "tool_uses",
"value": 5
} | -| `Trigger` | [*components.Trigger](../../models/components/trigger.mdx) | ➖ | N/A | | -| `Type` | [components.TypeClearToolUses20250919](../../models/components/typecleartooluses20250919.mdx) | ✅ | N/A | | \ No newline at end of file +| `ClearAtLeast` | optionalnullable.OptionalNullable[[components.AnthropicInputTokensClearAtLeast](../../models/components/anthropicinputtokensclearatleast.mdx)] | :heavy_minus_sign: | N/A | \{
"type": "input_tokens",
"value": 50000
} | +| `ClearToolInputs` | optionalnullable.OptionalNullable[[components.ClearToolInputs](../../models/components/cleartoolinputs.mdx)] | :heavy_minus_sign: | N/A | | +| `ExcludeTools` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | | +| `Keep` | [*components.AnthropicToolUsesKeep](../../models/components/anthropictooluseskeep.mdx) | :heavy_minus_sign: | N/A | \{
"type": "tool_uses",
"value": 5
} | +| `Trigger` | [*components.Trigger](../../models/components/trigger.mdx) | :heavy_minus_sign: | N/A | | +| `Type` | [components.TypeClearToolUses20250919](../../models/components/typecleartooluses20250919.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/editcompact20260112.mdx b/docs/models/components/editcompact20260112.mdx index 8cb493fb9..c294056ba 100644 --- a/docs/models/components/editcompact20260112.mdx +++ b/docs/models/components/editcompact20260112.mdx @@ -6,7 +6,7 @@ title: "EditCompact20260112" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `Instructions` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `PauseAfterCompaction` | `*bool` | ➖ | N/A | | -| `Trigger` | optionalnullable.OptionalNullable[[components.TriggerInputTokens](../../models/components/triggerinputtokens.mdx)] | ➖ | N/A | \{
"type": "input_tokens",
"value": 100000
} | -| `Type` | [components.TypeCompact20260112](../../models/components/typecompact20260112.mdx) | ✅ | N/A | | \ No newline at end of file +| `Instructions` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `PauseAfterCompaction` | `*bool` | :heavy_minus_sign: | N/A | | +| `Trigger` | optionalnullable.OptionalNullable[[components.TriggerInputTokens](../../models/components/triggerinputtokens.mdx)] | :heavy_minus_sign: | N/A | \{
"type": "input_tokens",
"value": 100000
} | +| `Type` | [components.TypeCompact20260112](../../models/components/typecompact20260112.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/embeddings.mdx b/docs/models/components/embeddings.mdx index 6410696de..9ab5f3958 100644 --- a/docs/models/components/embeddings.mdx +++ b/docs/models/components/embeddings.mdx @@ -6,6 +6,6 @@ title: "Embeddings" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/endpointinfo.mdx b/docs/models/components/endpointinfo.mdx index 2e807e4d1..f3a2d1c25 100644 --- a/docs/models/components/endpointinfo.mdx +++ b/docs/models/components/endpointinfo.mdx @@ -6,6 +6,6 @@ title: "EndpointInfo" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Model` | `string` | ✅ | N/A | -| `Provider` | `string` | ✅ | N/A | -| `Selected` | `bool` | ✅ | N/A | \ No newline at end of file +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Provider` | `string` | :heavy_check_mark: | N/A | +| `Selected` | `bool` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/endpointsmetadata.mdx b/docs/models/components/endpointsmetadata.mdx index 99b5beaab..68adcf3d8 100644 --- a/docs/models/components/endpointsmetadata.mdx +++ b/docs/models/components/endpointsmetadata.mdx @@ -6,5 +6,5 @@ title: "EndpointsMetadata" | Field | Type | Required | Description | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `Available` | [][components.EndpointInfo](../../models/components/endpointinfo.mdx) | ✅ | N/A | -| `Total` | `int64` | ✅ | N/A | \ No newline at end of file +| `Available` | [][components.EndpointInfo](../../models/components/endpointinfo.mdx) | :heavy_check_mark: | N/A | +| `Total` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/enumcapability.mdx b/docs/models/components/enumcapability.mdx index 11432f782..8948f3874 100644 --- a/docs/models/components/enumcapability.mdx +++ b/docs/models/components/enumcapability.mdx @@ -9,5 +9,5 @@ A parameter that accepts one of a discrete set of string values. | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Type` | [components.EnumCapabilityType](../../models/components/enumcapabilitytype.mdx) | ✅ | N/A | -| `Values` | []`string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.EnumCapabilityType](../../models/components/enumcapabilitytype.mdx) | :heavy_check_mark: | N/A | +| `Values` | []`string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/errorevent.mdx b/docs/models/components/errorevent.mdx index 4d0da7226..1d817e45d 100644 --- a/docs/models/components/errorevent.mdx +++ b/docs/models/components/errorevent.mdx @@ -9,8 +9,8 @@ Event emitted when an error occurs during streaming | Field | Type | Required | Description | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Code` | `*string` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Param` | `*string` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ErrorEventType](../../models/components/erroreventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Code` | `*string` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Param` | `*string` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ErrorEventType](../../models/components/erroreventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/externaluser.mdx b/docs/models/components/externaluser.mdx index 99538d461..16b97ca81 100644 --- a/docs/models/components/externaluser.mdx +++ b/docs/models/components/externaluser.mdx @@ -6,7 +6,7 @@ title: "ExternalUser" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | Registration creation time. | 2026-09-16T12:00:00Z | -| `IsActive` | `bool` | ✅ | Whether this registration is active. Not an inference authorization decision. | true | -| `UpdatedAt` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | Last registration lifecycle update time. | 2026-09-16T12:00:00Z | -| `User` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file +| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Registration creation time. | 2026-09-16T12:00:00Z | +| `IsActive` | `bool` | :heavy_check_mark: | Whether this registration is active. Not an inference authorization decision. | true | +| `UpdatedAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | Last registration lifecycle update time. | 2026-09-16T12:00:00Z | +| `User` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file diff --git a/docs/models/components/externaluserresponse.mdx b/docs/models/components/externaluserresponse.mdx index d0cabae74..89b1f912e 100644 --- a/docs/models/components/externaluserresponse.mdx +++ b/docs/models/components/externaluserresponse.mdx @@ -6,4 +6,4 @@ title: "ExternalUserResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ExternalUser](../../models/components/externaluser.mdx) | ✅ | N/A | \{
"created_at": "2026-09-16T12:00:00Z",
"is_active": true,
"updated_at": "2026-09-16T12:00:00Z",
"user": "employee_123"
} | \ No newline at end of file +| `Data` | [components.ExternalUser](../../models/components/externaluser.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2026-09-16T12:00:00Z",
"is_active": true,
"updated_at": "2026-09-16T12:00:00Z",
"user": "employee_123"
} | \ No newline at end of file diff --git a/docs/models/components/failedmodel.mdx b/docs/models/components/failedmodel.mdx index b83d615bc..0913c63d2 100644 --- a/docs/models/components/failedmodel.mdx +++ b/docs/models/components/failedmodel.mdx @@ -6,6 +6,6 @@ title: "FailedModel" | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Error` | `string` | ✅ | Error message describing why the model failed. | -| `Model` | `string` | ✅ | Slug of the analysis model that failed. | -| `StatusCode` | `*int64` | ➖ | HTTP status code from the upstream response, when available (e.g. 402, 429). | \ No newline at end of file +| `Error` | `string` | :heavy_check_mark: | Error message describing why the model failed. | +| `Model` | `string` | :heavy_check_mark: | Slug of the analysis model that failed. | +| `StatusCode` | `*int64` | :heavy_minus_sign: | HTTP status code from the upstream response, when available (e.g. 402, 429). | \ No newline at end of file diff --git a/docs/models/components/filecitation.mdx b/docs/models/components/filecitation.mdx index b58ad1812..94c5664c9 100644 --- a/docs/models/components/filecitation.mdx +++ b/docs/models/components/filecitation.mdx @@ -6,7 +6,7 @@ title: "FileCitation" | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `Index` | `int64` | ✅ | N/A | -| `Type` | [components.FileCitationType](../../models/components/filecitationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `Index` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FileCitationType](../../models/components/filecitationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fileparserplugin.mdx b/docs/models/components/fileparserplugin.mdx index 0078bf85c..bc1a76b33 100644 --- a/docs/models/components/fileparserplugin.mdx +++ b/docs/models/components/fileparserplugin.mdx @@ -6,6 +6,6 @@ title: "FileParserPlugin" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | Set to false to disable the file-parser plugin for this request. Defaults to true. | | -| `ID` | [components.FileParserPluginID](../../models/components/fileparserpluginid.mdx) | ✅ | N/A | | -| `Pdf` | [*components.PDFParserOptions](../../models/components/pdfparseroptions.mdx) | ➖ | Options for PDF parsing. | \{
"engine": "cloudflare-ai"
} | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the file-parser plugin for this request. Defaults to true. | | +| `ID` | [components.FileParserPluginID](../../models/components/fileparserpluginid.mdx) | :heavy_check_mark: | N/A | | +| `Pdf` | [*components.PDFParserOptions](../../models/components/pdfparseroptions.mdx) | :heavy_minus_sign: | Options for PDF parsing. | \{
"engine": "cloudflare-ai"
} | \ No newline at end of file diff --git a/docs/models/components/filepath.mdx b/docs/models/components/filepath.mdx index 7e14886bb..f61c0fca2 100644 --- a/docs/models/components/filepath.mdx +++ b/docs/models/components/filepath.mdx @@ -6,6 +6,6 @@ title: "FilePath" | Field | Type | Required | Description | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `FileID` | `string` | ✅ | N/A | -| `Index` | `int64` | ✅ | N/A | -| `Type` | [components.FilePathType](../../models/components/filepathtype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Index` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FilePathType](../../models/components/filepathtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/filesearchservertool.mdx b/docs/models/components/filesearchservertool.mdx index 158840860..43f1d7ae4 100644 --- a/docs/models/components/filesearchservertool.mdx +++ b/docs/models/components/filesearchservertool.mdx @@ -9,8 +9,8 @@ File search tool configuration | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `Filters` | optionalnullable.OptionalNullable[[components.FiltersUnion](../../models/components/filtersunion.mdx)] | ➖ | N/A | -| `MaxNumResults` | `*int64` | ➖ | N/A | -| `RankingOptions` | [*components.RankingOptions](../../models/components/rankingoptions.mdx) | ➖ | N/A | -| `Type` | [components.TypeFileSearch](../../models/components/typefilesearch.mdx) | ✅ | N/A | -| `VectorStoreIds` | []`string` | ✅ | N/A | \ No newline at end of file +| `Filters` | optionalnullable.OptionalNullable[[components.FiltersUnion](../../models/components/filtersunion.mdx)] | :heavy_minus_sign: | N/A | +| `MaxNumResults` | `*int64` | :heavy_minus_sign: | N/A | +| `RankingOptions` | [*components.RankingOptions](../../models/components/rankingoptions.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.TypeFileSearch](../../models/components/typefilesearch.mdx) | :heavy_check_mark: | N/A | +| `VectorStoreIds` | []`string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/filesservertool.mdx b/docs/models/components/filesservertool.mdx index 2be107981..ab8dab343 100644 --- a/docs/models/components/filesservertool.mdx +++ b/docs/models/components/filesservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: read, write, edit, and list workspace files via | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `Parameters` | [*components.FilesServerToolConfig](../../models/components/filesservertoolconfig.mdx) | ➖ | Configuration for the openrouter:files server tool | \{} | -| `Type` | [components.FilesServerToolType](../../models/components/filesservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.FilesServerToolConfig](../../models/components/filesservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:files server tool | \{} | +| `Type` | [components.FilesServerToolType](../../models/components/filesservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/filters.mdx b/docs/models/components/filters.mdx index 6d8e6aa57..60fea37e5 100644 --- a/docs/models/components/filters.mdx +++ b/docs/models/components/filters.mdx @@ -6,6 +6,6 @@ title: "Filters" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Key` | `string` | ✅ | N/A | -| `Type` | [components.FiltersType](../../models/components/filterstype.mdx) | ✅ | N/A | -| `Value` | [components.FileSearchServerToolValue2](../../models/components/filesearchservertoolvalue2.mdx) | ✅ | N/A | \ No newline at end of file +| `Key` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.FiltersType](../../models/components/filterstype.mdx) | :heavy_check_mark: | N/A | +| `Value` | [components.FileSearchServerToolValue2](../../models/components/filesearchservertoolvalue2.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/forbiddenresponseerrordata.mdx b/docs/models/components/forbiddenresponseerrordata.mdx index 0a70f6384..fdd1cee6f 100644 --- a/docs/models/components/forbiddenresponseerrordata.mdx +++ b/docs/models/components/forbiddenresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for ForbiddenResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/formatgrammar.mdx b/docs/models/components/formatgrammar.mdx index 3e88803d8..135667ed3 100644 --- a/docs/models/components/formatgrammar.mdx +++ b/docs/models/components/formatgrammar.mdx @@ -6,6 +6,6 @@ title: "FormatGrammar" | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Definition` | `string` | ✅ | N/A | -| `Syntax` | [components.Syntax](../../models/components/syntax.mdx) | ✅ | N/A | -| `Type` | [components.FormatTypeGrammar](../../models/components/formattypegrammar.mdx) | ✅ | N/A | \ No newline at end of file +| `Definition` | `string` | :heavy_check_mark: | N/A | +| `Syntax` | [components.Syntax](../../models/components/syntax.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.FormatTypeGrammar](../../models/components/formattypegrammar.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/formatjsonobjectconfig.mdx b/docs/models/components/formatjsonobjectconfig.mdx index b0f3e3f45..9c1f2765a 100644 --- a/docs/models/components/formatjsonobjectconfig.mdx +++ b/docs/models/components/formatjsonobjectconfig.mdx @@ -9,4 +9,4 @@ JSON object response format | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Type` | [components.FormatJSONObjectConfigType](../../models/components/formatjsonobjectconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.FormatJSONObjectConfigType](../../models/components/formatjsonobjectconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/formatjsonschemaconfig.mdx b/docs/models/components/formatjsonschemaconfig.mdx index b7b34d9bc..8fe262e3b 100644 --- a/docs/models/components/formatjsonschemaconfig.mdx +++ b/docs/models/components/formatjsonschemaconfig.mdx @@ -9,8 +9,8 @@ JSON schema constrained response format | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Description` | `*string` | ➖ | N/A | -| `Name` | `string` | ✅ | N/A | -| `Schema` | map[string]`any` | ✅ | N/A | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | -| `Type` | [components.FormatJSONSchemaConfigType](../../models/components/formatjsonschemaconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Description` | `*string` | :heavy_minus_sign: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Schema` | map[string]`any` | :heavy_check_mark: | N/A | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | +| `Type` | [components.FormatJSONSchemaConfigType](../../models/components/formatjsonschemaconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/formattext.mdx b/docs/models/components/formattext.mdx index 247a483e4..0fdb00302 100644 --- a/docs/models/components/formattext.mdx +++ b/docs/models/components/formattext.mdx @@ -6,4 +6,4 @@ title: "FormatText" | Field | Type | Required | Description | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Type` | [components.FormatTypeText](../../models/components/formattypetext.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.FormatTypeText](../../models/components/formattypetext.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/formattextconfig.mdx b/docs/models/components/formattextconfig.mdx index 8a218ad9c..81c37e82f 100644 --- a/docs/models/components/formattextconfig.mdx +++ b/docs/models/components/formattextconfig.mdx @@ -9,4 +9,4 @@ Plain text response format | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Type` | [components.FormatTextConfigType](../../models/components/formattextconfigtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.FormatTextConfigType](../../models/components/formattextconfigtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/frameimage.mdx b/docs/models/components/frameimage.mdx index 1f7890601..daccd1cbb 100644 --- a/docs/models/components/frameimage.mdx +++ b/docs/models/components/frameimage.mdx @@ -6,6 +6,6 @@ title: "FrameImage" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `ImageURL` | [components.FrameImageImageURL](../../models/components/frameimageimageurl.mdx) | ✅ | N/A | | -| `Type` | [components.FrameImageType](../../models/components/frameimagetype.mdx) | ✅ | N/A | | -| `FrameType` | [components.FrameType](../../models/components/frametype.mdx) | ✅ | Whether this image represents the first or last frame of the video | first_frame | \ No newline at end of file +| `ImageURL` | [components.FrameImageImageURL](../../models/components/frameimageimageurl.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.FrameImageType](../../models/components/frameimagetype.mdx) | :heavy_check_mark: | N/A | | +| `FrameType` | [components.FrameType](../../models/components/frametype.mdx) | :heavy_check_mark: | Whether this image represents the first or last frame of the video | first_frame | \ No newline at end of file diff --git a/docs/models/components/frameimageimageurl.mdx b/docs/models/components/frameimageimageurl.mdx index 39cd43de0..8bdba9c99 100644 --- a/docs/models/components/frameimageimageurl.mdx +++ b/docs/models/components/frameimageimageurl.mdx @@ -6,4 +6,4 @@ title: "FrameImageImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/freemodeldailyrequests.mdx b/docs/models/components/freemodeldailyrequests.mdx index e18912499..f158ace0e 100644 --- a/docs/models/components/freemodeldailyrequests.mdx +++ b/docs/models/components/freemodeldailyrequests.mdx @@ -9,6 +9,6 @@ Free-model (`:free` variant) daily request quota for the account that owns the k | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Limit` | `int64` | ✅ | Free-model requests the account may make per UTC day; the ceiling depends on total credits purchased and is independent of `is_free_tier` | 50 | -| `Remaining` | `int64` | ✅ | Free-model requests left in the current UTC day | 38 | -| `Used` | `int64` | ✅ | Free-model requests recorded for the account so far in the current UTC day | 12 | \ No newline at end of file +| `Limit` | `int64` | :heavy_check_mark: | Free-model requests the account may make per UTC day; the ceiling depends on total credits purchased and is independent of `is_free_tier` | 50 | +| `Remaining` | `int64` | :heavy_check_mark: | Free-model requests left in the current UTC day | 38 | +| `Used` | `int64` | :heavy_check_mark: | Free-model requests recorded for the account so far in the current UTC day | 12 | \ No newline at end of file diff --git a/docs/models/components/functioncallargsdeltaevent.mdx b/docs/models/components/functioncallargsdeltaevent.mdx index ae9f290b9..fe87ef024 100644 --- a/docs/models/components/functioncallargsdeltaevent.mdx +++ b/docs/models/components/functioncallargsdeltaevent.mdx @@ -9,8 +9,8 @@ Event emitted when function call arguments are being streamed | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FunctionCallArgsDeltaEventType](../../models/components/functioncallargsdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FunctionCallArgsDeltaEventType](../../models/components/functioncallargsdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/functioncallargsdoneevent.mdx b/docs/models/components/functioncallargsdoneevent.mdx index d4141284b..73e403d85 100644 --- a/docs/models/components/functioncallargsdoneevent.mdx +++ b/docs/models/components/functioncallargsdoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when function call arguments streaming is complete | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FunctionCallArgsDoneEventType](../../models/components/functioncallargsdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FunctionCallArgsDoneEventType](../../models/components/functioncallargsdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/functioncallitem.mdx b/docs/models/components/functioncallitem.mdx index c75b6b7e8..82c411021 100644 --- a/docs/models/components/functioncallitem.mdx +++ b/docs/models/components/functioncallitem.mdx @@ -9,13 +9,13 @@ A function call initiated by the model | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | | -| `Async` | optionalnullable.OptionalNullable[`bool`] | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | optionalnullable.OptionalNullable[`string`] | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `SubagentID` | optionalnullable.OptionalNullable[`string`] | ➖ | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | -| `SubagentItems` | optionalnullable.OptionalNullable[[][components.FunctionCallItemSubagentItem](../../models/components/functioncallitemsubagentitem.mdx)] | ➖ | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | -| `Type` | [components.FunctionCallItemType](../../models/components/functioncallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Async` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `SubagentID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | +| `SubagentItems` | optionalnullable.OptionalNullable[[][components.FunctionCallItemSubagentItem](../../models/components/functioncallitemsubagentitem.mdx)] | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | +| `Type` | [components.FunctionCallItemType](../../models/components/functioncallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/functioncallitemsubagentitem.mdx b/docs/models/components/functioncallitemsubagentitem.mdx index 85a2fc0ac..5df847fde 100644 --- a/docs/models/components/functioncallitemsubagentitem.mdx +++ b/docs/models/components/functioncallitemsubagentitem.mdx @@ -6,5 +6,5 @@ title: "FunctionCallItemSubagentItem" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/functioncalloutputitem.mdx b/docs/models/components/functioncalloutputitem.mdx index 73b3b8ba3..6260074c3 100644 --- a/docs/models/components/functioncalloutputitem.mdx +++ b/docs/models/components/functioncalloutputitem.mdx @@ -9,8 +9,8 @@ The output from a function call execution | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Output` | [components.FunctionCallOutputItemOutputUnion2](../../models/components/functioncalloutputitemoutputunion2.mdx) | ✅ | N/A | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.FunctionCallOutputItemTypeFunctionCallOutput](../../models/components/functioncalloutputitemtypefunctioncalloutput.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Output` | [components.FunctionCallOutputItemOutputUnion2](../../models/components/functioncalloutputitemoutputunion2.mdx) | :heavy_check_mark: | N/A | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.FunctionCallOutputItemTypeFunctionCallOutput](../../models/components/functioncalloutputitemtypefunctioncalloutput.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/functioncalloutputitemoutputinputimage.mdx b/docs/models/components/functioncalloutputitemoutputinputimage.mdx index 10dd44130..f388a06c7 100644 --- a/docs/models/components/functioncalloutputitemoutputinputimage.mdx +++ b/docs/models/components/functioncalloutputitemoutputinputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Detail` | [components.FunctionCallOutputItemDetail](../../models/components/functioncalloutputitemdetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.FunctionCallOutputItemOutputType](../../models/components/functioncalloutputitemoutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.FunctionCallOutputItemDetail](../../models/components/functioncalloutputitemdetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.FunctionCallOutputItemOutputType](../../models/components/functioncalloutputitemoutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusionanalysisresult.mdx b/docs/models/components/fusionanalysisresult.mdx index b5434cf01..2b8574ff9 100644 --- a/docs/models/components/fusionanalysisresult.mdx +++ b/docs/models/components/fusionanalysisresult.mdx @@ -9,8 +9,8 @@ Structured analysis produced by the fusion analyst model. | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `BlindSpots` | []`string` | ✅ | N/A | -| `Consensus` | []`string` | ✅ | N/A | -| `Contradictions` | [][components.Contradiction](../../models/components/contradiction.mdx) | ✅ | N/A | -| `PartialCoverage` | [][components.PartialCoverage](../../models/components/partialcoverage.mdx) | ✅ | N/A | -| `UniqueInsights` | [][components.UniqueInsight](../../models/components/uniqueinsight.mdx) | ✅ | N/A | \ No newline at end of file +| `BlindSpots` | []`string` | :heavy_check_mark: | N/A | +| `Consensus` | []`string` | :heavy_check_mark: | N/A | +| `Contradictions` | [][components.Contradiction](../../models/components/contradiction.mdx) | :heavy_check_mark: | N/A | +| `PartialCoverage` | [][components.PartialCoverage](../../models/components/partialcoverage.mdx) | :heavy_check_mark: | N/A | +| `UniqueInsights` | [][components.UniqueInsight](../../models/components/uniqueinsight.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallanalysiscompletedevent.mdx b/docs/models/components/fusioncallanalysiscompletedevent.mdx index 54a4002e4..1bccc6e82 100644 --- a/docs/models/components/fusioncallanalysiscompletedevent.mdx +++ b/docs/models/components/fusioncallanalysiscompletedevent.mdx @@ -9,8 +9,8 @@ Emitted when the fusion analyst completes with the structured analysis. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Analysis` | [components.FusionAnalysisResult](../../models/components/fusionanalysisresult.mdx) | ✅ | Structured analysis produced by the fusion analyst model. | \{
"blind_spots": [
"No model considered the impact on existing API consumers."
],
"consensus": [
"All panel models agree the request is asking for a concise summary."
],
"contradictions": [
\{
"stances": [
\{
"model": "openai/gpt-5",
"stance": "Favors an incremental rollout."
},
\{
"model": "anthropic/claude-sonnet-4.5",
"stance": "Favors a single coordinated migration."
}
],
"topic": "Recommended approach"
}
],
"partial_coverage": [
\{
"models": [
"openai/gpt-5"
],
"point": "Only one model addressed the rollback strategy."
}
],
"unique_insights": [
\{
"insight": "Highlighted a backwards-compatibility risk the other models missed.",
"model": "anthropic/claude-sonnet-4.5"
}
]
} | -| `ItemID` | `string` | ✅ | N/A | | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.FusionCallAnalysisCompletedEventType](../../models/components/fusioncallanalysiscompletedeventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Analysis` | [components.FusionAnalysisResult](../../models/components/fusionanalysisresult.mdx) | :heavy_check_mark: | Structured analysis produced by the fusion analyst model. | \{
"blind_spots": [
"No model considered the impact on existing API consumers."
],
"consensus": [
"All panel models agree the request is asking for a concise summary."
],
"contradictions": [
\{
"stances": [
\{
"model": "openai/gpt-5",
"stance": "Favors an incremental rollout."
},
\{
"model": "anthropic/claude-sonnet-4.5",
"stance": "Favors a single coordinated migration."
}
],
"topic": "Recommended approach"
}
],
"partial_coverage": [
\{
"models": [
"openai/gpt-5"
],
"point": "Only one model addressed the rollback strategy."
}
],
"unique_insights": [
\{
"insight": "Highlighted a backwards-compatibility risk the other models missed.",
"model": "anthropic/claude-sonnet-4.5"
}
]
} | +| `ItemID` | `string` | :heavy_check_mark: | N/A | | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.FusionCallAnalysisCompletedEventType](../../models/components/fusioncallanalysiscompletedeventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/fusioncallanalysisinprogressevent.mdx b/docs/models/components/fusioncallanalysisinprogressevent.mdx index 6d0ba5a6f..4a41b40fe 100644 --- a/docs/models/components/fusioncallanalysisinprogressevent.mdx +++ b/docs/models/components/fusioncallanalysisinprogressevent.mdx @@ -9,9 +9,9 @@ Emitted when the fusion analyst starts producing the structured analysis. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AnalystModel` | `string` | ✅ | Slug of the model producing the structured analysis. | -| `ItemID` | `string` | ✅ | N/A | -| ~~`JudgeModel`~~ | `string` | ✅ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated alias of `analyst_model`, kept so existing consumers keep working. Always carries the same value. Use `analyst_model`. | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallAnalysisInProgressEventType](../../models/components/fusioncallanalysisinprogresseventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `AnalystModel` | `string` | :heavy_check_mark: | Slug of the model producing the structured analysis. | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| ~~`JudgeModel`~~ | `string` | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated alias of `analyst_model`, kept so existing consumers keep working. Always carries the same value. Use `analyst_model`. | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallAnalysisInProgressEventType](../../models/components/fusioncallanalysisinprogresseventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallcompletedevent.mdx b/docs/models/components/fusioncallcompletedevent.mdx index 21bea64b0..ade9c1d7d 100644 --- a/docs/models/components/fusioncallcompletedevent.mdx +++ b/docs/models/components/fusioncallcompletedevent.mdx @@ -9,7 +9,7 @@ Emitted when the openrouter:fusion tool call finishes. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallCompletedEventType](../../models/components/fusioncallcompletedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallCompletedEventType](../../models/components/fusioncallcompletedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallinprogressevent.mdx b/docs/models/components/fusioncallinprogressevent.mdx index 9b6b28e15..22884b2a1 100644 --- a/docs/models/components/fusioncallinprogressevent.mdx +++ b/docs/models/components/fusioncallinprogressevent.mdx @@ -9,7 +9,7 @@ Emitted when an openrouter:fusion tool call begins executing. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallInProgressEventType](../../models/components/fusioncallinprogresseventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallInProgressEventType](../../models/components/fusioncallinprogresseventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallpaneladdedevent.mdx b/docs/models/components/fusioncallpaneladdedevent.mdx index 3b00fc790..08d121478 100644 --- a/docs/models/components/fusioncallpaneladdedevent.mdx +++ b/docs/models/components/fusioncallpaneladdedevent.mdx @@ -9,8 +9,8 @@ Emitted when a fusion analysis-panel model starts. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallPanelAddedEventType](../../models/components/fusioncallpaneladdedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallPanelAddedEventType](../../models/components/fusioncallpaneladdedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallpanelcompletedevent.mdx b/docs/models/components/fusioncallpanelcompletedevent.mdx index 2018cd9e2..8b41b3677 100644 --- a/docs/models/components/fusioncallpanelcompletedevent.mdx +++ b/docs/models/components/fusioncallpanelcompletedevent.mdx @@ -9,9 +9,9 @@ Emitted when a fusion panel model finishes with its full content. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Content` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallPanelCompletedEventType](../../models/components/fusioncallpanelcompletedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallPanelCompletedEventType](../../models/components/fusioncallpanelcompletedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallpaneldeltaevent.mdx b/docs/models/components/fusioncallpaneldeltaevent.mdx index fa7d404bf..7bfa29b8f 100644 --- a/docs/models/components/fusioncallpaneldeltaevent.mdx +++ b/docs/models/components/fusioncallpaneldeltaevent.mdx @@ -9,9 +9,9 @@ Incremental content token from a fusion panel model. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallPanelDeltaEventType](../../models/components/fusioncallpaneldeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallPanelDeltaEventType](../../models/components/fusioncallpaneldeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallpanelfailedevent.mdx b/docs/models/components/fusioncallpanelfailedevent.mdx index 9c985ba28..0c0a45443 100644 --- a/docs/models/components/fusioncallpanelfailedevent.mdx +++ b/docs/models/components/fusioncallpanelfailedevent.mdx @@ -9,10 +9,10 @@ Emitted when a fusion panel model fails. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Error` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `StatusCode` | `*int64` | ➖ | N/A | -| `Type` | [components.FusionCallPanelFailedEventType](../../models/components/fusioncallpanelfailedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Error` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `StatusCode` | `*int64` | :heavy_minus_sign: | N/A | +| `Type` | [components.FusionCallPanelFailedEventType](../../models/components/fusioncallpanelfailedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusioncallpanelreasoningdeltaevent.mdx b/docs/models/components/fusioncallpanelreasoningdeltaevent.mdx index 361465812..6f9e454fc 100644 --- a/docs/models/components/fusioncallpanelreasoningdeltaevent.mdx +++ b/docs/models/components/fusioncallpanelreasoningdeltaevent.mdx @@ -9,9 +9,9 @@ Incremental reasoning token from a fusion panel model. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.FusionCallPanelReasoningDeltaEventType](../../models/components/fusioncallpanelreasoningdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.FusionCallPanelReasoningDeltaEventType](../../models/components/fusioncallpanelreasoningdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/fusionplugin.mdx b/docs/models/components/fusionplugin.mdx index 59e1e8bee..cfee02f6c 100644 --- a/docs/models/components/fusionplugin.mdx +++ b/docs/models/components/fusionplugin.mdx @@ -6,10 +6,10 @@ title: "FusionPlugin" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AnalysisModels` | []`string` | ➖ | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, slugs of models to run in parallel as the "expert panel" the analyst analyzes. Each model receives the same user prompt with web_search + web_fetch enabled. Capped at 8 models to bound cost amplification. When omitted, defaults to the Quality preset from the /labs/fusion UI (~anthropic/claude-opus-latest, ~openai/gpt-sol-latest, ~google/gemini-pro-latest). | [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
] | -| `Enabled` | `*bool` | ➖ | Set to false to disable Fusion configuration for a run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool. Defaults to true. | | -| `ID` | [components.FusionPluginID](../../models/components/fusionpluginid.mdx) | ✅ | N/A | | -| `MaxToolCalls` | `*int64` | ➖ | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, the maximum number of tool-calling steps each panelist (analysis model) and the analyst model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 4. Capped at 16. | 12 | -| `Model` | `*string` | ➖ | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, the slug of the model that performs both the analyst step (with web_search + web_fetch) and the final synthesis. When omitted, defaults to the first model in the Quality preset. | ~anthropic/claude-opus-latest | -| `Preset` | [*components.PresetEnum](../../models/components/presetenum.mdx) | ➖ | Configuration for a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool. A curated OpenRouter preset (slugs follow `-`, e.g. `general-high`). Expands server-side into the preset's analysis_models panel and analyst model, so callers never name individual models. Explicitly provided `analysis_models` / `model` take precedence. | general-high | -| `Tools` | [][components.FusionPluginTool](../../models/components/fusionplugintool.mdx) | ➖ | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, server tools available to panelist and analyst inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only). | [
\{
"parameters": \{
"excluded_domains": [
"example.com"
]
},
"type": "openrouter:web_search"
},
\{
"type": "openrouter:web_fetch"
}
] | \ No newline at end of file +| `AnalysisModels` | []`string` | :heavy_minus_sign: | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, slugs of models to run in parallel as the "expert panel" the analyst analyzes. Each model receives the same user prompt with web_search + web_fetch enabled. Capped at 8 models to bound cost amplification. When omitted, defaults to the Quality preset from the /labs/fusion UI (~anthropic/claude-opus-latest, ~openai/gpt-sol-latest, ~google/gemini-pro-latest). | [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
] | +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable Fusion configuration for a run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool. Defaults to true. | | +| `ID` | [components.FusionPluginID](../../models/components/fusionpluginid.mdx) | :heavy_check_mark: | N/A | | +| `MaxToolCalls` | `*int64` | :heavy_minus_sign: | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, the maximum number of tool-calling steps each panelist (analysis model) and the analyst model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 4. Capped at 16. | 12 | +| `Model` | `*string` | :heavy_minus_sign: | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, the slug of the model that performs both the analyst step (with web_search + web_fetch) and the final synthesis. When omitted, defaults to the first model in the Quality preset. | ~anthropic/claude-opus-latest | +| `Preset` | [*components.PresetEnum](../../models/components/presetenum.mdx) | :heavy_minus_sign: | Configuration for a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool. A curated OpenRouter preset (slugs follow `-`, e.g. `general-high`). Expands server-side into the preset's analysis_models panel and analyst model, so callers never name individual models. Explicitly provided `analysis_models` / `model` take precedence. | general-high | +| `Tools` | [][components.FusionPluginTool](../../models/components/fusionplugintool.mdx) | :heavy_minus_sign: | For a Fusion run started by the `openrouter/fusion` model slug or `openrouter:fusion` server tool, server tools available to panelist and analyst inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only). | [
\{
"parameters": \{
"excluded_domains": [
"example.com"
]
},
"type": "openrouter:web_search"
},
\{
"type": "openrouter:web_fetch"
}
] | \ No newline at end of file diff --git a/docs/models/components/fusionplugintool.mdx b/docs/models/components/fusionplugintool.mdx index 63ce10cbb..224921368 100644 --- a/docs/models/components/fusionplugintool.mdx +++ b/docs/models/components/fusionplugintool.mdx @@ -6,5 +6,5 @@ title: "FusionPluginTool" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `Parameters` | map[string][*components.Parameters3](../../models/components/parameters3.mdx) | ➖ | Optional configuration forwarded as the tool's `parameters` object. | -| `Type` | `string` | ✅ | Server tool type identifier (e.g. "openrouter:web_search", "openrouter:web_fetch"). | \ No newline at end of file +| `Parameters` | map[string][*components.Parameters3](../../models/components/parameters3.mdx) | :heavy_minus_sign: | Optional configuration forwarded as the tool's `parameters` object. | +| `Type` | `string` | :heavy_check_mark: | Server tool type identifier (e.g. "openrouter:web_search", "openrouter:web_fetch"). | \ No newline at end of file diff --git a/docs/models/components/fusionservertoolconfig.mdx b/docs/models/components/fusionservertoolconfig.mdx index a0dd32e9a..53a2ab43c 100644 --- a/docs/models/components/fusionservertoolconfig.mdx +++ b/docs/models/components/fusionservertoolconfig.mdx @@ -9,11 +9,11 @@ Configuration for the openrouter:fusion server tool. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AnalysisModels` | []`string` | ➖ | Slugs of models to run in parallel as the analysis panel. Each model receives the user prompt with openrouter:web_search and openrouter:web_fetch enabled, then an analyst model summarizes the collective output into structured analysis JSON. Capped at 8 models to bound cost amplification. Defaults to the Quality preset from /labs/fusion. | [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
] | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `MaxCompletionTokens` | `*int64` | ➖ | Maximum number of output tokens (including reasoning tokens) each panelist and the analyst model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. Defaults to 16000 when omitted. | 16384 | -| `MaxToolCalls` | `*int64` | ➖ | Maximum number of tool-calling steps each panelist (analysis model) and the analyst model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 4. Capped at 16. | 12 | -| `Model` | `*string` | ➖ | Slug of the analyst model that produces the structured analysis JSON. Defaults to the model used in the outer API request. | ~anthropic/claude-opus-latest | -| `Reasoning` | [*components.FusionServerToolConfigReasoning](../../models/components/fusionservertoolconfigreasoning.mdx) | ➖ | Reasoning configuration forwarded to panelist and analyst inner calls. Use this to control reasoning effort and token budget for models that support extended thinking. | | -| `Temperature` | `*float64` | ➖ | Temperature forwarded to panelist inner calls. The analyst always runs at temperature 0 regardless of this value. When omitted, the provider's default applies. | 0.7 | -| `Tools` | [][components.FusionServerToolConfigTool](../../models/components/fusionservertoolconfigtool.mdx) | ➖ | Server tools available to panelist and analyst inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only). | [
\{
"parameters": \{
"excluded_domains": [
"example.com"
]
},
"type": "openrouter:web_search"
},
\{
"type": "openrouter:web_fetch"
}
] | \ No newline at end of file +| `AnalysisModels` | []`string` | :heavy_minus_sign: | Slugs of models to run in parallel as the analysis panel. Each model receives the user prompt with openrouter:web_search and openrouter:web_fetch enabled, then an analyst model summarizes the collective output into structured analysis JSON. Capped at 8 models to bound cost amplification. Defaults to the Quality preset from /labs/fusion. | [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
] | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `MaxCompletionTokens` | `*int64` | :heavy_minus_sign: | Maximum number of output tokens (including reasoning tokens) each panelist and the analyst model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. Defaults to 16000 when omitted. | 16384 | +| `MaxToolCalls` | `*int64` | :heavy_minus_sign: | Maximum number of tool-calling steps each panelist (analysis model) and the analyst model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 4. Capped at 16. | 12 | +| `Model` | `*string` | :heavy_minus_sign: | Slug of the analyst model that produces the structured analysis JSON. Defaults to the model used in the outer API request. | ~anthropic/claude-opus-latest | +| `Reasoning` | [*components.FusionServerToolConfigReasoning](../../models/components/fusionservertoolconfigreasoning.mdx) | :heavy_minus_sign: | Reasoning configuration forwarded to panelist and analyst inner calls. Use this to control reasoning effort and token budget for models that support extended thinking. | | +| `Temperature` | `*float64` | :heavy_minus_sign: | Temperature forwarded to panelist inner calls. The analyst always runs at temperature 0 regardless of this value. When omitted, the provider's default applies. | 0.7 | +| `Tools` | [][components.FusionServerToolConfigTool](../../models/components/fusionservertoolconfigtool.mdx) | :heavy_minus_sign: | Server tools available to panelist and analyst inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only). | [
\{
"parameters": \{
"excluded_domains": [
"example.com"
]
},
"type": "openrouter:web_search"
},
\{
"type": "openrouter:web_fetch"
}
] | \ No newline at end of file diff --git a/docs/models/components/fusionservertoolconfigreasoning.mdx b/docs/models/components/fusionservertoolconfigreasoning.mdx index ce20470f6..5f5a7eed8 100644 --- a/docs/models/components/fusionservertoolconfigreasoning.mdx +++ b/docs/models/components/fusionservertoolconfigreasoning.mdx @@ -9,5 +9,5 @@ Reasoning configuration forwarded to panelist and analyst inner calls. Use this | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Effort` | [*components.FusionServerToolConfigEffort](../../models/components/fusionservertoolconfigeffort.mdx) | ➖ | Reasoning effort level for panelist and analyst inner calls. | -| `MaxTokens` | `*int64` | ➖ | Maximum number of reasoning tokens each panelist and analyst model may use. Helps bound cost when models allocate too much budget to chain-of-thought. | \ No newline at end of file +| `Effort` | [*components.FusionServerToolConfigEffort](../../models/components/fusionservertoolconfigeffort.mdx) | :heavy_minus_sign: | Reasoning effort level for panelist and analyst inner calls. | +| `MaxTokens` | `*int64` | :heavy_minus_sign: | Maximum number of reasoning tokens each panelist and analyst model may use. Helps bound cost when models allocate too much budget to chain-of-thought. | \ No newline at end of file diff --git a/docs/models/components/fusionservertoolconfigtool.mdx b/docs/models/components/fusionservertoolconfigtool.mdx index 6186cce8b..c49d55f54 100644 --- a/docs/models/components/fusionservertoolconfigtool.mdx +++ b/docs/models/components/fusionservertoolconfigtool.mdx @@ -6,5 +6,5 @@ title: "FusionServerToolConfigTool" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `Parameters` | map[string]`any` | ➖ | Optional configuration forwarded as the tool's `parameters` object. | -| `Type` | `string` | ✅ | Server tool type identifier (e.g. "openrouter:web_search", "openrouter:web_fetch"). | \ No newline at end of file +| `Parameters` | map[string]`any` | :heavy_minus_sign: | Optional configuration forwarded as the tool's `parameters` object. | +| `Type` | `string` | :heavy_check_mark: | Server tool type identifier (e.g. "openrouter:web_search", "openrouter:web_fetch"). | \ No newline at end of file diff --git a/docs/models/components/fusionservertoolopenrouter.mdx b/docs/models/components/fusionservertoolopenrouter.mdx index e3906e7a2..72dc2a84c 100644 --- a/docs/models/components/fusionservertoolopenrouter.mdx +++ b/docs/models/components/fusionservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: fans out the user prompt to a panel of analysis | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.FusionServerToolConfig](../../models/components/fusionservertoolconfig.mdx) | ➖ | Configuration for the openrouter:fusion server tool. | \{
"analysis_models": [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
]
} | -| `Type` | [components.FusionServerToolOpenRouterType](../../models/components/fusionservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.FusionServerToolConfig](../../models/components/fusionservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:fusion server tool. | \{
"analysis_models": [
"~anthropic/claude-opus-latest",
"~openai/gpt-sol-latest",
"~google/gemini-pro-latest"
]
} | +| `Type` | [components.FusionServerToolOpenRouterType](../../models/components/fusionservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/fusionsource.mdx b/docs/models/components/fusionsource.mdx index 760784e0e..70328a8d9 100644 --- a/docs/models/components/fusionsource.mdx +++ b/docs/models/components/fusionsource.mdx @@ -9,5 +9,5 @@ A web page retrieved via web search during a fusion run. | Field | Type | Required | Description | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `Title` | `string` | ✅ | Title of the retrieved web page. | -| `URL` | `string` | ✅ | URL of the web page a panel or the analyst retrieved during the run. | \ No newline at end of file +| `Title` | `string` | :heavy_check_mark: | Title of the retrieved web page. | +| `URL` | `string` | :heavy_check_mark: | URL of the web page a panel or the analyst retrieved during the run. | \ No newline at end of file diff --git a/docs/models/components/gatewaytimeoutresponseerrordata.mdx b/docs/models/components/gatewaytimeoutresponseerrordata.mdx index a3738575a..7e28f3a3f 100644 --- a/docs/models/components/gatewaytimeoutresponseerrordata.mdx +++ b/docs/models/components/gatewaytimeoutresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for GatewayTimeoutResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/generationcontentdata.mdx b/docs/models/components/generationcontentdata.mdx index abf86e307..62779e053 100644 --- a/docs/models/components/generationcontentdata.mdx +++ b/docs/models/components/generationcontentdata.mdx @@ -9,6 +9,6 @@ Stored prompt and completion content, plus the failure error when one was stored | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | [*components.GenerationContentError](../../models/components/generationcontenterror.mdx) | ✅ | The stored failure for this generation, or null when it succeeded | \{
"message": "Timed out waiting for the provider",
"previous_errors": [
\{
"code": 429,
"message": "Provider returned error",
"provider_name": "Google",
"raw": "\{\"error\":\{\"code\":429,\"message\":\"Resource exhausted\"}}"
}
],
"provider_name": "Vertex",
"raw": "\{\"error\":\{\"code\":504,\"message\":\"Deadline exceeded\"}}",
"status": 504
} | -| `Input` | [components.InputUnion](../../models/components/inputunion.mdx) | ✅ | The input to the generation — either a prompt string or an array of messages | | -| `Output` | [components.GenerationContentDataOutput](../../models/components/generationcontentdataoutput.mdx) | ✅ | The output from the generation | | \ No newline at end of file +| `Error` | [*components.GenerationContentError](../../models/components/generationcontenterror.mdx) | :heavy_check_mark: | The stored failure for this generation, or null when it succeeded | \{
"message": "Timed out waiting for the provider",
"previous_errors": [
\{
"code": 429,
"message": "Provider returned error",
"provider_name": "Google",
"raw": "\{\"error\":\{\"code\":429,\"message\":\"Resource exhausted\"}}"
}
],
"provider_name": "Vertex",
"raw": "\{\"error\":\{\"code\":504,\"message\":\"Deadline exceeded\"}}",
"status": 504
} | +| `Input` | [components.InputUnion](../../models/components/inputunion.mdx) | :heavy_check_mark: | The input to the generation — either a prompt string or an array of messages | | +| `Output` | [components.GenerationContentDataOutput](../../models/components/generationcontentdataoutput.mdx) | :heavy_check_mark: | The output from the generation | | \ No newline at end of file diff --git a/docs/models/components/generationcontentdataoutput.mdx b/docs/models/components/generationcontentdataoutput.mdx index 2c33a346a..fedfa624b 100644 --- a/docs/models/components/generationcontentdataoutput.mdx +++ b/docs/models/components/generationcontentdataoutput.mdx @@ -9,5 +9,5 @@ The output from the generation | Field | Type | Required | Description | Example | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Completion` | `*string` | ✅ | The completion output | The meaning of life is a philosophical question... | -| `Reasoning` | `*string` | ✅ | Reasoning/thinking output, if any | null | \ No newline at end of file +| `Completion` | `*string` | :heavy_check_mark: | The completion output | The meaning of life is a philosophical question... | +| `Reasoning` | `*string` | :heavy_check_mark: | Reasoning/thinking output, if any | null | \ No newline at end of file diff --git a/docs/models/components/generationcontenterror.mdx b/docs/models/components/generationcontenterror.mdx index c7af85f36..ee5798da6 100644 --- a/docs/models/components/generationcontenterror.mdx +++ b/docs/models/components/generationcontenterror.mdx @@ -9,8 +9,8 @@ The stored failure for this generation, or null when it succeeded | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Message` | `*string` | ✅ | Error message returned to the client | Timed out waiting for the provider | -| `PreviousErrors` | [][components.GenerationContentErrorAttempt](../../models/components/generationcontenterrorattempt.mdx) | ✅ | Every upstream attempt that failed before the returned error, in attempt order | | -| `ProviderName` | `*string` | ✅ | Provider whose error was returned to the client, when known | Vertex | -| `Raw` | `*string` | ✅ | Raw error body behind the returned error, when stored | \{"error":\{"code":504,"message":"Deadline exceeded"}} | -| `Status` | `*int64` | ✅ | HTTP status returned to the client | 504 | \ No newline at end of file +| `Message` | `*string` | :heavy_check_mark: | Error message returned to the client | Timed out waiting for the provider | +| `PreviousErrors` | [][components.GenerationContentErrorAttempt](../../models/components/generationcontenterrorattempt.mdx) | :heavy_check_mark: | Every upstream attempt that failed before the returned error, in attempt order | | +| `ProviderName` | `*string` | :heavy_check_mark: | Provider whose error was returned to the client, when known | Vertex | +| `Raw` | `*string` | :heavy_check_mark: | Raw error body behind the returned error, when stored | \{"error":\{"code":504,"message":"Deadline exceeded"}} | +| `Status` | `*int64` | :heavy_check_mark: | HTTP status returned to the client | 504 | \ No newline at end of file diff --git a/docs/models/components/generationcontenterrorattempt.mdx b/docs/models/components/generationcontenterrorattempt.mdx index 233ca6468..fab3b45f4 100644 --- a/docs/models/components/generationcontenterrorattempt.mdx +++ b/docs/models/components/generationcontenterrorattempt.mdx @@ -9,7 +9,7 @@ A single failed upstream attempt recorded for the generation | Field | Type | Required | Description | Example | | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `Code` | `int64` | ✅ | HTTP status returned by this attempt | 429 | -| `Message` | `string` | ✅ | Error message returned by this attempt | Provider returned error | -| `ProviderName` | `*string` | ✅ | Provider that served this attempt, when known | Google | -| `Raw` | `*string` | ✅ | Raw error body returned by the provider, when stored | \{"error":\{"code":429,"message":"Resource exhausted"}} | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | HTTP status returned by this attempt | 429 | +| `Message` | `string` | :heavy_check_mark: | Error message returned by this attempt | Provider returned error | +| `ProviderName` | `*string` | :heavy_check_mark: | Provider that served this attempt, when known | Google | +| `Raw` | `*string` | :heavy_check_mark: | Raw error body returned by the provider, when stored | \{"error":\{"code":429,"message":"Resource exhausted"}} | \ No newline at end of file diff --git a/docs/models/components/generationcontentresponse.mdx b/docs/models/components/generationcontentresponse.mdx index f28f40788..5c1d31043 100644 --- a/docs/models/components/generationcontentresponse.mdx +++ b/docs/models/components/generationcontentresponse.mdx @@ -9,4 +9,4 @@ Stored prompt and completion content for a generation | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Data` | [components.GenerationContentData](../../models/components/generationcontentdata.mdx) | ✅ | Stored prompt and completion content, plus the failure error when one was stored | \{
"error": null,
"input": \{
"messages": [
\{
"content": "What is the meaning of life?",
"role": "user"
}
]
},
"output": \{
"completion": "The meaning of life is a philosophical question...",
"reasoning": null
}
} | \ No newline at end of file +| `Data` | [components.GenerationContentData](../../models/components/generationcontentdata.mdx) | :heavy_check_mark: | Stored prompt and completion content, plus the failure error when one was stored | \{
"error": null,
"input": \{
"messages": [
\{
"content": "What is the meaning of life?",
"role": "user"
}
]
},
"output": \{
"completion": "The meaning of life is a philosophical question...",
"reasoning": null
}
} | \ No newline at end of file diff --git a/docs/models/components/generationresponse.mdx b/docs/models/components/generationresponse.mdx index bab324c90..11f8aa4d5 100644 --- a/docs/models/components/generationresponse.mdx +++ b/docs/models/components/generationresponse.mdx @@ -9,4 +9,4 @@ Generation response | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [components.GenerationResponseData](../../models/components/generationresponsedata.mdx) | ✅ | Generation data | \ No newline at end of file +| `Data` | [components.GenerationResponseData](../../models/components/generationresponsedata.mdx) | :heavy_check_mark: | Generation data | \ No newline at end of file diff --git a/docs/models/components/generationresponsedata.mdx b/docs/models/components/generationresponsedata.mdx index 7fe4b4ebd..d1c9630b0 100644 --- a/docs/models/components/generationresponsedata.mdx +++ b/docs/models/components/generationresponsedata.mdx @@ -9,48 +9,48 @@ Generation data | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIType` | [*components.APIType](../../models/components/apitype.mdx) | ✅ | Type of API used for the generation | | -| `AppID` | `*int64` | ✅ | ID of the app that made the request | 12345 | -| `CacheDiscount` | `*float64` | ✅ | Discount applied due to caching | 0.0002 | -| `Cancelled` | `*bool` | ✅ | Whether the generation was cancelled | false | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the generation was created | 2024-07-15T23:33:19.433273+00:00 | -| `DataRegion` | [components.GenerationResponseDataRegion](../../models/components/generationresponsedataregion.mdx) | ✅ | The data region this generation was routed through: 'global', 'europe', or 'us'. | global | -| `ExternalUser` | `*string` | ✅ | External user identifier | user-123 | -| `FinishReason` | `*string` | ✅ | Reason the generation finished | stop | -| `GenerationTime` | `*float64` | ✅ | Time taken for generation in milliseconds | 1200 | -| `HTTPReferer` | `*string` | ✅ | Referer header from the request | | -| `ID` | `string` | ✅ | Unique identifier for the generation | gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG | -| `IsBYOK` | `bool` | ✅ | Whether this used bring-your-own-key | false | -| `Latency` | `*float64` | ✅ | Total latency in milliseconds | 1250 | -| `Model` | `string` | ✅ | Model used for the generation | sao10k/l3-stheno-8b | -| `ModerationLatency` | `*float64` | ✅ | Moderation latency in milliseconds | 50 | -| `NativeFinishReason` | `*string` | ✅ | Native finish reason as reported by provider | stop | -| `NativeTokensCached` | `*int64` | ✅ | Native cached tokens as reported by provider | 3 | -| `NativeTokensCompletion` | `*int64` | ✅ | Native completion tokens as reported by provider | 25 | -| `NativeTokensCompletionImages` | `*int64` | ✅ | Native completion image tokens as reported by provider | 0 | -| `NativeTokensPrompt` | `*int64` | ✅ | Native prompt tokens as reported by provider | 10 | -| `NativeTokensReasoning` | `*int64` | ✅ | Native reasoning tokens as reported by provider | 5 | -| `NumFetches` | `*int64` | ✅ | Number of web fetches performed | 0 | -| `NumInputAudioPrompt` | `*int64` | ✅ | Number of audio inputs in the prompt | 0 | -| `NumMediaCompletion` | `*int64` | ✅ | Number of media items in the completion | 0 | -| `NumMediaPrompt` | `*int64` | ✅ | Number of media items in the prompt | 1 | -| `NumSearchResults` | `*int64` | ✅ | Number of search results included | 5 | -| `Origin` | `string` | ✅ | Origin URL of the request | https://openrouter.ai/ | -| `PresetID` | `*string` | ✅ | ID of the preset used for this generation, null if no preset was used | a9e8d400-592a-494f-908c-375efa66cafd | -| `ProviderName` | `*string` | ✅ | Name of the provider that served the request | Infermatic | -| `ProviderResponses` | [][components.ProviderResponse](../../models/components/providerresponse.mdx) | ✅ | List of provider responses for this generation, including fallback attempts | | -| `RequestID` | optionalnullable.OptionalNullable[`string`] | ➖ | Unique identifier grouping all generations from a single API request | req-1727282430-aBcDeFgHiJkLmNoPqRsT | -| `ResponseCacheSourceID` | optionalnullable.OptionalNullable[`string`] | ➖ | If this generation was served from response cache, contains the original generation ID. Null otherwise. | | -| `Router` | `*string` | ✅ | Router used for the request (e.g., openrouter/auto) | openrouter/auto | -| `ServiceTier` | `*string` | ✅ | Service tier the upstream provider reported running this request on, or null if it did not report one. | priority | -| `SessionID` | optionalnullable.OptionalNullable[`string`] | ➖ | Session identifier grouping multiple generations in the same session | | -| `Streamed` | `*bool` | ✅ | Whether the response was streamed | true | -| `TokensCompletion` | `*int64` | ✅ | Number of tokens in the completion | 25 | -| `TokensPrompt` | `*int64` | ✅ | Number of tokens in the prompt | 10 | -| `TotalCost` | `float64` | ✅ | Total cost of the generation in USD | 0.0015 | -| `UpstreamID` | `*string` | ✅ | Upstream provider's identifier for this generation | chatcmpl-791bcf62-080e-4568-87d0-94c72e3b4946 | -| `UpstreamInferenceCost` | `*float64` | ✅ | Cost charged by the upstream provider | 0.0012 | -| `Usage` | `float64` | ✅ | Usage amount in USD | 0.0015 | -| `UserAgent` | `*string` | ✅ | User-Agent header from the request | | -| `WebSearchEngine` | `*string` | ✅ | The resolved web search engine used for this generation (e.g. exa, firecrawl, parallel) | exa | -| `WorkspaceID` | `*string` | ✅ | ID of the workspace this generation is attributed to. Null for accounts without workspaces. Generations created before workspace resolution existed are attributed to the account default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIType` | [*components.APIType](../../models/components/apitype.mdx) | :heavy_check_mark: | Type of API used for the generation | | +| `AppID` | `*int64` | :heavy_check_mark: | ID of the app that made the request | 12345 | +| `CacheDiscount` | `*float64` | :heavy_check_mark: | Discount applied due to caching | 0.0002 | +| `Cancelled` | `*bool` | :heavy_check_mark: | Whether the generation was cancelled | false | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the generation was created | 2024-07-15T23:33:19.433273+00:00 | +| `DataRegion` | [components.GenerationResponseDataRegion](../../models/components/generationresponsedataregion.mdx) | :heavy_check_mark: | The data region this generation was routed through: 'global', 'europe', or 'us'. | global | +| `ExternalUser` | `*string` | :heavy_check_mark: | External user identifier | user-123 | +| `FinishReason` | `*string` | :heavy_check_mark: | Reason the generation finished | stop | +| `GenerationTime` | `*float64` | :heavy_check_mark: | Time taken for generation in milliseconds | 1200 | +| `HTTPReferer` | `*string` | :heavy_check_mark: | Referer header from the request | | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the generation | gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG | +| `IsBYOK` | `bool` | :heavy_check_mark: | Whether this used bring-your-own-key | false | +| `Latency` | `*float64` | :heavy_check_mark: | Total latency in milliseconds | 1250 | +| `Model` | `string` | :heavy_check_mark: | Model used for the generation | sao10k/l3-stheno-8b | +| `ModerationLatency` | `*float64` | :heavy_check_mark: | Moderation latency in milliseconds | 50 | +| `NativeFinishReason` | `*string` | :heavy_check_mark: | Native finish reason as reported by provider | stop | +| `NativeTokensCached` | `*int64` | :heavy_check_mark: | Native cached tokens as reported by provider | 3 | +| `NativeTokensCompletion` | `*int64` | :heavy_check_mark: | Native completion tokens as reported by provider | 25 | +| `NativeTokensCompletionImages` | `*int64` | :heavy_check_mark: | Native completion image tokens as reported by provider | 0 | +| `NativeTokensPrompt` | `*int64` | :heavy_check_mark: | Native prompt tokens as reported by provider | 10 | +| `NativeTokensReasoning` | `*int64` | :heavy_check_mark: | Native reasoning tokens as reported by provider | 5 | +| `NumFetches` | `*int64` | :heavy_check_mark: | Number of web fetches performed | 0 | +| `NumInputAudioPrompt` | `*int64` | :heavy_check_mark: | Number of audio inputs in the prompt | 0 | +| `NumMediaCompletion` | `*int64` | :heavy_check_mark: | Number of media items in the completion | 0 | +| `NumMediaPrompt` | `*int64` | :heavy_check_mark: | Number of media items in the prompt | 1 | +| `NumSearchResults` | `*int64` | :heavy_check_mark: | Number of search results included | 5 | +| `Origin` | `string` | :heavy_check_mark: | Origin URL of the request | https://openrouter.ai/ | +| `PresetID` | `*string` | :heavy_check_mark: | ID of the preset used for this generation, null if no preset was used | a9e8d400-592a-494f-908c-375efa66cafd | +| `ProviderName` | `*string` | :heavy_check_mark: | Name of the provider that served the request | Infermatic | +| `ProviderResponses` | [][components.ProviderResponse](../../models/components/providerresponse.mdx) | :heavy_check_mark: | List of provider responses for this generation, including fallback attempts | | +| `RequestID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Unique identifier grouping all generations from a single API request | req-1727282430-aBcDeFgHiJkLmNoPqRsT | +| `ResponseCacheSourceID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | If this generation was served from response cache, contains the original generation ID. Null otherwise. | | +| `Router` | `*string` | :heavy_check_mark: | Router used for the request (e.g., openrouter/auto) | openrouter/auto | +| `ServiceTier` | `*string` | :heavy_check_mark: | Service tier the upstream provider reported running this request on, or null if it did not report one. | priority | +| `SessionID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Session identifier grouping multiple generations in the same session | | +| `Streamed` | `*bool` | :heavy_check_mark: | Whether the response was streamed | true | +| `TokensCompletion` | `*int64` | :heavy_check_mark: | Number of tokens in the completion | 25 | +| `TokensPrompt` | `*int64` | :heavy_check_mark: | Number of tokens in the prompt | 10 | +| `TotalCost` | `float64` | :heavy_check_mark: | Total cost of the generation in USD | 0.0015 | +| `UpstreamID` | `*string` | :heavy_check_mark: | Upstream provider's identifier for this generation | chatcmpl-791bcf62-080e-4568-87d0-94c72e3b4946 | +| `UpstreamInferenceCost` | `*float64` | :heavy_check_mark: | Cost charged by the upstream provider | 0.0012 | +| `Usage` | `float64` | :heavy_check_mark: | Usage amount in USD | 0.0015 | +| `UserAgent` | `*string` | :heavy_check_mark: | User-Agent header from the request | | +| `WebSearchEngine` | `*string` | :heavy_check_mark: | The resolved web search engine used for this generation (e.g. exa, firecrawl, parallel) | exa | +| `WorkspaceID` | `*string` | :heavy_check_mark: | ID of the workspace this generation is attributed to. Null for accounts without workspaces. Generations created before workspace resolution existed are attributed to the account default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/getbyokkeyresponse.mdx b/docs/models/components/getbyokkeyresponse.mdx index ecf16b051..dab47c1eb 100644 --- a/docs/models/components/getbyokkeyresponse.mdx +++ b/docs/models/components/getbyokkeyresponse.mdx @@ -6,4 +6,4 @@ title: "GetBYOKKeyResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | ✅ | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | :heavy_check_mark: | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/getguardrailresponse.mdx b/docs/models/components/getguardrailresponse.mdx index 02e6e1c22..5ddc7239c 100644 --- a/docs/models/components/getguardrailresponse.mdx +++ b/docs/models/components/getguardrailresponse.mdx @@ -6,4 +6,4 @@ title: "GetGuardrailResponse" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | ✅ | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file +| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | :heavy_check_mark: | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file diff --git a/docs/models/components/getobservabilitydestinationresponse.mdx b/docs/models/components/getobservabilitydestinationresponse.mdx index a59305e7e..cd996199c 100644 --- a/docs/models/components/getobservabilitydestinationresponse.mdx +++ b/docs/models/components/getobservabilitydestinationresponse.mdx @@ -6,4 +6,4 @@ title: "GetObservabilityDestinationResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | ✅ | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/getpresetresponse.mdx b/docs/models/components/getpresetresponse.mdx index 2518e05fd..25f1369c5 100644 --- a/docs/models/components/getpresetresponse.mdx +++ b/docs/models/components/getpresetresponse.mdx @@ -9,4 +9,4 @@ A preset with its currently designated version. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.PresetWithDesignatedVersion](../../models/components/presetwithdesignatedversion.mdx) | ✅ | A preset with its currently designated version. | \{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version": \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
},
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
} | \ No newline at end of file +| `Data` | [components.PresetWithDesignatedVersion](../../models/components/presetwithdesignatedversion.mdx) | :heavy_check_mark: | A preset with its currently designated version. | \{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version": \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
},
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
} | \ No newline at end of file diff --git a/docs/models/components/getpresetversionresponse.mdx b/docs/models/components/getpresetversionresponse.mdx index 6fe096b82..522921fc5 100644 --- a/docs/models/components/getpresetversionresponse.mdx +++ b/docs/models/components/getpresetversionresponse.mdx @@ -9,4 +9,4 @@ A single version of a preset. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | ✅ | A specific version of a preset, containing config and optional system prompt. | \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
} | \ No newline at end of file +| `Data` | [*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | :heavy_check_mark: | A specific version of a preset, containing config and optional system prompt. | \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
} | \ No newline at end of file diff --git a/docs/models/components/getscimgroupmappingresponse.mdx b/docs/models/components/getscimgroupmappingresponse.mdx index 85c7bf59f..87fd9daba 100644 --- a/docs/models/components/getscimgroupmappingresponse.mdx +++ b/docs/models/components/getscimgroupmappingresponse.mdx @@ -6,4 +6,4 @@ title: "GetScimGroupMappingResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/getscimsyncjobresponse.mdx b/docs/models/components/getscimsyncjobresponse.mdx index 4efc64b64..08b956297 100644 --- a/docs/models/components/getscimsyncjobresponse.mdx +++ b/docs/models/components/getscimsyncjobresponse.mdx @@ -6,4 +6,4 @@ title: "GetScimSyncJobResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Data` | [components.ScimSyncJob](../../models/components/scimsyncjob.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.ScimSyncJob](../../models/components/scimsyncjob.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/gettoolresponse.mdx b/docs/models/components/gettoolresponse.mdx index 6ed055558..2d4e098d7 100644 --- a/docs/models/components/gettoolresponse.mdx +++ b/docs/models/components/gettoolresponse.mdx @@ -6,4 +6,4 @@ title: "GetToolResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Data` | [components.ServerToolDetails](../../models/components/servertooldetails.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.ServerToolDetails](../../models/components/servertooldetails.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/getworkspacebudgetresponse.mdx b/docs/models/components/getworkspacebudgetresponse.mdx index 732fd994c..ef31c525d 100644 --- a/docs/models/components/getworkspacebudgetresponse.mdx +++ b/docs/models/components/getworkspacebudgetresponse.mdx @@ -6,5 +6,5 @@ title: "GetWorkspaceBudgetResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"limit_usd": 100,
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | true | \ No newline at end of file +| `Data` | [components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"limit_usd": 100,
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | true | \ No newline at end of file diff --git a/docs/models/components/getworkspaceresponse.mdx b/docs/models/components/getworkspaceresponse.mdx index a41105515..cb31c7200 100644 --- a/docs/models/components/getworkspaceresponse.mdx +++ b/docs/models/components/getworkspaceresponse.mdx @@ -6,4 +6,4 @@ title: "GetWorkspaceResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Workspace](../../models/components/workspace.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file +| `Data` | [components.Workspace](../../models/components/workspace.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file diff --git a/docs/models/components/goneresponseerrordata.mdx b/docs/models/components/goneresponseerrordata.mdx index eda84e5fd..3039016fc 100644 --- a/docs/models/components/goneresponseerrordata.mdx +++ b/docs/models/components/goneresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for GoneResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/guardrail.mdx b/docs/models/components/guardrail.mdx index 396c7d6cd..ebd4985fa 100644 --- a/docs/models/components/guardrail.mdx +++ b/docs/models/components/guardrail.mdx @@ -6,30 +6,30 @@ title: "Guardrail" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | -| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | -| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | ➖ | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. | [
"europe"
] | -| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model canonical_slugs (immutable identifiers) | [
"openai/gpt-5.2-20251211",
"anthropic/claude-4.5-opus-20251124",
"deepseek/deepseek-r1-0528:free"
] | -| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | List of allowed provider IDs | [
"openai",
"anthropic",
"google"
] | -| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntry](../../models/components/contentfilterbuiltinentry.mdx)] | ➖ | Builtin content filters applied to requests. Includes PII detectors and the regex-based prompt injection detector. | [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
] | -| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | ➖ | Custom regex content filters applied to request messages | [
\{
"action": "redact",
"label": "[API_KEY]",
"pattern": "\\b(sk-[a-zA-Z0-9]\{48})\\b"
}
] | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the guardrail was created | 2025-08-24T10:30:00Z | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | Description of the guardrail | Guardrail for production environment | -| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that publish prompts. | false | -| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that train on request data. | true | -| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows paid endpoints that train on request data. | true | -| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | false | -| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | false | -| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | false | -| `ID` | `string` | ✅ | Unique identifier for the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model canonical_slugs to exclude from routing | [
"openai/gpt-4o-mini-2024-07-18"
] | -| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | List of provider IDs to exclude from routing | [
"azure"
] | -| `IncludeBYOKInBudgets` | `bool` | ✅ | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. | false | -| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | ➖ | Spending limit in USD | 100 | -| `Name` | `string` | ✅ | Name of the guardrail | Production Guardrail | -| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | ➖ | Interval at which the limit resets (daily, weekly, monthly) | monthly | -| `UpdatedAt` | optionalnullable.OptionalNullable[`string`] | ➖ | ISO 8601 timestamp of when the guardrail was last updated | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `*string` | ✅ | The workspace this guardrail belongs to, or `null` for an unscoped legacy guardrail predating workspaces. Workspace membership organizes the guardrail; it does not apply the guardrail to the workspace's traffic. A `null` value does not mean the default workspace, and does not apply the guardrail across every workspace. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | +| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | true | +| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | :heavy_minus_sign: | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. | [
"europe"
] | +| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model canonical_slugs (immutable identifiers) | [
"openai/gpt-5.2-20251211",
"anthropic/claude-4.5-opus-20251124",
"deepseek/deepseek-r1-0528:free"
] | +| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | List of allowed provider IDs | [
"openai",
"anthropic",
"google"
] | +| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntry](../../models/components/contentfilterbuiltinentry.mdx)] | :heavy_minus_sign: | Builtin content filters applied to requests. Includes PII detectors and the regex-based prompt injection detector. | [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
] | +| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | :heavy_minus_sign: | Custom regex content filters applied to request messages | [
\{
"action": "redact",
"label": "[API_KEY]",
"pattern": "\\b(sk-[a-zA-Z0-9]\{48})\\b"
}
] | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the guardrail was created | 2025-08-24T10:30:00Z | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Description of the guardrail | Guardrail for production environment | +| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that publish prompts. | false | +| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that train on request data. | true | +| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows paid endpoints that train on request data. | true | +| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | false | +| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | false | +| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | false | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model canonical_slugs to exclude from routing | [
"openai/gpt-4o-mini-2024-07-18"
] | +| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | List of provider IDs to exclude from routing | [
"azure"
] | +| `IncludeBYOKInBudgets` | `bool` | :heavy_check_mark: | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. | false | +| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Spending limit in USD | 100 | +| `Name` | `string` | :heavy_check_mark: | Name of the guardrail | Production Guardrail | +| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | :heavy_minus_sign: | Interval at which the limit resets (daily, weekly, monthly) | monthly | +| `UpdatedAt` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | ISO 8601 timestamp of when the guardrail was last updated | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `*string` | :heavy_check_mark: | The workspace this guardrail belongs to, or `null` for an unscoped legacy guardrail predating workspaces. Workspace membership organizes the guardrail; it does not apply the guardrail to the workspace's traffic. A `null` value does not mean the default workspace, and does not apply the guardrail across every workspace. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/components/image.mdx b/docs/models/components/image.mdx index cf4483767..76a7f7c79 100644 --- a/docs/models/components/image.mdx +++ b/docs/models/components/image.mdx @@ -6,5 +6,5 @@ title: "Image" | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `ImageURL` | [components.BatchObjectImageURL](../../models/components/batchobjectimageurl.mdx) | ✅ | N/A | -| `Type` | [components.ChoiceTypeImageURL](../../models/components/choicetypeimageurl.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.BatchObjectImageURL](../../models/components/batchobjectimageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.ChoiceTypeImageURL](../../models/components/choicetypeimageurl.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imageendpoint.mdx b/docs/models/components/imageendpoint.mdx index 11f6da29f..c0edb162a 100644 --- a/docs/models/components/imageendpoint.mdx +++ b/docs/models/components/imageendpoint.mdx @@ -9,10 +9,10 @@ An endpoint that serves a given image model. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedPassthroughParameters` | []`string` | ✅ | Provider-specific options accepted under provider.options[provider_slug]. | [] | -| `Pricing` | [][components.ImagePricingEntry](../../models/components/imagepricingentry.mdx) | ✅ | Billable pricing lines for this endpoint. | [
\{
"billable": "output_image",
"cost_usd": 0.05,
"unit": "image"
}
] | -| `ProviderName` | `string` | ✅ | Provider display name | Bytedance | -| `ProviderSlug` | `string` | ✅ | Provider slug | bytedance | -| `ProviderTag` | `*string` | ✅ | Provider tag for request-side selection | bytedance | -| `SupportedParameters` | map[string][components.CapabilityDescriptor](../../models/components/capabilitydescriptor.mdx) | ✅ | N/A | \{
"output_compression": \{
"max": 100,
"min": 0,
"type": "range"
},
"resolution": \{
"type": "enum",
"values": [
"1K",
"2K",
"4K"
]
},
"seed": \{
"type": "boolean"
}
} | -| `SupportsStreaming` | `bool` | ✅ | Whether this endpoint supports native SSE streaming (`stream: true` in the request). | false | \ No newline at end of file +| `AllowedPassthroughParameters` | []`string` | :heavy_check_mark: | Provider-specific options accepted under provider.options[provider_slug]. | [] | +| `Pricing` | [][components.ImagePricingEntry](../../models/components/imagepricingentry.mdx) | :heavy_check_mark: | Billable pricing lines for this endpoint. | [
\{
"billable": "output_image",
"cost_usd": 0.05,
"unit": "image"
}
] | +| `ProviderName` | `string` | :heavy_check_mark: | Provider display name | Bytedance | +| `ProviderSlug` | `string` | :heavy_check_mark: | Provider slug | bytedance | +| `ProviderTag` | `*string` | :heavy_check_mark: | Provider tag for request-side selection | bytedance | +| `SupportedParameters` | map[string][components.CapabilityDescriptor](../../models/components/capabilitydescriptor.mdx) | :heavy_check_mark: | N/A | \{
"output_compression": \{
"max": 100,
"min": 0,
"type": "range"
},
"resolution": \{
"type": "enum",
"values": [
"1K",
"2K",
"4K"
]
},
"seed": \{
"type": "boolean"
}
} | +| `SupportsStreaming` | `bool` | :heavy_check_mark: | Whether this endpoint supports native SSE streaming (`stream: true` in the request). | false | \ No newline at end of file diff --git a/docs/models/components/imagegencallcompletedevent.mdx b/docs/models/components/imagegencallcompletedevent.mdx index b481b2b82..c889cb29b 100644 --- a/docs/models/components/imagegencallcompletedevent.mdx +++ b/docs/models/components/imagegencallcompletedevent.mdx @@ -9,7 +9,7 @@ Image generation call completed | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ImageGenCallCompletedEventType](../../models/components/imagegencallcompletedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ImageGenCallCompletedEventType](../../models/components/imagegencallcompletedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegencallgeneratingevent.mdx b/docs/models/components/imagegencallgeneratingevent.mdx index 6742e0501..5d6441a8f 100644 --- a/docs/models/components/imagegencallgeneratingevent.mdx +++ b/docs/models/components/imagegencallgeneratingevent.mdx @@ -9,7 +9,7 @@ Image generation call is generating | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ImageGenCallGeneratingEventType](../../models/components/imagegencallgeneratingeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ImageGenCallGeneratingEventType](../../models/components/imagegencallgeneratingeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegencallinprogressevent.mdx b/docs/models/components/imagegencallinprogressevent.mdx index 0887462c2..9de51b343 100644 --- a/docs/models/components/imagegencallinprogressevent.mdx +++ b/docs/models/components/imagegencallinprogressevent.mdx @@ -9,7 +9,7 @@ Image generation call in progress | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ImageGenCallInProgressEventType](../../models/components/imagegencallinprogresseventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ImageGenCallInProgressEventType](../../models/components/imagegencallinprogresseventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegencallpartialimageevent.mdx b/docs/models/components/imagegencallpartialimageevent.mdx index 707a3d24e..bb25583fe 100644 --- a/docs/models/components/imagegencallpartialimageevent.mdx +++ b/docs/models/components/imagegencallpartialimageevent.mdx @@ -9,9 +9,9 @@ Image generation call with partial image | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `PartialImageB64` | `string` | ✅ | N/A | -| `PartialImageIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ImageGenCallPartialImageEventType](../../models/components/imagegencallpartialimageeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `PartialImageB64` | `string` | :heavy_check_mark: | N/A | +| `PartialImageIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ImageGenCallPartialImageEventType](../../models/components/imagegencallpartialimageeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegencompletedevent.mdx b/docs/models/components/imagegencompletedevent.mdx index 6d9736d5b..a7420ac7c 100644 --- a/docs/models/components/imagegencompletedevent.mdx +++ b/docs/models/components/imagegencompletedevent.mdx @@ -9,8 +9,8 @@ Emitted when generation completes and the final image is available | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `B64JSON` | `string` | ✅ | Base64-encoded final image data | | -| `Created` | `int64` | ✅ | Unix timestamp (seconds) when the image was generated | | -| `MediaType` | `*string` | ➖ | Media type (MIME type) of the image, e.g. `image/png`, `image/jpeg`, `image/webp`, `image/svg+xml`. May be omitted if the format could not be determined. | image/png | -| `Type` | [components.ImageGenCompletedEventType](../../models/components/imagegencompletedeventtype.mdx) | ✅ | The event type | | -| `Usage` | [*components.ImageGenerationUsage](../../models/components/imagegenerationusage.mdx) | ➖ | Token and cost usage for the image generation request, when available | \{
"completion_tokens": 4175,
"cost": 0.04,
"prompt_tokens": 0,
"total_tokens": 4175
} | \ No newline at end of file +| `B64JSON` | `string` | :heavy_check_mark: | Base64-encoded final image data | | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp (seconds) when the image was generated | | +| `MediaType` | `*string` | :heavy_minus_sign: | Media type (MIME type) of the image, e.g. `image/png`, `image/jpeg`, `image/webp`, `image/svg+xml`. May be omitted if the format could not be determined. | image/png | +| `Type` | [components.ImageGenCompletedEventType](../../models/components/imagegencompletedeventtype.mdx) | :heavy_check_mark: | The event type | | +| `Usage` | [*components.ImageGenerationUsage](../../models/components/imagegenerationusage.mdx) | :heavy_minus_sign: | Token and cost usage for the image generation request, when available | \{
"completion_tokens": 4175,
"cost": 0.04,
"prompt_tokens": 0,
"total_tokens": 4175
} | \ No newline at end of file diff --git a/docs/models/components/imagegeneration.mdx b/docs/models/components/imagegeneration.mdx index 6b6ddf16a..4e09cd3ed 100644 --- a/docs/models/components/imagegeneration.mdx +++ b/docs/models/components/imagegeneration.mdx @@ -6,6 +6,6 @@ title: "ImageGeneration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/imagegenerationproviderpreferences.mdx b/docs/models/components/imagegenerationproviderpreferences.mdx index ac592c75a..5fe499abf 100644 --- a/docs/models/components/imagegenerationproviderpreferences.mdx +++ b/docs/models/components/imagegenerationproviderpreferences.mdx @@ -9,9 +9,9 @@ Provider routing preferences and provider-specific passthrough configuration. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | -| `Ignore` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesIgnore](../../models/components/imagegenerationproviderpreferencesignore.mdx)] | ➖ | List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request. | [
"openai",
"anthropic"
] | -| `Only` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesOnly](../../models/components/imagegenerationproviderpreferencesonly.mdx)] | ➖ | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | -| `Options` | [*components.ImageGenerationProviderPreferencesOptions](../../models/components/imagegenerationproviderpreferencesoptions.mdx) | ➖ | N/A | \{
"black-forest-labs": \{
"guidance": 3,
"steps": 40
}
} | -| `Order` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesOrder](../../models/components/imagegenerationproviderpreferencesorder.mdx)] | ➖ | An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message. | [
"openai",
"anthropic"
] | -| `Sort` | optionalnullable.OptionalNullable[[components.ImageGenerationProviderPreferencesSort](../../models/components/imagegenerationproviderpreferencessort.mdx)] | ➖ | The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed. | price | \ No newline at end of file +| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | +| `Ignore` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesIgnore](../../models/components/imagegenerationproviderpreferencesignore.mdx)] | :heavy_minus_sign: | List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request. | [
"openai",
"anthropic"
] | +| `Only` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesOnly](../../models/components/imagegenerationproviderpreferencesonly.mdx)] | :heavy_minus_sign: | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | +| `Options` | [*components.ImageGenerationProviderPreferencesOptions](../../models/components/imagegenerationproviderpreferencesoptions.mdx) | :heavy_minus_sign: | N/A | \{
"black-forest-labs": \{
"guidance": 3,
"steps": 40
}
} | +| `Order` | optionalnullable.OptionalNullable[[][components.ImageGenerationProviderPreferencesOrder](../../models/components/imagegenerationproviderpreferencesorder.mdx)] | :heavy_minus_sign: | An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message. | [
"openai",
"anthropic"
] | +| `Sort` | optionalnullable.OptionalNullable[[components.ImageGenerationProviderPreferencesSort](../../models/components/imagegenerationproviderpreferencessort.mdx)] | :heavy_minus_sign: | The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed. | price | \ No newline at end of file diff --git a/docs/models/components/imagegenerationproviderpreferencesoptions.mdx b/docs/models/components/imagegenerationproviderpreferencesoptions.mdx index a94d064f8..1512e4769 100644 --- a/docs/models/components/imagegenerationproviderpreferencesoptions.mdx +++ b/docs/models/components/imagegenerationproviderpreferencesoptions.mdx @@ -9,151 +9,151 @@ Provider-specific options keyed by provider slug. Only options for the matched p | Field | Type | Required | Description | | -------------------------- | -------------------------- | -------------------------- | -------------------------- | -| `Oneai` | map[string]`any` | ➖ | N/A | -| `Ai21` | map[string]`any` | ➖ | N/A | -| `AionLabs` | map[string]`any` | ➖ | N/A | -| `Akashml` | map[string]`any` | ➖ | N/A | -| `Alibaba` | map[string]`any` | ➖ | N/A | -| `AmazonBedrock` | map[string]`any` | ➖ | N/A | -| `AmazonBedrockClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `AmazonNova` | map[string]`any` | ➖ | N/A | -| `Ambient` | map[string]`any` | ➖ | N/A | -| `Anthropic` | map[string]`any` | ➖ | N/A | -| `Anthropic2` | map[string]`any` | ➖ | N/A | -| `Anyscale` | map[string]`any` | ➖ | N/A | -| `ArceeAi` | map[string]`any` | ➖ | N/A | -| `Assemblyai` | map[string]`any` | ➖ | N/A | -| `AtlasCloud` | map[string]`any` | ➖ | N/A | -| `Atoma` | map[string]`any` | ➖ | N/A | -| `Avian` | map[string]`any` | ➖ | N/A | -| `Azure` | map[string]`any` | ➖ | N/A | -| `Baidu` | map[string]`any` | ➖ | N/A | -| `Baseten` | map[string]`any` | ➖ | N/A | -| `BlackForestLabs` | map[string]`any` | ➖ | N/A | -| `Byteplus` | map[string]`any` | ➖ | N/A | -| `Centml` | map[string]`any` | ➖ | N/A | -| `Cerebras` | map[string]`any` | ➖ | N/A | -| `Chutes` | map[string]`any` | ➖ | N/A | -| `Cirrascale` | map[string]`any` | ➖ | N/A | -| `Clarifai` | map[string]`any` | ➖ | N/A | -| `ClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `Cloudflare` | map[string]`any` | ➖ | N/A | -| `Cohere` | map[string]`any` | ➖ | N/A | -| `Coreweave` | map[string]`any` | ➖ | N/A | -| `Cosine` | map[string]`any` | ➖ | N/A | -| `Crofai` | map[string]`any` | ➖ | N/A | -| `Crucible` | map[string]`any` | ➖ | N/A | -| `Crusoe` | map[string]`any` | ➖ | N/A | -| `Darkbloom` | map[string]`any` | ➖ | N/A | -| `Databricks` | map[string]`any` | ➖ | N/A | -| `Decart` | map[string]`any` | ➖ | N/A | -| `Deepgram` | map[string]`any` | ➖ | N/A | -| `Deepinfra` | map[string]`any` | ➖ | N/A | -| `Deepseek` | map[string]`any` | ➖ | N/A | -| `Dekallm` | map[string]`any` | ➖ | N/A | -| `Digitalocean` | map[string]`any` | ➖ | N/A | -| `Elevenlabs` | map[string]`any` | ➖ | N/A | -| `Enfer` | map[string]`any` | ➖ | N/A | -| `FakeProvider` | map[string]`any` | ➖ | N/A | -| `Featherless` | map[string]`any` | ➖ | N/A | -| `Fireworks` | map[string]`any` | ➖ | N/A | -| `FishAudio` | map[string]`any` | ➖ | N/A | -| `Friendli` | map[string]`any` | ➖ | N/A | -| `Gmicloud` | map[string]`any` | ➖ | N/A | -| `GoogleAiStudio` | map[string]`any` | ➖ | N/A | -| `GoogleVertex` | map[string]`any` | ➖ | N/A | -| `Gopomelo` | map[string]`any` | ➖ | N/A | -| `Groq` | map[string]`any` | ➖ | N/A | -| `Heygen` | map[string]`any` | ➖ | N/A | -| `Huggingface` | map[string]`any` | ➖ | N/A | -| `Hyperbolic` | map[string]`any` | ➖ | N/A | -| `HyperbolicQuantized` | map[string]`any` | ➖ | N/A | -| `Inception` | map[string]`any` | ➖ | N/A | -| `Inceptron` | map[string]`any` | ➖ | N/A | -| `InferactVllm` | map[string]`any` | ➖ | N/A | -| `InferenceNet` | map[string]`any` | ➖ | N/A | -| `Infermatic` | map[string]`any` | ➖ | N/A | -| `Inflection` | map[string]`any` | ➖ | N/A | -| `Inocloud` | map[string]`any` | ➖ | N/A | -| `IoNet` | map[string]`any` | ➖ | N/A | -| `Ionstream` | map[string]`any` | ➖ | N/A | -| `Klusterai` | map[string]`any` | ➖ | N/A | -| `Krea` | map[string]`any` | ➖ | N/A | -| `Lambda` | map[string]`any` | ➖ | N/A | -| `Lepton` | map[string]`any` | ➖ | N/A | -| `Liquid` | map[string]`any` | ➖ | N/A | -| `Lynn` | map[string]`any` | ➖ | N/A | -| `LynnPrivate` | map[string]`any` | ➖ | N/A | -| `Makora` | map[string]`any` | ➖ | N/A | -| `Mancer` | map[string]`any` | ➖ | N/A | -| `MancerOld` | map[string]`any` | ➖ | N/A | -| `Mara` | map[string]`any` | ➖ | N/A | -| `Meta` | map[string]`any` | ➖ | N/A | -| `Minimax` | map[string]`any` | ➖ | N/A | -| `Mistral` | map[string]`any` | ➖ | N/A | -| `Modal` | map[string]`any` | ➖ | N/A | -| `Modelrun` | map[string]`any` | ➖ | N/A | -| `Modular` | map[string]`any` | ➖ | N/A | -| `Moonshotai` | map[string]`any` | ➖ | N/A | -| `Morph` | map[string]`any` | ➖ | N/A | -| `Ncompass` | map[string]`any` | ➖ | N/A | -| `NearAi` | map[string]`any` | ➖ | N/A | -| `Nebius` | map[string]`any` | ➖ | N/A | -| `NexAgi` | map[string]`any` | ➖ | N/A | -| `Nextbit` | map[string]`any` | ➖ | N/A | -| `Nineteen` | map[string]`any` | ➖ | N/A | -| `Novita` | map[string]`any` | ➖ | N/A | -| `Nvidia` | map[string]`any` | ➖ | N/A | -| `Octoai` | map[string]`any` | ➖ | N/A | -| `Ollama` | map[string]`any` | ➖ | N/A | -| `OpenInference` | map[string]`any` | ➖ | N/A | -| `Openai` | map[string]`any` | ➖ | N/A | -| `Parasail` | map[string]`any` | ➖ | N/A | -| `ParetoAlpha` | map[string]`any` | ➖ | N/A | -| `Perceptron` | map[string]`any` | ➖ | N/A | -| `Perplexity` | map[string]`any` | ➖ | N/A | -| `Phala` | map[string]`any` | ➖ | N/A | -| `Poolside` | map[string]`any` | ➖ | N/A | -| `Primeintellect` | map[string]`any` | ➖ | N/A | -| `Quiver` | map[string]`any` | ➖ | N/A | -| `Recraft` | map[string]`any` | ➖ | N/A | -| `Recursal` | map[string]`any` | ➖ | N/A | -| `Recursive` | map[string]`any` | ➖ | N/A | -| `Reflection` | map[string]`any` | ➖ | N/A | -| `Reka` | map[string]`any` | ➖ | N/A | -| `Relace` | map[string]`any` | ➖ | N/A | -| `Replicate` | map[string]`any` | ➖ | N/A | -| `Respan` | map[string]`any` | ➖ | N/A | -| `Runway` | map[string]`any` | ➖ | N/A | -| `SailResearch` | map[string]`any` | ➖ | N/A | -| `Sakana` | map[string]`any` | ➖ | N/A | -| `SakanaAi` | map[string]`any` | ➖ | N/A | -| `Sambanova` | map[string]`any` | ➖ | N/A | -| `SambanovaCloaked` | map[string]`any` | ➖ | N/A | -| `Scaledown` | map[string]`any` | ➖ | N/A | -| `Seed` | map[string]`any` | ➖ | N/A | -| `SfCompute` | map[string]`any` | ➖ | N/A | -| `Siliconflow` | map[string]`any` | ➖ | N/A | -| `Sourceful` | map[string]`any` | ➖ | N/A | -| `Stealth` | map[string]`any` | ➖ | N/A | -| `Stepfun` | map[string]`any` | ➖ | N/A | -| `Streamlake` | map[string]`any` | ➖ | N/A | -| `Switchpoint` | map[string]`any` | ➖ | N/A | -| `Targon` | map[string]`any` | ➖ | N/A | -| `Tencent` | map[string]`any` | ➖ | N/A | -| `Tenstorrent` | map[string]`any` | ➖ | N/A | -| `Thinkingmachines` | map[string]`any` | ➖ | N/A | -| `Together` | map[string]`any` | ➖ | N/A | -| `TogetherLite` | map[string]`any` | ➖ | N/A | -| `Typesafe` | map[string]`any` | ➖ | N/A | -| `Ubicloud` | map[string]`any` | ➖ | N/A | -| `Unbiased` | map[string]`any` | ➖ | N/A | -| `Upstage` | map[string]`any` | ➖ | N/A | -| `Venice` | map[string]`any` | ➖ | N/A | -| `Voyageai` | map[string]`any` | ➖ | N/A | -| `Wafer` | map[string]`any` | ➖ | N/A | -| `Wandb` | map[string]`any` | ➖ | N/A | -| `WandbLegacy` | map[string]`any` | ➖ | N/A | -| `Xai` | map[string]`any` | ➖ | N/A | -| `Xiaomi` | map[string]`any` | ➖ | N/A | -| `ZAi` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Oneai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ai21` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AionLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Akashml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Alibaba` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrock` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrockClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonNova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ambient` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic2` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anyscale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ArceeAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Assemblyai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AtlasCloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Atoma` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Avian` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Azure` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baidu` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baseten` | map[string]`any` | :heavy_minus_sign: | N/A | +| `BlackForestLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Byteplus` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Centml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cerebras` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Chutes` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cirrascale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Clarifai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cloudflare` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cohere` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Coreweave` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cosine` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crofai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crucible` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crusoe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Darkbloom` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Databricks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Decart` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepgram` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepinfra` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepseek` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Dekallm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Digitalocean` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Elevenlabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Enfer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FakeProvider` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Featherless` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Fireworks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FishAudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Friendli` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gmicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleAiStudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleVertex` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gopomelo` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Groq` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Heygen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Huggingface` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Hyperbolic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `HyperbolicQuantized` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inception` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferactVllm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferenceNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Infermatic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inocloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `IoNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ionstream` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Klusterai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Krea` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lambda` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lepton` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Liquid` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lynn` | map[string]`any` | :heavy_minus_sign: | N/A | +| `LynnPrivate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Makora` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mancer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `MancerOld` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mara` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Meta` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Minimax` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mistral` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modelrun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modular` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Moonshotai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Morph` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ncompass` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NearAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nebius` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NexAgi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nextbit` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nineteen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Novita` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nvidia` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Octoai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ollama` | map[string]`any` | :heavy_minus_sign: | N/A | +| `OpenInference` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Openai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Parasail` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ParetoAlpha` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perplexity` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Phala` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Poolside` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Primeintellect` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Quiver` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recraft` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursive` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reka` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Relace` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Replicate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Respan` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Runway` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SailResearch` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sakana` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SakanaAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sambanova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SambanovaCloaked` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Scaledown` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Seed` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SfCompute` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Siliconflow` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sourceful` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stealth` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stepfun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Streamlake` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Switchpoint` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Targon` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tencent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tenstorrent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Thinkingmachines` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Together` | map[string]`any` | :heavy_minus_sign: | N/A | +| `TogetherLite` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Typesafe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ubicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Unbiased` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Upstage` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Venice` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Voyageai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wafer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wandb` | map[string]`any` | :heavy_minus_sign: | N/A | +| `WandbLegacy` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xiaomi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ZAi` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegenerationrequest.mdx b/docs/models/components/imagegenerationrequest.mdx index 6be4687ae..591544620 100644 --- a/docs/models/components/imagegenerationrequest.mdx +++ b/docs/models/components/imagegenerationrequest.mdx @@ -9,20 +9,20 @@ Image generation request input | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AspectRatio` | [*components.ImageGenerationRequestAspectRatio](../../models/components/imagegenerationrequestaspectratio.mdx) | ➖ | Normalized aspect ratio of the generated image. Providers clamp to their supported subset. | 16:9 | -| `Background` | [*components.ImageGenerationRequestBackground](../../models/components/imagegenerationrequestbackground.mdx) | ➖ | Background treatment. `transparent` requires an output_format that supports alpha (png or webp). | auto | -| `InputReferences` | [][components.ContentPartImage](../../models/components/contentpartimage.mdx) | ➖ | Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs. | | -| `Model` | `string` | ✅ | The image generation model to use | bytedance-seed/seedream-4.5 | -| `N` | `*int64` | ➖ | Upper bound on the number of images to generate (1-10). Providers may return fewer images, and providers that only support single-image generation reject n > 1. | 1 | -| `OutputCompression` | `*int64` | ➖ | Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob. | 100 | -| `OutputFormat` | [*components.ImageGenerationRequestOutputFormat](../../models/components/imagegenerationrequestoutputformat.mdx) | ➖ | Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`. | png | -| `Prompt` | `string` | ✅ | Text description of the desired image | a red panda astronaut floating in space, studio lighting | -| `Provider` | [*components.ImageGenerationProviderPreferences](../../models/components/imagegenerationproviderpreferences.mdx) | ➖ | Provider routing preferences and provider-specific passthrough configuration. | \{
"allow_fallbacks": false,
"only": [
"google-ai-studio"
]
} | -| `Quality` | [*components.ImageGenerationRequestQuality](../../models/components/imagegenerationrequestquality.mdx) | ➖ | Rendering quality. Providers without a quality knob ignore this. | high | -| `Resolution` | [*components.ImageGenerationRequestResolution](../../models/components/imagegenerationrequestresolution.mdx) | ➖ | Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider. | 2K | -| `Seed` | `*int64` | ➖ | If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers. | | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `Size` | `*string` | ➖ | Optional. A convenience shorthand for output dimensions — pass a tier ("2K", "4K") or explicit pixels ("2048x2048") and we normalize it to the right dimensions for the chosen provider. A tier size is equivalent to setting `resolution` and combines with `aspect_ratio`. An explicit pixel size is authoritative: a mismatched `resolution` or `aspect_ratio` alongside it is rejected with a 400. | 2K | -| `Stream` | `*bool` | ➖ | If true, partial images are streamed as SSE events as they become available. Only supported by providers with native streaming (currently OpenAI). Non-streaming providers ignore this flag and return a buffered response. | | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A stable identifier for your end-users. Used to help detect and prevent abuse. Never sent to providers verbatim: for providers whose data policy requires user IDs, it is folded into a hashed, per-account upstream user identifier. | end-user-abc123 | \ No newline at end of file +| `AspectRatio` | [*components.ImageGenerationRequestAspectRatio](../../models/components/imagegenerationrequestaspectratio.mdx) | :heavy_minus_sign: | Normalized aspect ratio of the generated image. Providers clamp to their supported subset. | 16:9 | +| `Background` | [*components.ImageGenerationRequestBackground](../../models/components/imagegenerationrequestbackground.mdx) | :heavy_minus_sign: | Background treatment. `transparent` requires an output_format that supports alpha (png or webp). | auto | +| `InputReferences` | [][components.ContentPartImage](../../models/components/contentpartimage.mdx) | :heavy_minus_sign: | Reference images to guide image-to-image generation, as base64 data URLs or HTTP(S) URLs. | | +| `Model` | `string` | :heavy_check_mark: | The image generation model to use | bytedance-seed/seedream-4.5 | +| `N` | `*int64` | :heavy_minus_sign: | Upper bound on the number of images to generate (1-10). Providers may return fewer images, and providers that only support single-image generation reject n > 1. | 1 | +| `OutputCompression` | `*int64` | :heavy_minus_sign: | Compression level (0-100) for webp/jpeg output. Ignored for png and by providers without a compression knob. | 100 | +| `OutputFormat` | [*components.ImageGenerationRequestOutputFormat](../../models/components/imagegenerationrequestoutputformat.mdx) | :heavy_minus_sign: | Encoding of the returned image bytes. Most models produce raster formats (png, jpeg, webp). SVG is supported by vectorization models (e.g. Quiver) — the SVG markup is UTF-8 base64-encoded in `b64_json`. | png | +| `Prompt` | `string` | :heavy_check_mark: | Text description of the desired image | a red panda astronaut floating in space, studio lighting | +| `Provider` | [*components.ImageGenerationProviderPreferences](../../models/components/imagegenerationproviderpreferences.mdx) | :heavy_minus_sign: | Provider routing preferences and provider-specific passthrough configuration. | \{
"allow_fallbacks": false,
"only": [
"google-ai-studio"
]
} | +| `Quality` | [*components.ImageGenerationRequestQuality](../../models/components/imagegenerationrequestquality.mdx) | :heavy_minus_sign: | Rendering quality. Providers without a quality knob ignore this. | high | +| `Resolution` | [*components.ImageGenerationRequestResolution](../../models/components/imagegenerationrequestresolution.mdx) | :heavy_minus_sign: | Normalized resolution tier of the generated image. Concrete pixel dimensions are derived per-provider. | 2K | +| `Seed` | `*int64` | :heavy_minus_sign: | If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers. | | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `Size` | `*string` | :heavy_minus_sign: | Optional. A convenience shorthand for output dimensions — pass a tier ("2K", "4K") or explicit pixels ("2048x2048") and we normalize it to the right dimensions for the chosen provider. A tier size is equivalent to setting `resolution` and combines with `aspect_ratio`. An explicit pixel size is authoritative: a mismatched `resolution` or `aspect_ratio` alongside it is rejected with a 400. | 2K | +| `Stream` | `*bool` | :heavy_minus_sign: | If true, partial images are streamed as SSE events as they become available. Only supported by providers with native streaming (currently OpenAI). Non-streaming providers ignore this flag and return a buffered response. | | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A stable identifier for your end-users. Used to help detect and prevent abuse. Never sent to providers verbatim: for providers whose data policy requires user IDs, it is folded into a hashed, per-account upstream user identifier. | end-user-abc123 | \ No newline at end of file diff --git a/docs/models/components/imagegenerationresponse.mdx b/docs/models/components/imagegenerationresponse.mdx index 80306ad6f..647efd062 100644 --- a/docs/models/components/imagegenerationresponse.mdx +++ b/docs/models/components/imagegenerationresponse.mdx @@ -9,6 +9,6 @@ Image generation response | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Created` | `int64` | ✅ | Unix timestamp (seconds) when the image was generated | 1748372400 | -| `Data` | [][components.ImageGenerationResponseData](../../models/components/imagegenerationresponsedata.mdx) | ✅ | Generated images | | -| `Usage` | [*components.ImageGenerationUsage](../../models/components/imagegenerationusage.mdx) | ➖ | Token and cost usage for the image generation request, when available | \{
"completion_tokens": 4175,
"cost": 0.04,
"prompt_tokens": 0,
"total_tokens": 4175
} | \ No newline at end of file +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp (seconds) when the image was generated | 1748372400 | +| `Data` | [][components.ImageGenerationResponseData](../../models/components/imagegenerationresponsedata.mdx) | :heavy_check_mark: | Generated images | | +| `Usage` | [*components.ImageGenerationUsage](../../models/components/imagegenerationusage.mdx) | :heavy_minus_sign: | Token and cost usage for the image generation request, when available | \{
"completion_tokens": 4175,
"cost": 0.04,
"prompt_tokens": 0,
"total_tokens": 4175
} | \ No newline at end of file diff --git a/docs/models/components/imagegenerationresponsedata.mdx b/docs/models/components/imagegenerationresponsedata.mdx index fb419aa93..059de7fe7 100644 --- a/docs/models/components/imagegenerationresponsedata.mdx +++ b/docs/models/components/imagegenerationresponsedata.mdx @@ -6,5 +6,5 @@ title: "ImageGenerationResponseData" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `B64JSON` | `string` | ✅ | Base64-encoded image bytes | | -| `MediaType` | `*string` | ➖ | Media type (MIME type) of the image, e.g. `image/png`, `image/jpeg`, `image/webp`, `image/svg+xml`. May be omitted if the format could not be determined. | image/png | \ No newline at end of file +| `B64JSON` | `string` | :heavy_check_mark: | Base64-encoded image bytes | | +| `MediaType` | `*string` | :heavy_minus_sign: | Media type (MIME type) of the image, e.g. `image/png`, `image/jpeg`, `image/webp`, `image/svg+xml`. May be omitted if the format could not be determined. | image/png | \ No newline at end of file diff --git a/docs/models/components/imagegenerationservertool.mdx b/docs/models/components/imagegenerationservertool.mdx index edc1d573e..c24479a3d 100644 --- a/docs/models/components/imagegenerationservertool.mdx +++ b/docs/models/components/imagegenerationservertool.mdx @@ -9,14 +9,14 @@ Image generation tool configuration | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `Background` | [*components.ImageGenerationServerToolBackground](../../models/components/imagegenerationservertoolbackground.mdx) | ➖ | N/A | -| `InputFidelity` | optionalnullable.OptionalNullable[[components.InputFidelity](../../models/components/inputfidelity.mdx)] | ➖ | N/A | -| `InputImageMask` | [*components.InputImageMask](../../models/components/inputimagemask.mdx) | ➖ | N/A | -| `Model` | `*string` | ➖ | N/A | -| `Moderation` | [*components.Moderation](../../models/components/moderation.mdx) | ➖ | N/A | -| `OutputCompression` | `*int64` | ➖ | N/A | -| `OutputFormat` | [*components.ImageGenerationServerToolOutputFormat](../../models/components/imagegenerationservertooloutputformat.mdx) | ➖ | N/A | -| `PartialImages` | `*int64` | ➖ | N/A | -| `Quality` | [*components.ImageGenerationServerToolQuality](../../models/components/imagegenerationservertoolquality.mdx) | ➖ | N/A | -| `Size` | `*string` | ➖ | N/A | -| `Type` | [components.ImageGenerationServerToolType](../../models/components/imagegenerationservertooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Background` | [*components.ImageGenerationServerToolBackground](../../models/components/imagegenerationservertoolbackground.mdx) | :heavy_minus_sign: | N/A | +| `InputFidelity` | optionalnullable.OptionalNullable[[components.InputFidelity](../../models/components/inputfidelity.mdx)] | :heavy_minus_sign: | N/A | +| `InputImageMask` | [*components.InputImageMask](../../models/components/inputimagemask.mdx) | :heavy_minus_sign: | N/A | +| `Model` | `*string` | :heavy_minus_sign: | N/A | +| `Moderation` | [*components.Moderation](../../models/components/moderation.mdx) | :heavy_minus_sign: | N/A | +| `OutputCompression` | `*int64` | :heavy_minus_sign: | N/A | +| `OutputFormat` | [*components.ImageGenerationServerToolOutputFormat](../../models/components/imagegenerationservertooloutputformat.mdx) | :heavy_minus_sign: | N/A | +| `PartialImages` | `*int64` | :heavy_minus_sign: | N/A | +| `Quality` | [*components.ImageGenerationServerToolQuality](../../models/components/imagegenerationservertoolquality.mdx) | :heavy_minus_sign: | N/A | +| `Size` | `*string` | :heavy_minus_sign: | N/A | +| `Type` | [components.ImageGenerationServerToolType](../../models/components/imagegenerationservertooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagegenerationservertoolconfig.mdx b/docs/models/components/imagegenerationservertoolconfig.mdx index cea9b5bd3..62883b6dd 100644 --- a/docs/models/components/imagegenerationservertoolconfig.mdx +++ b/docs/models/components/imagegenerationservertoolconfig.mdx @@ -9,5 +9,5 @@ Configuration for the openrouter:image_generation server tool. Accepts all image | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `Model` | `*string` | ➖ | Which image generation model to use (e.g. "openai/gpt-5-image"). Defaults to "openai/gpt-5-image". | openai/gpt-5-image | -| `AdditionalProperties` | map[string][components.ImageGenerationServerToolConfigUnion](../../models/components/imagegenerationservertoolconfigunion.mdx) | ➖ | N/A | \{
"aspect_ratio": "16:9",
"model": "openai/gpt-5-image",
"quality": "high"
} | \ No newline at end of file +| `Model` | `*string` | :heavy_minus_sign: | Which image generation model to use (e.g. "openai/gpt-5-image"). Defaults to "openai/gpt-5-image". | openai/gpt-5-image | +| `AdditionalProperties` | map[string][components.ImageGenerationServerToolConfigUnion](../../models/components/imagegenerationservertoolconfigunion.mdx) | :heavy_minus_sign: | N/A | \{
"aspect_ratio": "16:9",
"model": "openai/gpt-5-image",
"quality": "high"
} | \ No newline at end of file diff --git a/docs/models/components/imagegenerationservertoolopenrouter.mdx b/docs/models/components/imagegenerationservertoolopenrouter.mdx index 8f8ff0440..d2b382539 100644 --- a/docs/models/components/imagegenerationservertoolopenrouter.mdx +++ b/docs/models/components/imagegenerationservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: generates images from text prompts using an ima | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.ImageGenerationServerToolConfig](../../models/components/imagegenerationservertoolconfig.mdx) | ➖ | Configuration for the openrouter:image_generation server tool. Accepts all image_config params (aspect_ratio, quality, size, background, output_format, output_compression, moderation, etc.) plus a model field. | \{
"aspect_ratio": "16:9",
"model": "openai/gpt-5-image",
"quality": "high"
} | -| `Type` | [components.ImageGenerationServerToolOpenRouterType](../../models/components/imagegenerationservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.ImageGenerationServerToolConfig](../../models/components/imagegenerationservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:image_generation server tool. Accepts all image_config params (aspect_ratio, quality, size, background, output_format, output_compression, moderation, etc.) plus a model field. | \{
"aspect_ratio": "16:9",
"model": "openai/gpt-5-image",
"quality": "high"
} | +| `Type` | [components.ImageGenerationServerToolOpenRouterType](../../models/components/imagegenerationservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/imagegenerationusage.mdx b/docs/models/components/imagegenerationusage.mdx index e8a39b7a4..0a440a4d1 100644 --- a/docs/models/components/imagegenerationusage.mdx +++ b/docs/models/components/imagegenerationusage.mdx @@ -9,16 +9,16 @@ Token and cost usage for the image generation request, when available | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | ➖ | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | -| `CompletionTokens` | `int64` | ✅ | The tokens generated | | -| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.ImageGenerationUsageCompletionTokensDetails](../../models/components/imagegenerationusagecompletiontokensdetails.mdx)] | ➖ | N/A | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | ➖ | N/A | | -| `PromptTokens` | `int64` | ✅ | Including images, input audio, and tools if any | | -| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.ImageGenerationUsagePromptTokensDetails](../../models/components/imagegenerationusageprompttokensdetails.mdx)] | ➖ | Breakdown of tokens used in the prompt. | | -| `ServerToolUse` | optionalnullable.OptionalNullable[[components.ImageGenerationUsageServerToolUse](../../models/components/imagegenerationusageservertooluse.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | The service tier used by the upstream provider for this request | | -| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | ➖ | N/A | standard | -| `TotalTokens` | `int64` | ✅ | Sum of the above two fields | | \ No newline at end of file +| `CacheCreation` | optionalnullable.OptionalNullable[[components.AnthropicCacheCreation](../../models/components/anthropiccachecreation.mdx)] | :heavy_minus_sign: | N/A | \{
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 100
} | +| `CompletionTokens` | `int64` | :heavy_check_mark: | The tokens generated | | +| `CompletionTokensDetails` | optionalnullable.OptionalNullable[[components.ImageGenerationUsageCompletionTokensDetails](../../models/components/imagegenerationusagecompletiontokensdetails.mdx)] | :heavy_minus_sign: | N/A | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `Iterations` | optionalnullable.OptionalNullable[[][components.AnthropicUsageIteration](../../models/components/anthropicusageiteration.mdx)] | :heavy_minus_sign: | N/A | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Including images, input audio, and tools if any | | +| `PromptTokensDetails` | optionalnullable.OptionalNullable[[components.ImageGenerationUsagePromptTokensDetails](../../models/components/imagegenerationusageprompttokensdetails.mdx)] | :heavy_minus_sign: | Breakdown of tokens used in the prompt. | | +| `ServerToolUse` | optionalnullable.OptionalNullable[[components.ImageGenerationUsageServerToolUse](../../models/components/imagegenerationusageservertooluse.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The service tier used by the upstream provider for this request | | +| `Speed` | optionalnullable.OptionalNullable[[components.AnthropicSpeed](../../models/components/anthropicspeed.mdx)] | :heavy_minus_sign: | N/A | standard | +| `TotalTokens` | `int64` | :heavy_check_mark: | Sum of the above two fields | | \ No newline at end of file diff --git a/docs/models/components/imagegenerationusagecompletiontokensdetails.mdx b/docs/models/components/imagegenerationusagecompletiontokensdetails.mdx index bdef0ab07..0acb8d17b 100644 --- a/docs/models/components/imagegenerationusagecompletiontokensdetails.mdx +++ b/docs/models/components/imagegenerationusagecompletiontokensdetails.mdx @@ -6,6 +6,6 @@ title: "ImageGenerationUsageCompletionTokensDetails" | Field | Type | Required | Description | | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | ----------------------------------------------- | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for audio output. | -| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for image output. | -| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens generated by the model for reasoning. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for audio output. | +| `ImageTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for image output. | +| `ReasoningTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens generated by the model for reasoning. | \ No newline at end of file diff --git a/docs/models/components/imagegenerationusageprompttokensdetails.mdx b/docs/models/components/imagegenerationusageprompttokensdetails.mdx index e99012656..bea48beee 100644 --- a/docs/models/components/imagegenerationusageprompttokensdetails.mdx +++ b/docs/models/components/imagegenerationusageprompttokensdetails.mdx @@ -9,8 +9,8 @@ Breakdown of tokens used in the prompt. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input audio. | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | -| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens cached by the endpoint. | -| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input files/documents. | -| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Tokens used for input video. | \ No newline at end of file +| `AudioTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input audio. | +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens written to cache. Only returned for models with explicit caching and cache write pricing. | +| `CachedTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens cached by the endpoint. | +| `FileTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input files/documents. | +| `VideoTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Tokens used for input video. | \ No newline at end of file diff --git a/docs/models/components/imagegenerationusageservertooluse.mdx b/docs/models/components/imagegenerationusageservertooluse.mdx index 436c7cc1d..026d04635 100644 --- a/docs/models/components/imagegenerationusageservertooluse.mdx +++ b/docs/models/components/imagegenerationusageservertooluse.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/imagegenpartialimageevent.mdx b/docs/models/components/imagegenpartialimageevent.mdx index 0e1bc5fc1..2481d04e2 100644 --- a/docs/models/components/imagegenpartialimageevent.mdx +++ b/docs/models/components/imagegenpartialimageevent.mdx @@ -9,6 +9,6 @@ Emitted when a partial image becomes available during streaming generation | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `B64JSON` | `string` | ✅ | Base64-encoded partial image data | -| `PartialImageIndex` | `int64` | ✅ | 0-based index indicating which partial image this is in the sequence | -| `Type` | [components.ImageGenPartialImageEventType](../../models/components/imagegenpartialimageeventtype.mdx) | ✅ | The event type | \ No newline at end of file +| `B64JSON` | `string` | :heavy_check_mark: | Base64-encoded partial image data | +| `PartialImageIndex` | `int64` | :heavy_check_mark: | 0-based index indicating which partial image this is in the sequence | +| `Type` | [components.ImageGenPartialImageEventType](../../models/components/imagegenpartialimageeventtype.mdx) | :heavy_check_mark: | The event type | \ No newline at end of file diff --git a/docs/models/components/imagegenstreamerrorevent.mdx b/docs/models/components/imagegenstreamerrorevent.mdx index 7d6a04b0d..3d9017709 100644 --- a/docs/models/components/imagegenstreamerrorevent.mdx +++ b/docs/models/components/imagegenstreamerrorevent.mdx @@ -9,5 +9,5 @@ Emitted when streaming generation fails after the SSE response starts | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Error` | [components.ImageGenStreamErrorEventError](../../models/components/imagegenstreamerroreventerror.mdx) | ✅ | Provider error details | -| `Type` | [components.ImageGenStreamErrorEventType](../../models/components/imagegenstreamerroreventtype.mdx) | ✅ | The event type | \ No newline at end of file +| `Error` | [components.ImageGenStreamErrorEventError](../../models/components/imagegenstreamerroreventerror.mdx) | :heavy_check_mark: | Provider error details | +| `Type` | [components.ImageGenStreamErrorEventType](../../models/components/imagegenstreamerroreventtype.mdx) | :heavy_check_mark: | The event type | \ No newline at end of file diff --git a/docs/models/components/imagegenstreamerroreventerror.mdx b/docs/models/components/imagegenstreamerroreventerror.mdx index d63e94fb2..795edd62f 100644 --- a/docs/models/components/imagegenstreamerroreventerror.mdx +++ b/docs/models/components/imagegenstreamerroreventerror.mdx @@ -9,7 +9,7 @@ Provider error details | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Code` | optionalnullable.OptionalNullable[`string`] | ➖ | Provider error code, when supplied | -| `Message` | `string` | ✅ | Provider error message | -| `Param` | optionalnullable.OptionalNullable[`string`] | ➖ | Request parameter associated with the error, when supplied | -| `Type` | optionalnullable.OptionalNullable[`string`] | ➖ | Provider error type, when supplied | \ No newline at end of file +| `Code` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Provider error code, when supplied | +| `Message` | `string` | :heavy_check_mark: | Provider error message | +| `Param` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Request parameter associated with the error, when supplied | +| `Type` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Provider error type, when supplied | \ No newline at end of file diff --git a/docs/models/components/imagegentextchunkevent.mdx b/docs/models/components/imagegentextchunkevent.mdx index e646227f4..46d1a6b30 100644 --- a/docs/models/components/imagegentextchunkevent.mdx +++ b/docs/models/components/imagegentextchunkevent.mdx @@ -9,6 +9,6 @@ Emitted when a text chunk becomes available during streaming generation of text- | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Phase` | [components.ImageGenTextChunkEventPhase](../../models/components/imagegentextchunkeventphase.mdx) | ✅ | The generation phase this chunk belongs to. `content` is the renderable output; `reasoning` and `draft` are intermediate provider phases. | -| `Text` | `string` | ✅ | A text fragment of the image being generated (e.g. partial SVG markup) | -| `Type` | [components.ImageGenTextChunkEventType](../../models/components/imagegentextchunkeventtype.mdx) | ✅ | The event type | \ No newline at end of file +| `Phase` | [components.ImageGenTextChunkEventPhase](../../models/components/imagegentextchunkeventphase.mdx) | :heavy_check_mark: | The generation phase this chunk belongs to. `content` is the renderable output; `reasoning` and `draft` are intermediate provider phases. | +| `Text` | `string` | :heavy_check_mark: | A text fragment of the image being generated (e.g. partial SVG markup) | +| `Type` | [components.ImageGenTextChunkEventType](../../models/components/imagegentextchunkeventtype.mdx) | :heavy_check_mark: | The event type | \ No newline at end of file diff --git a/docs/models/components/imagemodelarchitecture.mdx b/docs/models/components/imagemodelarchitecture.mdx index c7fd8fee7..467a9ccf1 100644 --- a/docs/models/components/imagemodelarchitecture.mdx +++ b/docs/models/components/imagemodelarchitecture.mdx @@ -6,5 +6,5 @@ title: "ImageModelArchitecture" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `InputModalities` | [][components.ImageInputModality](../../models/components/imageinputmodality.mdx) | ✅ | Supported input modalities | -| `OutputModalities` | [][components.ImageOutputModality](../../models/components/imageoutputmodality.mdx) | ✅ | Supported output modalities | \ No newline at end of file +| `InputModalities` | [][components.ImageInputModality](../../models/components/imageinputmodality.mdx) | :heavy_check_mark: | Supported input modalities | +| `OutputModalities` | [][components.ImageOutputModality](../../models/components/imageoutputmodality.mdx) | :heavy_check_mark: | Supported output modalities | \ No newline at end of file diff --git a/docs/models/components/imagemodelendpointsresponse.mdx b/docs/models/components/imagemodelendpointsresponse.mdx index e26c117f7..8423e8460 100644 --- a/docs/models/components/imagemodelendpointsresponse.mdx +++ b/docs/models/components/imagemodelendpointsresponse.mdx @@ -9,5 +9,5 @@ The full per-endpoint records for an image model. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Endpoints` | [][components.ImageEndpoint](../../models/components/imageendpoint.mdx) | ✅ | N/A | | -| `ID` | `string` | ✅ | Model slug | bytedance-seed/seedream-4.5 | \ No newline at end of file +| `Endpoints` | [][components.ImageEndpoint](../../models/components/imageendpoint.mdx) | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | Model slug | bytedance-seed/seedream-4.5 | \ No newline at end of file diff --git a/docs/models/components/imagemodellistitem.mdx b/docs/models/components/imagemodellistitem.mdx index 50200d2b6..8d66095d4 100644 --- a/docs/models/components/imagemodellistitem.mdx +++ b/docs/models/components/imagemodellistitem.mdx @@ -9,11 +9,11 @@ A single image model in the discovery listing. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Architecture` | [components.ImageModelArchitecture](../../models/components/imagemodelarchitecture.mdx) | ✅ | N/A | \{
"input_modalities": [
"text",
"image"
],
"output_modalities": [
"image"
]
} | -| `Created` | `int64` | ✅ | Unix timestamp (seconds) of when the model was created | 1692901234 | -| `Description` | `string` | ✅ | N/A | A text-to-image model. | -| `Endpoints` | `string` | ✅ | Relative URL to the full per-endpoint records for this model | /api/v1/images/models/bytedance-seed/seedream-4.5/endpoints | -| `ID` | `string` | ✅ | Model slug | bytedance-seed/seedream-4.5 | -| `Name` | `string` | ✅ | Display name | Seedream 4.5 | -| `SupportedParameters` | map[string][components.CapabilityDescriptor](../../models/components/capabilitydescriptor.mdx) | ✅ | Union of supported parameters across every endpoint of this model. Coarse discovery aid; the definitive per-endpoint set is behind the endpoints URL. | \{
"output_compression": \{
"max": 100,
"min": 0,
"type": "range"
},
"resolution": \{
"type": "enum",
"values": [
"1K",
"2K",
"4K"
]
},
"seed": \{
"type": "boolean"
}
} | -| `SupportsStreaming` | `bool` | ✅ | Whether any endpoint of this model supports native SSE streaming on the dedicated Image API (i.e. `stream: true` in the request). OR across endpoints. | false | \ No newline at end of file +| `Architecture` | [components.ImageModelArchitecture](../../models/components/imagemodelarchitecture.mdx) | :heavy_check_mark: | N/A | \{
"input_modalities": [
"text",
"image"
],
"output_modalities": [
"image"
]
} | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp (seconds) of when the model was created | 1692901234 | +| `Description` | `string` | :heavy_check_mark: | N/A | A text-to-image model. | +| `Endpoints` | `string` | :heavy_check_mark: | Relative URL to the full per-endpoint records for this model | /api/v1/images/models/bytedance-seed/seedream-4.5/endpoints | +| `ID` | `string` | :heavy_check_mark: | Model slug | bytedance-seed/seedream-4.5 | +| `Name` | `string` | :heavy_check_mark: | Display name | Seedream 4.5 | +| `SupportedParameters` | map[string][components.CapabilityDescriptor](../../models/components/capabilitydescriptor.mdx) | :heavy_check_mark: | Union of supported parameters across every endpoint of this model. Coarse discovery aid; the definitive per-endpoint set is behind the endpoints URL. | \{
"output_compression": \{
"max": 100,
"min": 0,
"type": "range"
},
"resolution": \{
"type": "enum",
"values": [
"1K",
"2K",
"4K"
]
},
"seed": \{
"type": "boolean"
}
} | +| `SupportsStreaming` | `bool` | :heavy_check_mark: | Whether any endpoint of this model supports native SSE streaming on the dedicated Image API (i.e. `stream: true` in the request). OR across endpoints. | false | \ No newline at end of file diff --git a/docs/models/components/imagemodelslistresponse.mdx b/docs/models/components/imagemodelslistresponse.mdx index bd1378de7..234ee1662 100644 --- a/docs/models/components/imagemodelslistresponse.mdx +++ b/docs/models/components/imagemodelslistresponse.mdx @@ -9,4 +9,4 @@ List of image generation models. | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Data` | [][components.ImageModelListItem](../../models/components/imagemodellistitem.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.ImageModelListItem](../../models/components/imagemodellistitem.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagepricingentry.mdx b/docs/models/components/imagepricingentry.mdx index 12feb9b96..e31d3ea6c 100644 --- a/docs/models/components/imagepricingentry.mdx +++ b/docs/models/components/imagepricingentry.mdx @@ -9,7 +9,7 @@ One billable pricing line for an image provider. | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Billable` | [components.Billable](../../models/components/billable.mdx) | ✅ | N/A | -| `CostUsd` | `float64` | ✅ | N/A | -| `Unit` | [components.Unit](../../models/components/unit.mdx) | ✅ | N/A | -| `Variant` | `*string` | ➖ | N/A | \ No newline at end of file +| `Billable` | [components.Billable](../../models/components/billable.mdx) | :heavy_check_mark: | N/A | +| `CostUsd` | `float64` | :heavy_check_mark: | N/A | +| `Unit` | [components.Unit](../../models/components/unit.mdx) | :heavy_check_mark: | N/A | +| `Variant` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/imagestreamingresponse.mdx b/docs/models/components/imagestreamingresponse.mdx index 56212ecc3..d5aa92cca 100644 --- a/docs/models/components/imagestreamingresponse.mdx +++ b/docs/models/components/imagestreamingresponse.mdx @@ -6,4 +6,4 @@ title: "ImageStreamingResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Data` | [components.ImageStreamingResponseData](../../models/components/imagestreamingresponsedata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.ImageStreamingResponseData](../../models/components/imagestreamingresponsedata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/incompletedetails.mdx b/docs/models/components/incompletedetails.mdx index 3f3e9ea0c..3943c325f 100644 --- a/docs/models/components/incompletedetails.mdx +++ b/docs/models/components/incompletedetails.mdx @@ -6,4 +6,4 @@ title: "IncompleteDetails" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Reason` | [*components.IncompleteDetailsReason](../../models/components/incompletedetailsreason.mdx) | ➖ | N/A | \ No newline at end of file +| `Reason` | [*components.IncompleteDetailsReason](../../models/components/incompletedetailsreason.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/input1.mdx b/docs/models/components/input1.mdx index db7ace533..98b4ee8ae 100644 --- a/docs/models/components/input1.mdx +++ b/docs/models/components/input1.mdx @@ -6,4 +6,4 @@ title: "Input1" | Field | Type | Required | Description | Example | | ---------------------------- | ---------------------------- | ---------------------------- | ---------------------------- | ---------------------------- | -| `Prompt` | `string` | ✅ | N/A | What is the meaning of life? | \ No newline at end of file +| `Prompt` | `string` | :heavy_check_mark: | N/A | What is the meaning of life? | \ No newline at end of file diff --git a/docs/models/components/input2.mdx b/docs/models/components/input2.mdx index 54f5d77bc..124b13a76 100644 --- a/docs/models/components/input2.mdx +++ b/docs/models/components/input2.mdx @@ -6,4 +6,4 @@ title: "Input2" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | ----------------------------------------------------------------- | -| `Messages` | []`any` | ✅ | N/A | [
\{
"content": "What is the meaning of life?",
"role": "user"
}
] | \ No newline at end of file +| `Messages` | []`any` | :heavy_check_mark: | N/A | [
\{
"content": "What is the meaning of life?",
"role": "user"
}
] | \ No newline at end of file diff --git a/docs/models/components/inputaudio.mdx b/docs/models/components/inputaudio.mdx index 3e07ec2f3..adb969735 100644 --- a/docs/models/components/inputaudio.mdx +++ b/docs/models/components/inputaudio.mdx @@ -9,5 +9,5 @@ Audio input content item | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `InputAudio` | [components.InputAudioInputAudio](../../models/components/inputaudioinputaudio.mdx) | ✅ | N/A | -| `Type` | [components.InputAudioType](../../models/components/inputaudiotype.mdx) | ✅ | N/A | \ No newline at end of file +| `InputAudio` | [components.InputAudioInputAudio](../../models/components/inputaudioinputaudio.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.InputAudioType](../../models/components/inputaudiotype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputaudioinputaudio.mdx b/docs/models/components/inputaudioinputaudio.mdx index 80c8832c5..528acbfb8 100644 --- a/docs/models/components/inputaudioinputaudio.mdx +++ b/docs/models/components/inputaudioinputaudio.mdx @@ -6,5 +6,5 @@ title: "InputAudioInputAudio" | Field | Type | Required | Description | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Data` | `string` | ✅ | N/A | -| `Format` | [components.FormatEnum](../../models/components/formatenum.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `Format` | [components.FormatEnum](../../models/components/formatenum.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputfile.mdx b/docs/models/components/inputfile.mdx index 41e5d2a0c..68e85f5a5 100644 --- a/docs/models/components/inputfile.mdx +++ b/docs/models/components/inputfile.mdx @@ -9,8 +9,8 @@ File input content item | Field | Type | Required | Description | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `FileData` | `*string` | ➖ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `FileURL` | `*string` | ➖ | N/A | -| `Filename` | `*string` | ➖ | N/A | -| `Type` | [components.InputFileType](../../models/components/inputfiletype.mdx) | ✅ | N/A | \ No newline at end of file +| `FileData` | `*string` | :heavy_minus_sign: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `FileURL` | `*string` | :heavy_minus_sign: | N/A | +| `Filename` | `*string` | :heavy_minus_sign: | N/A | +| `Type` | [components.InputFileType](../../models/components/inputfiletype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputimage.mdx b/docs/models/components/inputimage.mdx index 484e55206..0bf10da77 100644 --- a/docs/models/components/inputimage.mdx +++ b/docs/models/components/inputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Detail` | [components.InputImageDetail](../../models/components/inputimagedetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.InputImageType](../../models/components/inputimagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.InputImageDetail](../../models/components/inputimagedetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.InputImageType](../../models/components/inputimagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputimagemask.mdx b/docs/models/components/inputimagemask.mdx index c2f53da00..7da8bba2b 100644 --- a/docs/models/components/inputimagemask.mdx +++ b/docs/models/components/inputimagemask.mdx @@ -6,5 +6,5 @@ title: "InputImageMask" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `FileID` | `*string` | ➖ | N/A | -| `ImageURL` | `*string` | ➖ | N/A | \ No newline at end of file +| `FileID` | `*string` | :heavy_minus_sign: | N/A | +| `ImageURL` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputmessageitem.mdx b/docs/models/components/inputmessageitem.mdx index 45d924321..acd9e0a62 100644 --- a/docs/models/components/inputmessageitem.mdx +++ b/docs/models/components/inputmessageitem.mdx @@ -6,7 +6,7 @@ title: "InputMessageItem" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[][components.InputMessageItemContentUnion](../../models/components/inputmessageitemcontentunion.mdx)] | ➖ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `Role` | [components.InputMessageItemRoleUnion](../../models/components/inputmessageitemroleunion.mdx) | ✅ | N/A | -| `Type` | [*components.InputMessageItemTypeMessage](../../models/components/inputmessageitemtypemessage.mdx) | ➖ | N/A | \ No newline at end of file +| `Content` | optionalnullable.OptionalNullable[[][components.InputMessageItemContentUnion](../../models/components/inputmessageitemcontentunion.mdx)] | :heavy_minus_sign: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `Role` | [components.InputMessageItemRoleUnion](../../models/components/inputmessageitemroleunion.mdx) | :heavy_check_mark: | N/A | +| `Type` | [*components.InputMessageItemTypeMessage](../../models/components/inputmessageitemtypemessage.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputmessageitemcontentinputimage.mdx b/docs/models/components/inputmessageitemcontentinputimage.mdx index 0cf5ecffd..6346e65d7 100644 --- a/docs/models/components/inputmessageitemcontentinputimage.mdx +++ b/docs/models/components/inputmessageitemcontentinputimage.mdx @@ -9,7 +9,7 @@ Image input content item. Provide either an image_url (a URL or a base64 data UR | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Detail` | [components.InputMessageItemDetail](../../models/components/inputmessageitemdetail.mdx) | ✅ | N/A | -| `FileID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ImageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.InputMessageItemTypeInputImage](../../models/components/inputmessageitemtypeinputimage.mdx) | ✅ | N/A | \ No newline at end of file +| `Detail` | [components.InputMessageItemDetail](../../models/components/inputmessageitemdetail.mdx) | :heavy_check_mark: | N/A | +| `FileID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ImageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.InputMessageItemTypeInputImage](../../models/components/inputmessageitemtypeinputimage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputschema.mdx b/docs/models/components/inputschema.mdx index 0b22ad2b4..d8ae85d5e 100644 --- a/docs/models/components/inputschema.mdx +++ b/docs/models/components/inputschema.mdx @@ -6,7 +6,7 @@ title: "InputSchema" | Field | Type | Required | Description | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Properties` | `any` | ➖ | N/A | -| `Required` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | -| `Type` | `*string` | ➖ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Properties` | `any` | :heavy_minus_sign: | N/A | +| `Required` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | +| `Type` | `*string` | :heavy_minus_sign: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputsmessage.mdx b/docs/models/components/inputsmessage.mdx index e0398f45f..4bc50ecba 100644 --- a/docs/models/components/inputsmessage.mdx +++ b/docs/models/components/inputsmessage.mdx @@ -9,9 +9,9 @@ An output message item | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [*components.InputsContent2](../../models/components/inputscontent2.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Phase` | optionalnullable.OptionalNullable[[components.InputsPhaseUnion](../../models/components/inputsphaseunion.mdx)] | ➖ | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | -| `Role` | [components.InputsRole](../../models/components/inputsrole.mdx) | ✅ | N/A | -| `Status` | [*components.InputsStatusUnion1](../../models/components/inputsstatusunion1.mdx) | ➖ | N/A | -| `Type` | [*components.InputsTypeMessage](../../models/components/inputstypemessage.mdx) | ➖ | N/A | \ No newline at end of file +| `Content` | [*components.InputsContent2](../../models/components/inputscontent2.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Phase` | optionalnullable.OptionalNullable[[components.InputsPhaseUnion](../../models/components/inputsphaseunion.mdx)] | :heavy_minus_sign: | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | +| `Role` | [components.InputsRole](../../models/components/inputsrole.mdx) | :heavy_check_mark: | N/A | +| `Status` | [*components.InputsStatusUnion1](../../models/components/inputsstatusunion1.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [*components.InputsTypeMessage](../../models/components/inputstypemessage.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputsreasoning.mdx b/docs/models/components/inputsreasoning.mdx index 34615e7c2..d006dc3b6 100644 --- a/docs/models/components/inputsreasoning.mdx +++ b/docs/models/components/inputsreasoning.mdx @@ -9,11 +9,11 @@ An output item containing reasoning | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | ➖ | N/A | | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [*components.InputsStatusUnion2](../../models/components/inputsstatusunion2.mdx) | ➖ | N/A | | -| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | | -| `Type` | [components.InputsTypeReasoning](../../models/components/inputstypereasoning.mdx) | ✅ | N/A | | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `Signature` | optionalnullable.OptionalNullable[`string`] | ➖ | A signature for the reasoning content, used for verification | EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj... | \ No newline at end of file +| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | :heavy_minus_sign: | N/A | | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [*components.InputsStatusUnion2](../../models/components/inputsstatusunion2.mdx) | :heavy_minus_sign: | N/A | | +| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.InputsTypeReasoning](../../models/components/inputstypereasoning.mdx) | :heavy_check_mark: | N/A | | +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `Signature` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | A signature for the reasoning content, used for verification | EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj... | \ No newline at end of file diff --git a/docs/models/components/inputtext.mdx b/docs/models/components/inputtext.mdx index 049e98306..61aefdcfc 100644 --- a/docs/models/components/inputtext.mdx +++ b/docs/models/components/inputtext.mdx @@ -9,6 +9,6 @@ Text input content item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `PromptCacheBreakpoint` | optionalnullable.OptionalNullable[[components.PromptCacheBreakpoint](../../models/components/promptcachebreakpoint.mdx)] | ➖ | Marks an explicit prompt-cache boundary on this content block (OpenAI-style). Everything through the block carrying this marker is part of the candidate cached prefix. Supported natively by OpenAI GPT-5.6 and newer; on providers that use Anthropic-style `cache_control`, OpenRouter converts the marker to that format automatically. `ttl` ("30m" or "12h") overrides the request-level `prompt_cache_options.ttl` for this boundary; 12h writes bill at the higher cache-write rate. | \{
"mode": "explicit",
"ttl": "30m"
} | -| `Text` | `string` | ✅ | N/A | | -| `Type` | [components.InputTextType](../../models/components/inputtexttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `PromptCacheBreakpoint` | optionalnullable.OptionalNullable[[components.PromptCacheBreakpoint](../../models/components/promptcachebreakpoint.mdx)] | :heavy_minus_sign: | Marks an explicit prompt-cache boundary on this content block (OpenAI-style). Everything through the block carrying this marker is part of the candidate cached prefix. Supported natively by OpenAI GPT-5.6 and newer; on providers that use Anthropic-style `cache_control`, OpenRouter converts the marker to that format automatically. `ttl` ("30m" or "12h") overrides the request-level `prompt_cache_options.ttl` for this boundary; 12h writes bill at the higher cache-write rate. | \{
"mode": "explicit",
"ttl": "30m"
} | +| `Text` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.InputTextType](../../models/components/inputtexttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/inputtokensdetails.mdx b/docs/models/components/inputtokensdetails.mdx index 2391d48a5..655e5a672 100644 --- a/docs/models/components/inputtokensdetails.mdx +++ b/docs/models/components/inputtokensdetails.mdx @@ -6,5 +6,5 @@ title: "InputTokensDetails" | Field | Type | Required | Description | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `CachedTokens` | `int64` | ✅ | N/A | \ No newline at end of file +| `CacheWriteTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `CachedTokens` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/inputvideo.mdx b/docs/models/components/inputvideo.mdx index b05c03e31..1865f1363 100644 --- a/docs/models/components/inputvideo.mdx +++ b/docs/models/components/inputvideo.mdx @@ -9,6 +9,6 @@ Video input content item | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Processing` | [*components.InputVideoProcessing](../../models/components/inputvideoprocessing.mdx) | ➖ | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | -| `Type` | [components.InputVideoType](../../models/components/inputvideotype.mdx) | ✅ | N/A | | -| `VideoURL` | `string` | ✅ | A base64 data URL or remote URL that resolves to a video file | | \ No newline at end of file +| `Processing` | [*components.InputVideoProcessing](../../models/components/inputvideoprocessing.mdx) | :heavy_minus_sign: | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | +| `Type` | [components.InputVideoType](../../models/components/inputvideotype.mdx) | :heavy_check_mark: | N/A | | +| `VideoURL` | `string` | :heavy_check_mark: | A base64 data URL or remote URL that resolves to a video file | | \ No newline at end of file diff --git a/docs/models/components/intern.mdx b/docs/models/components/intern.mdx deleted file mode 100644 index 52b189409..000000000 --- a/docs/models/components/intern.mdx +++ /dev/null @@ -1,28 +0,0 @@ ---- -title: "Intern" ---- - -Public lifecycle state and settings for one intern. - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AttachedVaultID` | `*string` | ✅ | Vault the intern borrows from another intern, or null when it borrows none. | -| `CanEdit` | `*bool` | ➖ | Whether this key may change the intern (update, provision, suspend, delete). Present on list and retrieve; false while lifecycle writes are closed for the account. | -| `CreatedAt` | `string` | ✅ | ISO 8601 creation time. | -| `CreatedByYou` | `*bool` | ➖ | Whether the user behind the key created the intern. Present on list and retrieve; absent for organization keys, which act for no user. | -| `Description` | `*string` | ✅ | Free-form description. | -| `Hostname` | `*string` | ✅ | Public hostname the intern is reachable at, or null until provisioning has assigned one. | -| `IconSha256` | optionalnullable.OptionalNullable[`string`] | ➖ | SHA-256 of the intern icon, or null when it has none. Present on list and retrieve; fetch the bytes from `GET /api/v1/interns/{intern_id}/icon`. | -| `ID` | `string` | ✅ | Intern id. | -| `Instructions` | `*string` | ✅ | Standing instructions the intern boots with. | -| `LastFailureMessage` | `*string` | ✅ | Why the last provisioning attempt failed, when status is failed. | -| `Model` | `*string` | ✅ | OpenRouter model slug the intern runs, or null for the workspace default. | -| `Name` | `string` | ✅ | Intern name, unique per creator within a workspace. | -| `Progress` | [*components.Progress](../../models/components/progress.mdx) | ✅ | Active provisioning step, or null once provisioning has settled. | -| `Status` | [components.InternStatus](../../models/components/internstatus.mdx) | ✅ | Lifecycle status. | -| `UpdatedAt` | `string` | ✅ | ISO 8601 last update time. | -| `VaultID` | `*string` | ✅ | Vault the intern owns, or null before it has been created. | -| `WorkspaceID` | `string` | ✅ | Workspace that owns the intern and scopes its secrets. | \ No newline at end of file diff --git a/docs/models/components/internalserverresponseerrordata.mdx b/docs/models/components/internalserverresponseerrordata.mdx index 6b89dcbcb..7af4937fc 100644 --- a/docs/models/components/internalserverresponseerrordata.mdx +++ b/docs/models/components/internalserverresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for InternalServerResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/internapprovalmode.mdx b/docs/models/components/internapprovalmode.mdx deleted file mode 100644 index 8b871d1ac..000000000 --- a/docs/models/components/internapprovalmode.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "InternApprovalMode" ---- - -How the run started by this prompt handles tool approvals. `self-drive` (the default when omitted) consents on your behalf and runs the shell unsandboxed. `manual` asks you before an approval-bearing tool runs, as an `openrouter.provide_input` permission request, and keeps the shell sandboxed until an escalation is allowed. The mode applies to the run this prompt starts and is not remembered by the session. Repeat it on each new prompt that should use it. A `tool` reply continues the run under the mode it started with. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternApprovalModeManual - -// Open enum: custom values can be created with a direct type cast -custom := components.InternApprovalMode("custom_value") -``` - - -## Values - -| Name | Value | -| ----------------------------- | ----------------------------- | -| `InternApprovalModeManual` | manual | -| `InternApprovalModeSelfDrive` | self-drive | \ No newline at end of file diff --git a/docs/models/components/internchatassistantmessage.mdx b/docs/models/components/internchatassistantmessage.mdx deleted file mode 100644 index 0573a033c..000000000 --- a/docs/models/components/internchatassistantmessage.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternChatAssistantMessage" ---- - -An assistant message from an earlier response. When answering an interaction, echo the streamed `tool_calls` here before the `tool` message. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[components.InternChatMessageContent](../../models/components/internchatmessagecontent.mdx)] | ➖ | Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. | Summarize the open pull requests. | -| `Role` | [components.InternChatAssistantMessageRole](../../models/components/internchatassistantmessagerole.mdx) | ✅ | N/A | | -| `ToolCalls` | [][components.InternChatEchoedToolCall](../../models/components/internchatechoedtoolcall.mdx) | ➖ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatassistantmessagerole.mdx b/docs/models/components/internchatassistantmessagerole.mdx deleted file mode 100644 index 301866272..000000000 --- a/docs/models/components/internchatassistantmessagerole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatAssistantMessageRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatAssistantMessageRoleAssistant -``` - - -## Values - -| Name | Value | -| ----------------------------------------- | ----------------------------------------- | -| `InternChatAssistantMessageRoleAssistant` | assistant | \ No newline at end of file diff --git a/docs/models/components/internchatchoice.mdx b/docs/models/components/internchatchoice.mdx deleted file mode 100644 index 8ea4214f2..000000000 --- a/docs/models/components/internchatchoice.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternChatChoice" ---- - -The single choice this endpoint streams. - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Delta` | [components.InternChatDelta](../../models/components/internchatdelta.mdx) | ✅ | The incremental content of one chunk. The first chunk carries `role`, text chunks carry `content`, reasoning chunks carry `reasoning`, and an interaction chunk carries one complete `tool_calls` entry. | \{
"content": "Hello"
} | -| `FinishReason` | [*components.InternChatChoiceFinishReason](../../models/components/internchatchoicefinishreason.mdx) | ✅ | `null` while streaming. `stop` when the run completed, `tool_calls` when the run is waiting for the caller to answer the streamed tool call, `error` on the terminal error chunk. | | -| `Index` | `int64` | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatchoicefinishreason.mdx b/docs/models/components/internchatchoicefinishreason.mdx deleted file mode 100644 index 7248bff00..000000000 --- a/docs/models/components/internchatchoicefinishreason.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: "InternChatChoiceFinishReason" ---- - -`null` while streaming. `stop` when the run completed, `tool_calls` when the run is waiting for the caller to answer the streamed tool call, `error` on the terminal error chunk. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatChoiceFinishReasonError - -// Open enum: custom values can be created with a direct type cast -custom := components.InternChatChoiceFinishReason("custom_value") -``` - - -## Values - -| Name | Value | -| --------------------------------------- | --------------------------------------- | -| `InternChatChoiceFinishReasonError` | error | -| `InternChatChoiceFinishReasonStop` | stop | -| `InternChatChoiceFinishReasonToolCalls` | tool_calls | \ No newline at end of file diff --git a/docs/models/components/internchatcompletionchunk.mdx b/docs/models/components/internchatcompletionchunk.mdx deleted file mode 100644 index 99f29517e..000000000 --- a/docs/models/components/internchatcompletionchunk.mdx +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "InternChatCompletionChunk" ---- - -One `data:` line of the stream. A run streams a role chunk, content and reasoning chunks, then a finish chunk: `stop`, `tool_calls` (the run is paused for input) or `error` (with an `error` object). A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the daemon reported usage, and always `null` after `tool_calls`). Every stream ends with `[DONE]`. - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Choices` | [][components.InternChatChoice](../../models/components/internchatchoice.mdx) | ✅ | One choice on content, tool-call and error chunks. Empty on the final chunk that carries `session_id`. | | -| `Created` | `int64` | ✅ | N/A | | -| `Error` | [*components.InternChatStreamError](../../models/components/internchatstreamerror.mdx) | ➖ | A failure after the response headers were sent. The chunk that carries it has `finish_reason: "error"`, then the final empty-`choices` chunk and `[DONE]` follow. Reasons here are `attachment_failed`, `busy`, `client_closed_request`, `interaction_not_pending`, `interaction_unknown`, `intern_unreachable`, `run_ended`, `stream_severed`, `timeout` or `turn_failed`. `run_ended` reports an ending the intern confirmed, such as a cancellation or a deadline, while `stream_severed` reports a connection lost without that confirmation. | \{
"code": 502,
"message": "The intern could not continue this run.",
"metadata": \{
"reason": "attachment_failed",
"retryable": false
}
} | -| `ID` | `string` | ✅ | The completion id, constant for the whole response. | chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750 | -| `Model` | `string` | ✅ | The runtime's identifier for the model the intern is running, as the intern reports it. Each chunk carries the model from the event behind it: `openrouter/intern` on chunks emitted before the intern has reported one and on chunks the API emits itself (timeout, run-ended and severed-stream errors and their final usage chunk), even after an earlier chunk named a model. It can change within a stream. It is not an OpenRouter model slug, and the request `model` is never used. | | -| `Object` | [components.InternChatCompletionChunkObject](../../models/components/internchatcompletionchunkobject.mdx) | ✅ | N/A | | -| `SessionID` | optionalnullable.OptionalNullable[`string`] | ➖ | On the final chunk of every response, the daemon session to continue with, or `null` when the run failed before the intern reported one. Send it as `session_id` on the next request, including the `tool` reply to an interaction. Session ids are client-visible and scoped to the intern's own daemon. | ses_7f3c9a | -| `Usage` | optionalnullable.OptionalNullable[[components.InternChatUsage](../../models/components/internchatusage.mdx)] | ➖ | Token usage for the run as the daemon reported it, on the final chunk before `[DONE]`. `null` when the daemon reported none, and always `null` after `tool_calls` because the turn is not over. | \{
"completion_tokens": 12,
"prompt_tokens": 40,
"total_tokens": 52
} | \ No newline at end of file diff --git a/docs/models/components/internchatcompletionchunkobject.mdx b/docs/models/components/internchatcompletionchunkobject.mdx deleted file mode 100644 index 160eb890e..000000000 --- a/docs/models/components/internchatcompletionchunkobject.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatCompletionChunkObject" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatCompletionChunkObjectChatCompletionChunk -``` - - -## Values - -| Name | Value | -| ---------------------------------------------------- | ---------------------------------------------------- | -| `InternChatCompletionChunkObjectChatCompletionChunk` | chat.completion.chunk | \ No newline at end of file diff --git a/docs/models/components/internchatcompletionrequest.mdx b/docs/models/components/internchatcompletionrequest.mdx deleted file mode 100644 index 6dca3519a..000000000 --- a/docs/models/components/internchatcompletionrequest.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "InternChatCompletionRequest" ---- - -An OpenAI-compatible streaming chat completion request for one intern. Other OpenAI fields such as `temperature` or `tools` are ignored. The intern owns its sampling and its tools. - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ApprovalMode` | [*components.InternApprovalMode](../../models/components/internapprovalmode.mdx) | ➖ | How the run started by this prompt handles tool approvals. `self-drive` (the default when omitted) consents on your behalf and runs the shell unsandboxed. `manual` asks you before an approval-bearing tool runs, as an `openrouter.provide_input` permission request, and keeps the shell sandboxed until an escalation is allowed. The mode applies to the run this prompt starts and is not remembered by the session. Repeat it on each new prompt that should use it. A `tool` reply continues the run under the mode it started with. | manual | -| `Messages` | [][components.InternChatMessage](../../models/components/internchatmessage.mdx) | ✅ | The conversation. Only the last message is read. A last `user` message starts a run. A last `tool` message answers the interaction named by its `tool_call_id` and requires `session_id`. | | -| `Model` | `*string` | ➖ | Accepted for OpenAI compatibility and never used. The intern runs the model configured on it (`PATCH` the intern to change it). Streamed chunks report the runtime's identifier for that model as the intern reports it, or `openrouter/intern` on chunks whose event carries no model (before the intern reports one, and on the chunks the API emits itself: the timeout, run-ended and severed-stream error chunks, the stop chunk of a replay that ends without a terminal daemon event, and the final usage chunk after any of them). A usage chunk that follows a daemon completion event carries the model the intern reported. | openrouter/intern | -| `SessionID` | `*string` | ➖ | The daemon session to continue, as returned in `session_id` on the final chunk of an earlier response. Omit it to start a new session. An id the intern has not seen before is not an error: it starts a new session under that id, so a mistyped id forks the conversation. Sessions are scoped to the intern's own daemon. Required when the last message has role `tool`. | ses_7f3c9a | -| `Stream` | `bool` | ✅ | Must be `true`. This endpoint only streams. `false` or an omitted `stream` is refused with `400` and reason `bad_request`. | true | \ No newline at end of file diff --git a/docs/models/components/internchatdelta.mdx b/docs/models/components/internchatdelta.mdx deleted file mode 100644 index 986066422..000000000 --- a/docs/models/components/internchatdelta.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "InternChatDelta" ---- - -The incremental content of one chunk. The first chunk carries `role`, text chunks carry `content`, reasoning chunks carry `reasoning`, and an interaction chunk carries one complete `tool_calls` entry. - - -## Fields - -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | -| `Content` | `*string` | ➖ | N/A | -| `Reasoning` | `*string` | ➖ | N/A | -| `Role` | [*components.InternChatDeltaRole](../../models/components/internchatdeltarole.mdx) | ➖ | N/A | -| `ToolCalls` | [][components.InternChatToolCall](../../models/components/internchattoolcall.mdx) | ➖ | N/A | \ No newline at end of file diff --git a/docs/models/components/internchatdeltarole.mdx b/docs/models/components/internchatdeltarole.mdx deleted file mode 100644 index 554646f40..000000000 --- a/docs/models/components/internchatdeltarole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatDeltaRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatDeltaRoleAssistant -``` - - -## Values - -| Name | Value | -| ------------------------------ | ------------------------------ | -| `InternChatDeltaRoleAssistant` | assistant | \ No newline at end of file diff --git a/docs/models/components/internchatdevelopermessage.mdx b/docs/models/components/internchatdevelopermessage.mdx deleted file mode 100644 index 95de73992..000000000 --- a/docs/models/components/internchatdevelopermessage.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatDeveloperMessage" ---- - -A developer message. Accepted for client compatibility and not forwarded. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [*components.InternChatMessageContent](../../models/components/internchatmessagecontent.mdx) | ✅ | Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. | Summarize the open pull requests. | -| `Role` | [components.InternChatDeveloperMessageRole](../../models/components/internchatdevelopermessagerole.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatdevelopermessagerole.mdx b/docs/models/components/internchatdevelopermessagerole.mdx deleted file mode 100644 index d6a26b782..000000000 --- a/docs/models/components/internchatdevelopermessagerole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatDeveloperMessageRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatDeveloperMessageRoleDeveloper -``` - - -## Values - -| Name | Value | -| ----------------------------------------- | ----------------------------------------- | -| `InternChatDeveloperMessageRoleDeveloper` | developer | \ No newline at end of file diff --git a/docs/models/components/internchatechoedtoolcall.mdx b/docs/models/components/internchatechoedtoolcall.mdx deleted file mode 100644 index 5b8c815e9..000000000 --- a/docs/models/components/internchatechoedtoolcall.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatEchoedToolCall" ---- - -The `openrouter.provide_input` tool call from the previous response, echoed back unchanged. Its `id` is the interaction the following `tool` message answers. - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Function` | [components.InternChatEchoedToolCallFunction](../../models/components/internchatechoedtoolcallfunction.mdx) | ✅ | The function name and JSON arguments string exactly as streamed. | \{
"arguments": "\{\"kind\":\"permission\",\"operation\":\"shell\",\"options\":[\"allow_once\",\"reject_once\"]}",
"name": "openrouter.provide_input"
} | -| `ID` | `string` | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatechoedtoolcallfunction.mdx b/docs/models/components/internchatechoedtoolcallfunction.mdx deleted file mode 100644 index 60262455b..000000000 --- a/docs/models/components/internchatechoedtoolcallfunction.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatEchoedToolCallFunction" ---- - -The function name and JSON arguments string exactly as streamed. - - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Arguments` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/internchaterror.mdx b/docs/models/components/internchaterror.mdx deleted file mode 100644 index 00fadbd21..000000000 --- a/docs/models/components/internchaterror.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternChatError" ---- - -The OpenAI-compatible error object. `metadata` is present on refusals from the chat route. Authentication refusals (`401`), the departed-creator `403` and the programme `404` carry only `code` and `message`. - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `Code` | `int64` | ✅ | The HTTP status of the response. | | -| `Message` | `string` | ✅ | N/A | | -| `Metadata` | [*components.InternChatErrorMetadata](../../models/components/internchaterrormetadata.mdx) | ➖ | Machine-readable detail for the failure. | \{
"reason": "interaction_not_pending",
"retryable": false
} | \ No newline at end of file diff --git a/docs/models/components/internchaterrormetadata.mdx b/docs/models/components/internchaterrormetadata.mdx deleted file mode 100644 index cdc24eeaf..000000000 --- a/docs/models/components/internchaterrormetadata.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatErrorMetadata" ---- - -Machine-readable detail for the failure. - - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Reason` | [components.InternChatErrorMetadataReason](../../models/components/internchaterrormetadatareason.mdx) | ✅ | A stable reason a client can branch on. | -| `Retryable` | `bool` | ✅ | Whether the same request may be sent again unchanged. Always `true` for the transient refusals — `busy`, `intern_not_ready`, `intern_unreachable`, `rate_limited`, `stream_severed` and `timeout` — and always `false` for the ones a retry cannot fix. For `turn_failed` it varies by failure and is the intern's own classification of what went wrong: `true` for an upstream overload, rate limit, timeout or transport fault, `false` for an authentication or bad-request failure that would be rejected the same way again. Branch on this field rather than on `reason` when deciding whether to retry. A `429`, and a `409` or `503` with reason `busy`, also carry a `Retry-After` header saying how long to wait. | \ No newline at end of file diff --git a/docs/models/components/internchaterrormetadatareason.mdx b/docs/models/components/internchaterrormetadatareason.mdx deleted file mode 100644 index 7a989a64b..000000000 --- a/docs/models/components/internchaterrormetadatareason.mdx +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: "InternChatErrorMetadataReason" ---- - -A stable reason a client can branch on. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatErrorMetadataReasonAttachmentFailed - -// Open enum: custom values can be created with a direct type cast -custom := components.InternChatErrorMetadataReason("custom_value") -``` - - -## Values - -| Name | Value | -| ---------------------------------------------------- | ---------------------------------------------------- | -| `InternChatErrorMetadataReasonAttachmentFailed` | attachment_failed | -| `InternChatErrorMetadataReasonBadRequest` | bad_request | -| `InternChatErrorMetadataReasonBusy` | busy | -| `InternChatErrorMetadataReasonClientClosedRequest` | client_closed_request | -| `InternChatErrorMetadataReasonInteractionNotPending` | interaction_not_pending | -| `InternChatErrorMetadataReasonInteractionUnknown` | interaction_unknown | -| `InternChatErrorMetadataReasonInternNotReady` | intern_not_ready | -| `InternChatErrorMetadataReasonInternRejected` | intern_rejected | -| `InternChatErrorMetadataReasonInternUnreachable` | intern_unreachable | -| `InternChatErrorMetadataReasonNotFound` | not_found | -| `InternChatErrorMetadataReasonPayloadTooLarge` | payload_too_large | -| `InternChatErrorMetadataReasonRateLimited` | rate_limited | -| `InternChatErrorMetadataReasonRunEnded` | run_ended | -| `InternChatErrorMetadataReasonStreamSevered` | stream_severed | -| `InternChatErrorMetadataReasonTimeout` | timeout | -| `InternChatErrorMetadataReasonTurnFailed` | turn_failed | \ No newline at end of file diff --git a/docs/models/components/internchatmessage.mdx b/docs/models/components/internchatmessage.mdx deleted file mode 100644 index b85eb0ffe..000000000 --- a/docs/models/components/internchatmessage.mdx +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "InternChatMessage" ---- - -One OpenAI-compatible chat message, discriminated by `role`. - - -## Supported Types - -### InternChatAssistantMessage - -```go -internChatMessage := components.CreateInternChatMessageAssistant(components.InternChatAssistantMessage{/* values here */}) -``` - -### InternChatDeveloperMessage - -```go -internChatMessage := components.CreateInternChatMessageDeveloper(components.InternChatDeveloperMessage{/* values here */}) -``` - -### InternChatSystemMessage - -```go -internChatMessage := components.CreateInternChatMessageSystem(components.InternChatSystemMessage{/* values here */}) -``` - -### InternChatToolMessage - -```go -internChatMessage := components.CreateInternChatMessageTool(components.InternChatToolMessage{/* values here */}) -``` - -### InternChatUserMessage - -```go -internChatMessage := components.CreateInternChatMessageUser(components.InternChatUserMessage{/* values here */}) -``` - -## Union Discrimination - -Use the `Type` field to determine which variant is active, then access the corresponding field: - -```go -switch internChatMessage.Type { - case components.InternChatMessageTypeAssistant: - // internChatMessage.InternChatAssistantMessage is populated - case components.InternChatMessageTypeDeveloper: - // internChatMessage.InternChatDeveloperMessage is populated - case components.InternChatMessageTypeSystem: - // internChatMessage.InternChatSystemMessage is populated - case components.InternChatMessageTypeTool: - // internChatMessage.InternChatToolMessage is populated - case components.InternChatMessageTypeUser: - // internChatMessage.InternChatUserMessage is populated -} -``` diff --git a/docs/models/components/internchatmessagecontent.mdx b/docs/models/components/internchatmessagecontent.mdx deleted file mode 100644 index 22a092082..000000000 --- a/docs/models/components/internchatmessagecontent.mdx +++ /dev/null @@ -1,33 +0,0 @@ ---- -title: "InternChatMessageContent" ---- - -Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - - -## Supported Types - -### - -```go -internChatMessageContent := components.CreateInternChatMessageContentStr(string{/* values here */}) -``` - -### - -```go -internChatMessageContent := components.CreateInternChatMessageContentArrayOfInternChatTextPart([]components.InternChatTextPart{/* values here */}) -``` - -## Union Discrimination - -Use the `Type` field to determine which variant is active, then access the corresponding field: - -```go -switch internChatMessageContent.Type { - case components.InternChatMessageContentTypeStr: - // internChatMessageContent.Str is populated - case components.InternChatMessageContentTypeArrayOfInternChatTextPart: - // internChatMessageContent.ArrayOfInternChatTextPart is populated -} -``` diff --git a/docs/models/components/internchatprompttokensdetails.mdx b/docs/models/components/internchatprompttokensdetails.mdx deleted file mode 100644 index 0dc3e9568..000000000 --- a/docs/models/components/internchatprompttokensdetails.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "InternChatPromptTokensDetails" ---- - -Prompt tokens served from cache, when the daemon reported them. - - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `CachedTokens` | `int64` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/internchatsteeredresponse.mdx b/docs/models/components/internchatsteeredresponse.mdx deleted file mode 100644 index 2b13fca49..000000000 --- a/docs/models/components/internchatsteeredresponse.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatSteeredResponse" ---- - -The message was delivered into the turn already running on the same session. Its effect is streamed on that turn, not here. - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `SessionID` | `string` | ✅ | The session of the running turn the message was delivered to. | sess_01j9x0k4q7v8r2t3m6n5p8w9y1 | -| `Status` | [components.InternChatSteeredResponseStatus](../../models/components/internchatsteeredresponsestatus.mdx) | ✅ | The message was handed to the turn already running on this session. | | \ No newline at end of file diff --git a/docs/models/components/internchatsteeredresponsestatus.mdx b/docs/models/components/internchatsteeredresponsestatus.mdx deleted file mode 100644 index 0218432ad..000000000 --- a/docs/models/components/internchatsteeredresponsestatus.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "InternChatSteeredResponseStatus" ---- - -The message was handed to the turn already running on this session. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatSteeredResponseStatusSteered -``` - - -## Values - -| Name | Value | -| ---------------------------------------- | ---------------------------------------- | -| `InternChatSteeredResponseStatusSteered` | steered | \ No newline at end of file diff --git a/docs/models/components/internchatstreamerror.mdx b/docs/models/components/internchatstreamerror.mdx deleted file mode 100644 index 14c60e0c9..000000000 --- a/docs/models/components/internchatstreamerror.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternChatStreamError" ---- - -A failure after the response headers were sent. The chunk that carries it has `finish_reason: "error"`, then the final empty-`choices` chunk and `[DONE]` follow. Reasons here are `attachment_failed`, `busy`, `client_closed_request`, `interaction_not_pending`, `interaction_unknown`, `intern_unreachable`, `run_ended`, `stream_severed`, `timeout` or `turn_failed`. `run_ended` reports an ending the intern confirmed, such as a cancellation or a deadline, while `stream_severed` reports a connection lost without that confirmation. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Code` | `int64` | ✅ | The HTTP status this failure would have had before the stream opened. | | -| `Message` | `string` | ✅ | N/A | | -| `Metadata` | [components.InternChatErrorMetadata](../../models/components/internchaterrormetadata.mdx) | ✅ | Machine-readable detail for the failure. | \{
"reason": "interaction_not_pending",
"retryable": false
} | \ No newline at end of file diff --git a/docs/models/components/internchatstreamingresponse.mdx b/docs/models/components/internchatstreamingresponse.mdx deleted file mode 100644 index 8cbc551c8..000000000 --- a/docs/models/components/internchatstreamingresponse.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "InternChatStreamingResponse" ---- - -A server-sent event carrying one chunk. The stream ends with `data: [DONE]`. - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.InternChatCompletionChunk](../../models/components/internchatcompletionchunk.mdx) | ✅ | One `data:` line of the stream. A run streams a role chunk, content and reasoning chunks, then a finish chunk: `stop`, `tool_calls` (the run is paused for input) or `error` (with an `error` object). A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the daemon reported usage, and always `null` after `tool_calls`). Every stream ends with `[DONE]`. | \{
"choices": [
\{
"delta": \{
"content": "Hello"
},
"finish_reason": null,
"index": 0
}
],
"created": 1789537541,
"id": "chatcmpl-f727571a-3bad-4e0d-8a9e-f18f8cda9750",
"model": "openrouter/intern",
"object": "chat.completion.chunk"
} | \ No newline at end of file diff --git a/docs/models/components/internchatsystemmessage.mdx b/docs/models/components/internchatsystemmessage.mdx deleted file mode 100644 index da557ec4c..000000000 --- a/docs/models/components/internchatsystemmessage.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatSystemMessage" ---- - -A system message. Accepted for client compatibility and not forwarded. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [*components.InternChatMessageContent](../../models/components/internchatmessagecontent.mdx) | ✅ | Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. | Summarize the open pull requests. | -| `Role` | [components.InternChatSystemMessageRole](../../models/components/internchatsystemmessagerole.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatsystemmessagerole.mdx b/docs/models/components/internchatsystemmessagerole.mdx deleted file mode 100644 index e72b0e26f..000000000 --- a/docs/models/components/internchatsystemmessagerole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatSystemMessageRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatSystemMessageRoleSystem -``` - - -## Values - -| Name | Value | -| ----------------------------------- | ----------------------------------- | -| `InternChatSystemMessageRoleSystem` | system | \ No newline at end of file diff --git a/docs/models/components/internchattextpart.mdx b/docs/models/components/internchattextpart.mdx deleted file mode 100644 index 438c3b0d8..000000000 --- a/docs/models/components/internchattextpart.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatTextPart" ---- - -One text part of a message. - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.InternChatTextPartType](../../models/components/internchattextparttype.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/internchattextparttype.mdx b/docs/models/components/internchattextparttype.mdx deleted file mode 100644 index b401f0927..000000000 --- a/docs/models/components/internchattextparttype.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatTextPartType" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatTextPartTypeText -``` - - -## Values - -| Name | Value | -| ---------------------------- | ---------------------------- | -| `InternChatTextPartTypeText` | text | \ No newline at end of file diff --git a/docs/models/components/internchattoolcall.mdx b/docs/models/components/internchattoolcall.mdx deleted file mode 100644 index e10a27058..000000000 --- a/docs/models/components/internchattoolcall.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "InternChatToolCall" ---- - -An `openrouter.provide_input` request. The run pauses on the daemon until a `tool` message answers it, the caller cancels it, or its interaction deadline passes. - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Function` | [components.InternChatToolCallFunction](../../models/components/internchattoolcallfunction.mdx) | ✅ | The single tool this endpoint calls, asking the caller for input. | \{
"arguments": "\{\"fields\":[\{\"name\":\"answer\",\"options\":[\"red\",\"blue\",\"Other\"],\"required\":true,\"type\":\"string\"}],\"kind\":\"elicitation\",\"message\":\"Which colour do you prefer?\"}",
"name": "openrouter.provide_input"
} | -| `ID` | `string` | ✅ | The interaction id. Send it back as `tool_call_id` on the `tool` message that answers it. | 15e90ad6-5320-4a59-af4f-b371428154fa | -| `Index` | `int64` | ✅ | N/A | | -| `Type` | [components.InternChatToolCallType](../../models/components/internchattoolcalltype.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchattoolcallfunction.mdx b/docs/models/components/internchattoolcallfunction.mdx deleted file mode 100644 index fce692e58..000000000 --- a/docs/models/components/internchattoolcallfunction.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatToolCallFunction" ---- - -The single tool this endpoint calls, asking the caller for input. - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | A JSON object string describing the interaction. A permission request is `{"kind":"permission","operation":,"options":[]}`. A question is `{"kind":"elicitation","message":,"fields":[]}`. | \{"fields":[\{"name":"answer","options":["red","blue","Other"],"required":true,"type":"string"}],"kind":"elicitation","message":"Which colour do you prefer?"} | -| `Name` | [components.InternChatToolCallFunctionName](../../models/components/internchattoolcallfunctionname.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchattoolcallfunctionname.mdx b/docs/models/components/internchattoolcallfunctionname.mdx deleted file mode 100644 index 89dd0a2f7..000000000 --- a/docs/models/components/internchattoolcallfunctionname.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatToolCallFunctionName" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatToolCallFunctionNameOpenrouterProvideInput -``` - - -## Values - -| Name | Value | -| ------------------------------------------------------ | ------------------------------------------------------ | -| `InternChatToolCallFunctionNameOpenrouterProvideInput` | openrouter.provide_input | \ No newline at end of file diff --git a/docs/models/components/internchattoolcalltype.mdx b/docs/models/components/internchattoolcalltype.mdx deleted file mode 100644 index 348556451..000000000 --- a/docs/models/components/internchattoolcalltype.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatToolCallType" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatToolCallTypeFunction -``` - - -## Values - -| Name | Value | -| -------------------------------- | -------------------------------- | -| `InternChatToolCallTypeFunction` | function | \ No newline at end of file diff --git a/docs/models/components/internchattoolmessage.mdx b/docs/models/components/internchattoolmessage.mdx deleted file mode 100644 index 9e6a1e9e9..000000000 --- a/docs/models/components/internchattoolmessage.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternChatToolMessage" ---- - -The answer to an `openrouter.provide_input` tool call. `tool_call_id` is the streamed tool call id and `session_id` must name the same session. For a permission, `content` is one of the offered option kinds (`allow_once`, `allow_always`, `reject_once`, `reject_always`) or `cancel`. For a question (elicitation), `content` is a JSON object string with `action` (`accept`, `decline` or `cancel`) and, for `accept`, `content` holding the field values. The answer is delivered to the run that asked. It never starts a new run. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [*components.InternChatMessageContent](../../models/components/internchatmessagecontent.mdx) | ✅ | Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. | Summarize the open pull requests. | -| `Role` | [components.InternChatToolMessageRole](../../models/components/internchattoolmessagerole.mdx) | ✅ | N/A | | -| `ToolCallID` | `string` | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchattoolmessagerole.mdx b/docs/models/components/internchattoolmessagerole.mdx deleted file mode 100644 index 8af48c06f..000000000 --- a/docs/models/components/internchattoolmessagerole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatToolMessageRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatToolMessageRoleTool -``` - - -## Values - -| Name | Value | -| ------------------------------- | ------------------------------- | -| `InternChatToolMessageRoleTool` | tool | \ No newline at end of file diff --git a/docs/models/components/internchatusage.mdx b/docs/models/components/internchatusage.mdx deleted file mode 100644 index ee3eb3173..000000000 --- a/docs/models/components/internchatusage.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "InternChatUsage" ---- - -Token usage for the run as the daemon reported it, on the final chunk before `[DONE]`. `null` when the daemon reported none, and always `null` after `tool_calls` because the turn is not over. - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `CompletionTokens` | `int64` | ✅ | N/A | | -| `Cost` | `*float64` | ➖ | The cost of the run in USD, when the daemon reported one. | | -| `PromptTokens` | `int64` | ✅ | N/A | | -| `PromptTokensDetails` | [*components.InternChatPromptTokensDetails](../../models/components/internchatprompttokensdetails.mdx) | ➖ | Prompt tokens served from cache, when the daemon reported them. | \{
"cached_tokens": 1024
} | -| `TotalTokens` | `int64` | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatusermessage.mdx b/docs/models/components/internchatusermessage.mdx deleted file mode 100644 index 312c5c1a8..000000000 --- a/docs/models/components/internchatusermessage.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternChatUserMessage" ---- - -A user message. When it is the last message its text is the prompt for a new run, at most 32000 characters. - - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [*components.InternChatMessageContent](../../models/components/internchatmessagecontent.mdx) | ✅ | Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. | Summarize the open pull requests. | -| `Role` | [components.InternChatUserMessageRole](../../models/components/internchatusermessagerole.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/components/internchatusermessagerole.mdx b/docs/models/components/internchatusermessagerole.mdx deleted file mode 100644 index b973c6239..000000000 --- a/docs/models/components/internchatusermessagerole.mdx +++ /dev/null @@ -1,20 +0,0 @@ ---- -title: "InternChatUserMessageRole" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternChatUserMessageRoleUser -``` - - -## Values - -| Name | Value | -| ------------------------------- | ------------------------------- | -| `InternChatUserMessageRoleUser` | user | \ No newline at end of file diff --git a/docs/models/components/internconnection.mdx b/docs/models/components/internconnection.mdx deleted file mode 100644 index e09c1bc1f..000000000 --- a/docs/models/components/internconnection.mdx +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "InternConnection" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | -| `Account` | [components.Account](../../models/components/account.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | Stable id: the credential id of an MCP server, else the kind (`slack`, `github`, `google`). | -| `IsEnabled` | `bool` | ✅ | Whether the intern reaches it now. | -| `IsInternOnly` | `bool` | ✅ | Scoped to this intern rather than shared by the workspace. | -| `Kind` | [components.Kind](../../models/components/kind.mdx) | ✅ | N/A | -| `McpServerName` | `*string` | ✅ | The name the intern's MCP config keys the server by; null when it is not an MCP server or is off. | -| `Name` | `string` | ✅ | Display name. | -| `OffReason` | [*components.OffReason](../../models/components/offreason.mdx) | ✅ | `switched_off` for this intern, `disabled` for the whole workspace; null while on. | -| `Server` | [*components.Server](../../models/components/server.mdx) | ✅ | N/A | -| `Status` | [components.InternConnectionStatus](../../models/components/internconnectionstatus.mdx) | ✅ | N/A | -| `ToolCount` | `*int64` | ✅ | Tools found by the last successful test. | \ No newline at end of file diff --git a/docs/models/components/internconnectionlist.mdx b/docs/models/components/internconnectionlist.mdx deleted file mode 100644 index 0a25becdc..000000000 --- a/docs/models/components/internconnectionlist.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "InternConnectionList" ---- - -## Fields - -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Data` | [][components.InternConnection](../../models/components/internconnection.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/internconnectionscope.mdx b/docs/models/components/internconnectionscope.mdx deleted file mode 100644 index 6c2edc6f6..000000000 --- a/docs/models/components/internconnectionscope.mdx +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: "InternConnectionScope" ---- - -`workspace` for a shared connection, `yours` for the key user's personal account, `shared` for a teammate's. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternConnectionScopeWorkspace - -// Open enum: custom values can be created with a direct type cast -custom := components.InternConnectionScope("custom_value") -``` - - -## Values - -| Name | Value | -| -------------------------------- | -------------------------------- | -| `InternConnectionScopeWorkspace` | workspace | -| `InternConnectionScopeYours` | yours | -| `InternConnectionScopeShared` | shared | \ No newline at end of file diff --git a/docs/models/components/internconnectionstatus.mdx b/docs/models/components/internconnectionstatus.mdx deleted file mode 100644 index cc771923a..000000000 --- a/docs/models/components/internconnectionstatus.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "InternConnectionStatus" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `Reason` | `*string` | ✅ | N/A | -| `State` | [components.StateEnum](../../models/components/stateenum.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/interndaemonaccess.mdx b/docs/models/components/interndaemonaccess.mdx deleted file mode 100644 index 60cbec0f8..000000000 --- a/docs/models/components/interndaemonaccess.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternDaemonAccess" ---- - -The intern daemon's origin, the bearer `ori tui --host` sends to it as `ORI_DAEMON_TOKEN`, and who the caller is on the intern. - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `Origin` | `string` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | -| `Viewer` | [components.Viewer](../../models/components/viewer.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/interninvokeacceptedresponse.mdx b/docs/models/components/interninvokeacceptedresponse.mdx deleted file mode 100644 index 9dfccef39..000000000 --- a/docs/models/components/interninvokeacceptedresponse.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternInvokeAcceptedResponse" ---- - -The intern admitted the prompt. The run continues on the intern. - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `SessionID` | `string` | ✅ | The session the run belongs to. Send it back to continue the conversation. | b51a0e21-368b-4780-a220-14655bf28c55 | -| `Status` | [components.InternInvokeAcceptedResponseStatus](../../models/components/interninvokeacceptedresponsestatus.mdx) | ✅ | `started` when a new run began. `steered` when the session already had a run going and the prompt was delivered into it instead. | started | \ No newline at end of file diff --git a/docs/models/components/interninvokeacceptedresponsestatus.mdx b/docs/models/components/interninvokeacceptedresponsestatus.mdx deleted file mode 100644 index 0e7e61ffb..000000000 --- a/docs/models/components/interninvokeacceptedresponsestatus.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "InternInvokeAcceptedResponseStatus" ---- - -`started` when a new run began. `steered` when the session already had a run going and the prompt was delivered into it instead. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternInvokeAcceptedResponseStatusStarted - -// Open enum: custom values can be created with a direct type cast -custom := components.InternInvokeAcceptedResponseStatus("custom_value") -``` - - -## Values - -| Name | Value | -| ------------------------------------------- | ------------------------------------------- | -| `InternInvokeAcceptedResponseStatusStarted` | started | -| `InternInvokeAcceptedResponseStatusSteered` | steered | \ No newline at end of file diff --git a/docs/models/components/interninvokerequest.mdx b/docs/models/components/interninvokerequest.mdx deleted file mode 100644 index 6ae916f9e..000000000 --- a/docs/models/components/interninvokerequest.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "InternInvokeRequest" ---- - -A prompt to run on the intern without holding a connection open. - - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Input` | `string` | ✅ | The prompt for the run, at most 32000 characters. | New support ticket 48213. Case token: ct_9f2c. Investigate and reply. | -| `SessionID` | `*string` | ➖ | The session to run in. Send the `session_id` from an earlier `202` to continue that conversation, for example to hand the intern a decision on a case it is working. Omit it to start a new session. Only a `session_id` this endpoint issued to the same caller on the same intern is accepted; any other is refused with `404`. | b51a0e21-368b-4780-a220-14655bf28c55 | \ No newline at end of file diff --git a/docs/models/components/internlifecycleerrorerror.mdx b/docs/models/components/internlifecycleerrorerror.mdx deleted file mode 100644 index 8b52aca5d..000000000 --- a/docs/models/components/internlifecycleerrorerror.mdx +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: "InternLifecycleErrorError" ---- - -## Fields - -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Code` | [components.Code](../../models/components/code.mdx) | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | [*components.InternLifecycleErrorMetadata](../../models/components/internlifecycleerrormetadata.mdx) | ➖ | N/A | \ No newline at end of file diff --git a/docs/models/components/internlifecycleerrormetadata.mdx b/docs/models/components/internlifecycleerrormetadata.mdx deleted file mode 100644 index f4f92c755..000000000 --- a/docs/models/components/internlifecycleerrormetadata.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "InternLifecycleErrorMetadata" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Reason` | `string` | ✅ | N/A | -| `Retryable` | `bool` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/internlistresponse.mdx b/docs/models/components/internlistresponse.mdx deleted file mode 100644 index 1f722dadd..000000000 --- a/docs/models/components/internlistresponse.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "InternListResponse" ---- - -Interns visible to the authenticated API key. - - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Data` | [][components.Intern](../../models/components/intern.mdx) | ✅ | N/A | | -| `HasMore` | `bool` | ✅ | True when more interns match the current filters. | | -| `NextCursor` | `*string` | ➖ | Opaque cursor, present when `has_more` is true. Pass it as `starting_after` to fetch the next page. | MjAyNi0wOS0xNlQwODozMDowMC4wMDAwMDBafDdjOWU2Njc5LTc0MjUtNDBkZS05NDRiLWUwN2ZjMWY5MGFlNw | \ No newline at end of file diff --git a/docs/models/components/internstatus.mdx b/docs/models/components/internstatus.mdx deleted file mode 100644 index 03d5e6c67..000000000 --- a/docs/models/components/internstatus.mdx +++ /dev/null @@ -1,32 +0,0 @@ ---- -title: "InternStatus" ---- - -Lifecycle status. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.InternStatusAwaitingSlackInstall - -// Open enum: custom values can be created with a direct type cast -custom := components.InternStatus("custom_value") -``` - - -## Values - -| Name | Value | -| ---------------------------------- | ---------------------------------- | -| `InternStatusAwaitingSlackInstall` | awaiting_slack_install | -| `InternStatusQueued` | queued | -| `InternStatusProvisioning` | provisioning | -| `InternStatusRunning` | running | -| `InternStatusFailed` | failed | -| `InternStatusStopped` | stopped | -| `InternStatusDestroying` | destroying | -| `InternStatusDestroyFailed` | destroy_failed | \ No newline at end of file diff --git a/docs/models/components/itemreferenceitem.mdx b/docs/models/components/itemreferenceitem.mdx index 2afb482f6..8f066bd2f 100644 --- a/docs/models/components/itemreferenceitem.mdx +++ b/docs/models/components/itemreferenceitem.mdx @@ -9,5 +9,5 @@ A reference to a previous response item by ID | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | N/A | -| `Type` | [components.ItemReferenceItemType](../../models/components/itemreferenceitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ItemReferenceItemType](../../models/components/itemreferenceitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/jevrouterplugin.mdx b/docs/models/components/jevrouterplugin.mdx index 334c7b027..da7aee03d 100644 --- a/docs/models/components/jevrouterplugin.mdx +++ b/docs/models/components/jevrouterplugin.mdx @@ -6,8 +6,8 @@ title: "JevRouterPlugin" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedModels` | []`string` | ➖ | Alias of `models`, matching the auto-router field name. Entries from both fields are combined. | [
"anthropic/*"
] | -| `CostTier` | `*string` | ➖ | Select low, medium, high, or a cost tier configured by the operator. Overrides the live-config tier and replaces the shared routing policy with that tier. Omit to use the live configuration. Model exclusions and the router kill switch still apply. | medium | -| `ExcludedModels` | []`string` | ➖ | Remove these models from the router. Each entry is a model slug or a wildcard pattern (e.g. "xiaomi/*"). A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after `models`, so an excluded pattern always wins over an included one; when the lists leave no model the request can use, it fails with 404 rather than routing outside them. | [
"openai/gpt-6-astra",
"xiaomi/*"
] | -| `ID` | [components.JevRouterPluginID](../../models/components/jevrouterpluginid.mdx) | ✅ | N/A | | -| `Models` | []`string` | ➖ | Restrict the router to these models. Each entry is a model slug or a wildcard pattern (e.g. "anthropic/*"), matched against the current pool; models outside the pool are ignored. A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When omitted or empty, every model in the pool is a candidate; when no pool model matches, the list is ignored and the whole pool is used (`excluded_models` still apply). `allowed_models` is an alias; entries from both fields are combined. | [
"anthropic/*",
"openai/gpt-5.6-sol"
] | \ No newline at end of file +| `AllowedModels` | []`string` | :heavy_minus_sign: | Alias of `models`, matching the auto-router field name. Entries from both fields are combined. | [
"anthropic/*"
] | +| `CostTier` | `*string` | :heavy_minus_sign: | Select low, medium, high, or a cost tier configured by the operator. Overrides the live-config tier and replaces the shared routing policy with that tier. Omit to use the live configuration. Model exclusions and the router kill switch still apply. | medium | +| `ExcludedModels` | []`string` | :heavy_minus_sign: | Remove these models from the router. Each entry is a model slug or a wildcard pattern (e.g. "xiaomi/*"). A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. Applied after `models`, so an excluded pattern always wins over an included one; when the lists leave no model the request can use, it fails with 404 rather than routing outside them. | [
"openai/gpt-6-astra",
"xiaomi/*"
] | +| `ID` | [components.JevRouterPluginID](../../models/components/jevrouterpluginid.mdx) | :heavy_check_mark: | N/A | | +| `Models` | []`string` | :heavy_minus_sign: | Restrict the router to these models. Each entry is a model slug or a wildcard pattern (e.g. "anthropic/*"), matched against the current pool; models outside the pool are ignored. A `~author/family-latest` alias matches every revision of that family. Up to 1024 patterns, each at most 1024 characters, with 65536 total characters across all patterns. When omitted or empty, every model in the pool is a candidate; when no pool model matches, the list is ignored and the whole pool is used (`excluded_models` still apply). `allowed_models` is an alias; entries from both fields are combined. | [
"anthropic/*",
"openai/gpt-5.6-sol"
] | \ No newline at end of file diff --git a/docs/models/components/keepall.mdx b/docs/models/components/keepall.mdx index cfd2cada7..ae5186c84 100644 --- a/docs/models/components/keepall.mdx +++ b/docs/models/components/keepall.mdx @@ -6,4 +6,4 @@ title: "KeepAll" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Type` | [components.KeepType](../../models/components/keeptype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.KeepType](../../models/components/keeptype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/key.mdx b/docs/models/components/key.mdx index 17f64d5ab..30db612e1 100644 --- a/docs/models/components/key.mdx +++ b/docs/models/components/key.mdx @@ -6,10 +6,10 @@ title: "Key" | Field | Type | Required | Description | | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | -| `Alg` | [components.Alg](../../models/components/alg.mdx) | ✅ | N/A | -| `Crv` | [components.Crv](../../models/components/crv.mdx) | ✅ | N/A | -| `Kid` | `string` | ✅ | N/A | -| `Kty` | [components.Kty](../../models/components/kty.mdx) | ✅ | N/A | -| `Use` | [components.Use](../../models/components/use.mdx) | ✅ | N/A | -| `X` | `string` | ✅ | N/A | -| `Y` | `string` | ✅ | N/A | \ No newline at end of file +| `Alg` | [components.Alg](../../models/components/alg.mdx) | :heavy_check_mark: | N/A | +| `Crv` | [components.Crv](../../models/components/crv.mdx) | :heavy_check_mark: | N/A | +| `Kid` | `string` | :heavy_check_mark: | N/A | +| `Kty` | [components.Kty](../../models/components/kty.mdx) | :heavy_check_mark: | N/A | +| `Use` | [components.Use](../../models/components/use.mdx) | :heavy_check_mark: | N/A | +| `X` | `string` | :heavy_check_mark: | N/A | +| `Y` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/keyassignment.mdx b/docs/models/components/keyassignment.mdx index 53549ef05..2c43bdd78 100644 --- a/docs/models/components/keyassignment.mdx +++ b/docs/models/components/keyassignment.mdx @@ -6,10 +6,10 @@ title: "KeyAssignment" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `AssignedBy` | `*string` | ✅ | User ID of who made the assignment | user_abc123 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the assignment was created | 2025-08-24T10:30:00Z | -| `GuardrailID` | `string` | ✅ | ID of the guardrail | 550e8400-e29b-41d4-a716-446655440001 | -| `ID` | `string` | ✅ | Unique identifier for the assignment | 550e8400-e29b-41d4-a716-446655440000 | -| `KeyHash` | `string` | ✅ | Hash of the assigned API key | c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93 | -| `KeyLabel` | `string` | ✅ | Label of the API key | prod-key | -| `KeyName` | `string` | ✅ | Name of the API key | Production Key | \ No newline at end of file +| `AssignedBy` | `*string` | :heavy_check_mark: | User ID of who made the assignment | user_abc123 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the assignment was created | 2025-08-24T10:30:00Z | +| `GuardrailID` | `string` | :heavy_check_mark: | ID of the guardrail | 550e8400-e29b-41d4-a716-446655440001 | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the assignment | 550e8400-e29b-41d4-a716-446655440000 | +| `KeyHash` | `string` | :heavy_check_mark: | Hash of the assigned API key | c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93 | +| `KeyLabel` | `string` | :heavy_check_mark: | Label of the API key | prod-key | +| `KeyName` | `string` | :heavy_check_mark: | Name of the API key | Production Key | \ No newline at end of file diff --git a/docs/models/components/keybudget.mdx b/docs/models/components/keybudget.mdx index ae9c89047..b77c07629 100644 --- a/docs/models/components/keybudget.mdx +++ b/docs/models/components/keybudget.mdx @@ -9,12 +9,12 @@ One budget layer that applies to requests made with this key, with the spend enf | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BudgetID` | `*string` | ✅ | ID of the workspace budget for the `workspace` scope; null for other scopes. | null | -| `GuardrailID` | `*string` | ✅ | ID of the guardrail that carries this budget; null for other scopes. | 0df9e665-d932-5740-b2c7-b52af166bc11 | -| `IncludeBYOK` | `bool` | ✅ | Whether external BYOK inference spend counts toward this budget. | false | -| `LimitUsd` | `float64` | ✅ | Budget limit in USD for the current window. | 50 | -| `RemainingUsd` | `float64` | ✅ | `limit_usd - spend_usd`. Zero or negative means this layer rejects requests with a 403 until it resets. | 17.5 | -| `ResetInterval` | [*components.KeyBudgetResetInterval](../../models/components/keybudgetresetinterval.mdx) | ✅ | UTC window the spend is counted over (weeks start Monday); null for a lifetime budget that never resets. | weekly | -| `ResetsAt` | [*time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC instant at which the window rolls over and spend returns to zero; null for a lifetime budget. | 2026-10-12T00:00:00.000Z | -| `Scope` | [components.KeyBudgetScope](../../models/components/keybudgetscope.mdx) | ✅ | Which budget layer this is, in the order enforcement checks them: the workspace default guardrail against the member aggregate (`workspace_default_member`) and against this key (`workspace_default_key`), the member guardrail (`member`), the API key guardrail (`api_key`), a workspace budget (`workspace`), or the key's own limit (`key_limit`). | member | -| `SpendUsd` | `float64` | ✅ | Spend in USD that enforcement counts against this limit in the current window: the member aggregate for member-scoped layers, otherwise this key or workspace. | 32.5 | \ No newline at end of file +| `BudgetID` | `*string` | :heavy_check_mark: | ID of the workspace budget for the `workspace` scope; null for other scopes. | null | +| `GuardrailID` | `*string` | :heavy_check_mark: | ID of the guardrail that carries this budget; null for other scopes. | 0df9e665-d932-5740-b2c7-b52af166bc11 | +| `IncludeBYOK` | `bool` | :heavy_check_mark: | Whether external BYOK inference spend counts toward this budget. | false | +| `LimitUsd` | `float64` | :heavy_check_mark: | Budget limit in USD for the current window. | 50 | +| `RemainingUsd` | `float64` | :heavy_check_mark: | `limit_usd - spend_usd`. Zero or negative means this layer rejects requests with a 403 until it resets. | 17.5 | +| `ResetInterval` | [*components.KeyBudgetResetInterval](../../models/components/keybudgetresetinterval.mdx) | :heavy_check_mark: | UTC window the spend is counted over (weeks start Monday); null for a lifetime budget that never resets. | weekly | +| `ResetsAt` | [*time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC instant at which the window rolls over and spend returns to zero; null for a lifetime budget. | 2026-10-12T00:00:00.000Z | +| `Scope` | [components.KeyBudgetScope](../../models/components/keybudgetscope.mdx) | :heavy_check_mark: | Which budget layer this is, in the order enforcement checks them: the workspace default guardrail against the member aggregate (`workspace_default_member`) and against this key (`workspace_default_key`), the member guardrail (`member`), the API key guardrail (`api_key`), a workspace budget (`workspace`), or the key's own limit (`key_limit`). | member | +| `SpendUsd` | `float64` | :heavy_check_mark: | Spend in USD that enforcement counts against this limit in the current window: the member aggregate for member-scoped layers, otherwise this key or workspace. | 32.5 | \ No newline at end of file diff --git a/docs/models/components/kind.mdx b/docs/models/components/kind.mdx deleted file mode 100644 index 536305ef7..000000000 --- a/docs/models/components/kind.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "Kind" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.KindSlack - -// Open enum: custom values can be created with a direct type cast -custom := components.Kind("custom_value") -``` - - -## Values - -| Name | Value | -| ------------ | ------------ | -| `KindSlack` | slack | -| `KindGithub` | github | -| `KindGoogle` | google | -| `KindMcp` | mcp | \ No newline at end of file diff --git a/docs/models/components/legacychatcontentvideo.mdx b/docs/models/components/legacychatcontentvideo.mdx index b86f41be0..424b46635 100644 --- a/docs/models/components/legacychatcontentvideo.mdx +++ b/docs/models/components/legacychatcontentvideo.mdx @@ -4,12 +4,12 @@ title: "~~LegacyChatContentVideo~~" Video input content part (legacy format - deprecated) -> ⚠️ **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. +> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. ## Fields | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Type` | [components.LegacyChatContentVideoType](../../models/components/legacychatcontentvideotype.mdx) | ✅ | N/A | | -| `VideoURL` | [components.LegacyChatContentVideoInput](../../models/components/legacychatcontentvideoinput.mdx) | ✅ | Video input object | \{
"url": "https://example.com/video.mp4"
} | \ No newline at end of file +| `Type` | [components.LegacyChatContentVideoType](../../models/components/legacychatcontentvideotype.mdx) | :heavy_check_mark: | N/A | | +| `VideoURL` | [components.LegacyChatContentVideoInput](../../models/components/legacychatcontentvideoinput.mdx) | :heavy_check_mark: | Video input object | \{
"url": "https://example.com/video.mp4"
} | \ No newline at end of file diff --git a/docs/models/components/legacychatcontentvideoinput.mdx b/docs/models/components/legacychatcontentvideoinput.mdx index 30ee33d08..89b253bb0 100644 --- a/docs/models/components/legacychatcontentvideoinput.mdx +++ b/docs/models/components/legacychatcontentvideoinput.mdx @@ -9,5 +9,5 @@ Video input object | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Processing` | [*components.LegacyChatContentVideoInputProcessing](../../models/components/legacychatcontentvideoinputprocessing.mdx) | ➖ | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | -| `URL` | `string` | ✅ | URL of the video (data: URLs supported) | | \ No newline at end of file +| `Processing` | [*components.LegacyChatContentVideoInputProcessing](../../models/components/legacychatcontentvideoinputprocessing.mdx) | :heavy_minus_sign: | Video processing mode. `agentic` enables agentic video processing and `static` forces fixed-rate frame sampling on providers that support it (currently Google Gemini). | agentic | +| `URL` | `string` | :heavy_check_mark: | URL of the video (data: URLs supported) | | \ No newline at end of file diff --git a/docs/models/components/legacywebsearchservertool.mdx b/docs/models/components/legacywebsearchservertool.mdx index ab391bc87..ea5da4173 100644 --- a/docs/models/components/legacywebsearchservertool.mdx +++ b/docs/models/components/legacywebsearchservertool.mdx @@ -9,12 +9,12 @@ Web search tool configuration | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | ➖ | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | ➖ | Size of the search context for web search tools | medium | -| `Type` | [components.LegacyWebSearchServerToolType](../../models/components/legacywebsearchservertooltype.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.WebSearchUserLocation](../../models/components/websearchuserlocation.mdx)] | ➖ | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | +| `Type` | [components.LegacyWebSearchServerToolType](../../models/components/legacywebsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.WebSearchUserLocation](../../models/components/websearchuserlocation.mdx)] | :heavy_minus_sign: | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/listbyokkeysresponse.mdx b/docs/models/components/listbyokkeysresponse.mdx index a42c2d555..78aefe26f 100644 --- a/docs/models/components/listbyokkeysresponse.mdx +++ b/docs/models/components/listbyokkeysresponse.mdx @@ -6,5 +6,5 @@ title: "ListBYOKKeysResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Data` | [][components.BYOKKey](../../models/components/byokkey.mdx) | ✅ | List of BYOK credentials. | | -| `TotalCount` | `int64` | ✅ | Total number of BYOK credentials matching the filters. | 1 | \ No newline at end of file +| `Data` | [][components.BYOKKey](../../models/components/byokkey.mdx) | :heavy_check_mark: | List of BYOK credentials. | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of BYOK credentials matching the filters. | 1 | \ No newline at end of file diff --git a/docs/models/components/listendpointsresponse.mdx b/docs/models/components/listendpointsresponse.mdx index a1301eb32..795ee2f8f 100644 --- a/docs/models/components/listendpointsresponse.mdx +++ b/docs/models/components/listendpointsresponse.mdx @@ -9,9 +9,9 @@ List of available endpoints for a model | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Architecture` | [components.Architecture](../../models/components/architecture.mdx) | ✅ | N/A | \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
} | -| `Created` | `int64` | ✅ | Unix timestamp of when the model was created | 1692901234 | -| `Description` | `string` | ✅ | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | -| `Endpoints` | [][components.PublicEndpoint](../../models/components/publicendpoint.mdx) | ✅ | List of available endpoints for this model | | -| `ID` | `string` | ✅ | Unique identifier for the model | openai/gpt-4 | -| `Name` | `string` | ✅ | Display name of the model | GPT-4 | \ No newline at end of file +| `Architecture` | [components.Architecture](../../models/components/architecture.mdx) | :heavy_check_mark: | N/A | \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
} | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp of when the model was created | 1692901234 | +| `Description` | `string` | :heavy_check_mark: | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | +| `Endpoints` | [][components.PublicEndpoint](../../models/components/publicendpoint.mdx) | :heavy_check_mark: | List of available endpoints for this model | | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the model | openai/gpt-4 | +| `Name` | `string` | :heavy_check_mark: | Display name of the model | GPT-4 | \ No newline at end of file diff --git a/docs/models/components/listexternalusersresponse.mdx b/docs/models/components/listexternalusersresponse.mdx index 178afcbf0..ece6ca294 100644 --- a/docs/models/components/listexternalusersresponse.mdx +++ b/docs/models/components/listexternalusersresponse.mdx @@ -6,5 +6,5 @@ title: "ListExternalUsersResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `Data` | [][components.ExternalUser](../../models/components/externaluser.mdx) | ✅ | N/A | | -| `TotalCount` | `int64` | ✅ | Number of registrations matching the filters before pagination. | 1 | \ No newline at end of file +| `Data` | [][components.ExternalUser](../../models/components/externaluser.mdx) | :heavy_check_mark: | N/A | | +| `TotalCount` | `int64` | :heavy_check_mark: | Number of registrations matching the filters before pagination. | 1 | \ No newline at end of file diff --git a/docs/models/components/listguardrailsresponse.mdx b/docs/models/components/listguardrailsresponse.mdx index 3a58d9243..f8330d492 100644 --- a/docs/models/components/listguardrailsresponse.mdx +++ b/docs/models/components/listguardrailsresponse.mdx @@ -6,5 +6,5 @@ title: "ListGuardrailsResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Data` | [][components.Guardrail](../../models/components/guardrail.mdx) | ✅ | List of guardrails | | -| `TotalCount` | `int64` | ✅ | Total number of guardrails | 25 | \ No newline at end of file +| `Data` | [][components.Guardrail](../../models/components/guardrail.mdx) | :heavy_check_mark: | List of guardrails | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of guardrails | 25 | \ No newline at end of file diff --git a/docs/models/components/listkeyassignmentsresponse.mdx b/docs/models/components/listkeyassignmentsresponse.mdx index a87334632..50b790255 100644 --- a/docs/models/components/listkeyassignmentsresponse.mdx +++ b/docs/models/components/listkeyassignmentsresponse.mdx @@ -6,5 +6,5 @@ title: "ListKeyAssignmentsResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Data` | [][components.KeyAssignment](../../models/components/keyassignment.mdx) | ✅ | List of key assignments | | -| `TotalCount` | `int64` | ✅ | Total number of key assignments for this guardrail | 25 | \ No newline at end of file +| `Data` | [][components.KeyAssignment](../../models/components/keyassignment.mdx) | :heavy_check_mark: | List of key assignments | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of key assignments for this guardrail | 25 | \ No newline at end of file diff --git a/docs/models/components/listmemberassignmentsresponse.mdx b/docs/models/components/listmemberassignmentsresponse.mdx index 7d426f679..47f80b073 100644 --- a/docs/models/components/listmemberassignmentsresponse.mdx +++ b/docs/models/components/listmemberassignmentsresponse.mdx @@ -6,5 +6,5 @@ title: "ListMemberAssignmentsResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Data` | [][components.MemberAssignment](../../models/components/memberassignment.mdx) | ✅ | List of member assignments | | -| `TotalCount` | `int64` | ✅ | Total number of member assignments | 10 | \ No newline at end of file +| `Data` | [][components.MemberAssignment](../../models/components/memberassignment.mdx) | :heavy_check_mark: | List of member assignments | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of member assignments | 10 | \ No newline at end of file diff --git a/docs/models/components/listobservabilitydestinationsresponse.mdx b/docs/models/components/listobservabilitydestinationsresponse.mdx index 29da8a3b4..0271143fe 100644 --- a/docs/models/components/listobservabilitydestinationsresponse.mdx +++ b/docs/models/components/listobservabilitydestinationsresponse.mdx @@ -6,5 +6,5 @@ title: "ListObservabilityDestinationsResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Data` | [][components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | ✅ | List of observability destinations. | | -| `TotalCount` | `int64` | ✅ | Total number of destinations matching the filters. | 1 | \ No newline at end of file +| `Data` | [][components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | :heavy_check_mark: | List of observability destinations. | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of destinations matching the filters. | 1 | \ No newline at end of file diff --git a/docs/models/components/listpresetsresponse.mdx b/docs/models/components/listpresetsresponse.mdx index eb5391e59..1b67ede4d 100644 --- a/docs/models/components/listpresetsresponse.mdx +++ b/docs/models/components/listpresetsresponse.mdx @@ -9,5 +9,5 @@ A paginated list of presets. | Field | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `Data` | [][components.Preset](../../models/components/preset.mdx) | ✅ | N/A | -| `TotalCount` | `int64` | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.Preset](../../models/components/preset.mdx) | :heavy_check_mark: | N/A | +| `TotalCount` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/listpresetversionsresponse.mdx b/docs/models/components/listpresetversionsresponse.mdx index 93e14a0e6..625b2bbd6 100644 --- a/docs/models/components/listpresetversionsresponse.mdx +++ b/docs/models/components/listpresetversionsresponse.mdx @@ -9,5 +9,5 @@ A paginated list of preset versions. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `Data` | [][*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | ✅ | N/A | -| `TotalCount` | `int64` | ✅ | N/A | \ No newline at end of file +| `Data` | [][*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | :heavy_check_mark: | N/A | +| `TotalCount` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/listprivateendpointsresponse.mdx b/docs/models/components/listprivateendpointsresponse.mdx index 41e3794fd..618511e93 100644 --- a/docs/models/components/listprivateendpointsresponse.mdx +++ b/docs/models/components/listprivateendpointsresponse.mdx @@ -6,4 +6,4 @@ title: "ListPrivateEndpointsResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Data` | [][components.PrivateEndpointSummary](../../models/components/privateendpointsummary.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.PrivateEndpointSummary](../../models/components/privateendpointsummary.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/listscimgroupmappingsresponse.mdx b/docs/models/components/listscimgroupmappingsresponse.mdx index 0d981f84d..5c722d196 100644 --- a/docs/models/components/listscimgroupmappingsresponse.mdx +++ b/docs/models/components/listscimgroupmappingsresponse.mdx @@ -6,5 +6,5 @@ title: "ListScimGroupMappingsResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Data` | [][components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | ✅ | N/A | -| `TotalCount` | `int64` | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | :heavy_check_mark: | N/A | +| `TotalCount` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/listscimgroupsresponse.mdx b/docs/models/components/listscimgroupsresponse.mdx index f7954a0f7..003a65257 100644 --- a/docs/models/components/listscimgroupsresponse.mdx +++ b/docs/models/components/listscimgroupsresponse.mdx @@ -6,5 +6,5 @@ title: "ListScimGroupsResponse" | Field | Type | Required | Description | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Data` | [][components.ScimGroup](../../models/components/scimgroup.mdx) | ✅ | N/A | -| `TotalCount` | `int64` | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.ScimGroup](../../models/components/scimgroup.mdx) | :heavy_check_mark: | N/A | +| `TotalCount` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/listtoolsresponse.mdx b/docs/models/components/listtoolsresponse.mdx index f62cdff65..d420c9693 100644 --- a/docs/models/components/listtoolsresponse.mdx +++ b/docs/models/components/listtoolsresponse.mdx @@ -6,6 +6,6 @@ title: "ListToolsResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [][components.ServerTool](../../models/components/servertool.mdx) | ✅ | N/A | | -| `Links` | [components.ListToolsResponseLinks](../../models/components/listtoolsresponselinks.mdx) | ✅ | N/A | | -| `TotalCount` | `int64` | ✅ | Total number of tools | 12 | \ No newline at end of file +| `Data` | [][components.ServerTool](../../models/components/servertool.mdx) | :heavy_check_mark: | N/A | | +| `Links` | [components.ListToolsResponseLinks](../../models/components/listtoolsresponselinks.mdx) | :heavy_check_mark: | N/A | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of tools | 12 | \ No newline at end of file diff --git a/docs/models/components/listtoolsresponselinks.mdx b/docs/models/components/listtoolsresponselinks.mdx index 77e0f0827..20891cf29 100644 --- a/docs/models/components/listtoolsresponselinks.mdx +++ b/docs/models/components/listtoolsresponselinks.mdx @@ -6,4 +6,4 @@ title: "ListToolsResponseLinks" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Next` | `*string` | ✅ | URL for the next page of results, or null if this is the last page | null | \ No newline at end of file +| `Next` | `*string` | :heavy_check_mark: | URL for the next page of results, or null if this is the last page | null | \ No newline at end of file diff --git a/docs/models/components/listworkspacebudgetsresponse.mdx b/docs/models/components/listworkspacebudgetsresponse.mdx index 93ae8c72b..b597bca5d 100644 --- a/docs/models/components/listworkspacebudgetsresponse.mdx +++ b/docs/models/components/listworkspacebudgetsresponse.mdx @@ -6,5 +6,5 @@ title: "ListWorkspaceBudgetsResponse" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | ✅ | List of budgets configured for the workspace | | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | false | \ No newline at end of file +| `Data` | [][components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | :heavy_check_mark: | List of budgets configured for the workspace | | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | false | \ No newline at end of file diff --git a/docs/models/components/listworkspacemembersresponse.mdx b/docs/models/components/listworkspacemembersresponse.mdx index e1422ed16..101bed62a 100644 --- a/docs/models/components/listworkspacemembersresponse.mdx +++ b/docs/models/components/listworkspacemembersresponse.mdx @@ -6,5 +6,5 @@ title: "ListWorkspaceMembersResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Data` | [][components.WorkspaceMember](../../models/components/workspacemember.mdx) | ✅ | List of workspace members | | -| `TotalCount` | `int64` | ✅ | Total number of members in the workspace | 5 | \ No newline at end of file +| `Data` | [][components.WorkspaceMember](../../models/components/workspacemember.mdx) | :heavy_check_mark: | List of workspace members | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of members in the workspace | 5 | \ No newline at end of file diff --git a/docs/models/components/listworkspacesresponse.mdx b/docs/models/components/listworkspacesresponse.mdx index a20e39412..8c5ee5bbc 100644 --- a/docs/models/components/listworkspacesresponse.mdx +++ b/docs/models/components/listworkspacesresponse.mdx @@ -6,5 +6,5 @@ title: "ListWorkspacesResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Data` | [][components.Workspace](../../models/components/workspace.mdx) | ✅ | List of workspaces | | -| `TotalCount` | `int64` | ✅ | Total number of workspaces | 5 | \ No newline at end of file +| `Data` | [][components.Workspace](../../models/components/workspace.mdx) | :heavy_check_mark: | List of workspaces | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of workspaces | 5 | \ No newline at end of file diff --git a/docs/models/components/localshellcallitem.mdx b/docs/models/components/localshellcallitem.mdx index a33416e57..7f2394870 100644 --- a/docs/models/components/localshellcallitem.mdx +++ b/docs/models/components/localshellcallitem.mdx @@ -9,8 +9,8 @@ A local shell command execution call | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Action` | [components.LocalShellCallItemAction](../../models/components/localshellcallitemaction.mdx) | ✅ | N/A | | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.TypeLocalShellCall](../../models/components/typelocalshellcall.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | [components.LocalShellCallItemAction](../../models/components/localshellcallitemaction.mdx) | :heavy_check_mark: | N/A | | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.TypeLocalShellCall](../../models/components/typelocalshellcall.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/localshellcallitemaction.mdx b/docs/models/components/localshellcallitemaction.mdx index 81e27326f..b78a3a789 100644 --- a/docs/models/components/localshellcallitemaction.mdx +++ b/docs/models/components/localshellcallitemaction.mdx @@ -6,9 +6,9 @@ title: "LocalShellCallItemAction" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Command` | []`string` | ✅ | N/A | -| `Env` | map[string]`string` | ✅ | N/A | -| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `Type` | [components.TypeExec](../../models/components/typeexec.mdx) | ✅ | N/A | -| `User` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `WorkingDirectory` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `Command` | []`string` | :heavy_check_mark: | N/A | +| `Env` | map[string]`string` | :heavy_check_mark: | N/A | +| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `Type` | [components.TypeExec](../../models/components/typeexec.mdx) | :heavy_check_mark: | N/A | +| `User` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `WorkingDirectory` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/localshellcalloutputitem.mdx b/docs/models/components/localshellcalloutputitem.mdx index 742c4e674..14d681671 100644 --- a/docs/models/components/localshellcalloutputitem.mdx +++ b/docs/models/components/localshellcalloutputitem.mdx @@ -9,7 +9,7 @@ Output from a local shell command execution | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | | -| `Output` | `string` | ✅ | N/A | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.LocalShellCallOutputItemType](../../models/components/localshellcalloutputitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Output` | `string` | :heavy_check_mark: | N/A | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.LocalShellCallOutputItemType](../../models/components/localshellcalloutputitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/logprob.mdx b/docs/models/components/logprob.mdx index f7f753d42..94c343768 100644 --- a/docs/models/components/logprob.mdx +++ b/docs/models/components/logprob.mdx @@ -6,7 +6,7 @@ title: "Logprob" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | -| `TopLogprobs` | [][components.ResponseOutputTextTopLogprob](../../models/components/responseoutputtexttoplogprob.mdx) | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | +| `TopLogprobs` | [][components.ResponseOutputTextTopLogprob](../../models/components/responseoutputtexttoplogprob.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/logprobs.mdx b/docs/models/components/logprobs.mdx index d21a081c7..7469b0c6a 100644 --- a/docs/models/components/logprobs.mdx +++ b/docs/models/components/logprobs.mdx @@ -6,5 +6,5 @@ title: "Logprobs" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `Content` | [][components.LogprobsContent](../../models/components/logprobscontent.mdx) | ✅ | N/A | -| `Refusal` | optionalnullable.OptionalNullable[[][components.Refusal](../../models/components/refusal.mdx)] | ➖ | N/A | \ No newline at end of file +| `Content` | [][components.LogprobsContent](../../models/components/logprobscontent.mdx) | :heavy_check_mark: | N/A | +| `Refusal` | optionalnullable.OptionalNullable[[][components.Refusal](../../models/components/refusal.mdx)] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/logprobscontent.mdx b/docs/models/components/logprobscontent.mdx index 8d63b0efb..cd0be419d 100644 --- a/docs/models/components/logprobscontent.mdx +++ b/docs/models/components/logprobscontent.mdx @@ -6,7 +6,7 @@ title: "LogprobsContent" | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | -| `TopLogprobs` | [][components.ContentTopLogprob](../../models/components/contenttoplogprob.mdx) | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | +| `TopLogprobs` | [][components.ContentTopLogprob](../../models/components/contenttoplogprob.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/managedprivateendpoint.mdx b/docs/models/components/managedprivateendpoint.mdx index 50614a7a8..e1e30d353 100644 --- a/docs/models/components/managedprivateendpoint.mdx +++ b/docs/models/components/managedprivateendpoint.mdx @@ -6,12 +6,12 @@ title: "ManagedPrivateEndpoint" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the endpoint was created. | 2026-09-24T10:30:00Z | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `ModelName` | `*string` | ✅ | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | -| `ModelPermaslug` | `string` | ✅ | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | -| `ModelSlug` | `*string` | ✅ | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | -| `ProviderName` | `string` | ✅ | Display name of the upstream provider. | Azure | -| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | ✅ | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | -| `DeclaredRegion` | [*components.PrivateEndpointDeclaredRegion](../../models/components/privateendpointdeclaredregion.mdx) | ✅ | Where you attest this deployment processes data. `global` means not regional; `null` means undeclared. | us | -| `DeclaredZdr` | `*bool` | ✅ | Whether you attest this deployment retains no prompt or completion data. `null` means undeclared. | true | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the endpoint was created. | 2026-09-24T10:30:00Z | +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `ModelName` | `*string` | :heavy_check_mark: | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | +| `ModelSlug` | `*string` | :heavy_check_mark: | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | +| `ProviderName` | `string` | :heavy_check_mark: | Display name of the upstream provider. | Azure | +| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | :heavy_check_mark: | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | +| `DeclaredRegion` | [*components.PrivateEndpointDeclaredRegion](../../models/components/privateendpointdeclaredregion.mdx) | :heavy_check_mark: | Where you attest this deployment processes data. `global` means not regional; `null` means undeclared. | us | +| `DeclaredZdr` | `*bool` | :heavy_check_mark: | Whether you attest this deployment retains no prompt or completion data. `null` means undeclared. | true | \ No newline at end of file diff --git a/docs/models/components/managedprivateendpointresponse.mdx b/docs/models/components/managedprivateendpointresponse.mdx index 1c36f6a81..2fa5f843d 100644 --- a/docs/models/components/managedprivateendpointresponse.mdx +++ b/docs/models/components/managedprivateendpointresponse.mdx @@ -6,4 +6,4 @@ title: "ManagedPrivateEndpointResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [components.ManagedPrivateEndpoint](../../models/components/managedprivateendpoint.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.ManagedPrivateEndpoint](../../models/components/managedprivateendpoint.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/match.mdx b/docs/models/components/match.mdx index ad74e41ba..3581fe743 100644 --- a/docs/models/components/match.mdx +++ b/docs/models/components/match.mdx @@ -6,6 +6,6 @@ title: "Match" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Definition` | map[string]`any` | ✅ | N/A | -| `SchemaDigest` | `string` | ✅ | N/A | -| `ToolID` | `string` | ✅ | N/A | \ No newline at end of file +| `Definition` | map[string]`any` | :heavy_check_mark: | N/A | +| `SchemaDigest` | `string` | :heavy_check_mark: | N/A | +| `ToolID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/maxprice.mdx b/docs/models/components/maxprice.mdx index 68e35cb0b..b1ed976cd 100644 --- a/docs/models/components/maxprice.mdx +++ b/docs/models/components/maxprice.mdx @@ -9,8 +9,8 @@ The object specifying the maximum price you want to pay for this request. USD pr | Field | Type | Required | Description | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Audio` | `*string` | ➖ | Maximum price in USD per audio unit | -| `Completion` | `*string` | ➖ | Maximum price in USD per million completion tokens | -| `Image` | `*string` | ➖ | Maximum price in USD per image | -| `Prompt` | `*string` | ➖ | Maximum price in USD per million prompt tokens | -| `Request` | `*string` | ➖ | Maximum price in USD per request | \ No newline at end of file +| `Audio` | `*string` | :heavy_minus_sign: | Maximum price in USD per audio unit | +| `Completion` | `*string` | :heavy_minus_sign: | Maximum price in USD per million completion tokens | +| `Image` | `*string` | :heavy_minus_sign: | Maximum price in USD per image | +| `Prompt` | `*string` | :heavy_minus_sign: | Maximum price in USD per million prompt tokens | +| `Request` | `*string` | :heavy_minus_sign: | Maximum price in USD per request | \ No newline at end of file diff --git a/docs/models/components/mcpapprovalrequestitem.mdx b/docs/models/components/mcpapprovalrequestitem.mdx index 0b7f873e4..2bdcd9a2c 100644 --- a/docs/models/components/mcpapprovalrequestitem.mdx +++ b/docs/models/components/mcpapprovalrequestitem.mdx @@ -9,8 +9,8 @@ Request for approval to execute an MCP tool | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | -| `ServerLabel` | `string` | ✅ | N/A | -| `Type` | [components.McpApprovalRequestItemType](../../models/components/mcpapprovalrequestitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `ServerLabel` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.McpApprovalRequestItemType](../../models/components/mcpapprovalrequestitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcpapprovalresponseitem.mdx b/docs/models/components/mcpapprovalresponseitem.mdx index 9abbe874a..a8ff8a03a 100644 --- a/docs/models/components/mcpapprovalresponseitem.mdx +++ b/docs/models/components/mcpapprovalresponseitem.mdx @@ -9,8 +9,8 @@ User response to an MCP tool approval request | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `ApprovalRequestID` | `string` | ✅ | N/A | -| `Approve` | `bool` | ✅ | N/A | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Reason` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.McpApprovalResponseItemType](../../models/components/mcpapprovalresponseitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ApprovalRequestID` | `string` | :heavy_check_mark: | N/A | +| `Approve` | `bool` | :heavy_check_mark: | N/A | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Reason` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.McpApprovalResponseItemType](../../models/components/mcpapprovalresponseitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcpcallitem.mdx b/docs/models/components/mcpcallitem.mdx index 35139073c..26e4b7414 100644 --- a/docs/models/components/mcpcallitem.mdx +++ b/docs/models/components/mcpcallitem.mdx @@ -9,10 +9,10 @@ An MCP tool call with its output or error | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | | -| `Error` | optionalnullable.OptionalNullable[[components.McpToolCallError](../../models/components/mcptoolcallerror.mdx)] | ➖ | Error from an MCP tool call, either a plain message or a structured error | \{
"code": 503,
"message": "Service Unavailable",
"type": "http_error"
} | -| `ID` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Output` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ServerLabel` | `string` | ✅ | N/A | | -| `Type` | [components.McpCallItemType](../../models/components/mcpcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Error` | optionalnullable.OptionalNullable[[components.McpToolCallError](../../models/components/mcptoolcallerror.mdx)] | :heavy_minus_sign: | Error from an MCP tool call, either a plain message or a structured error | \{
"code": 503,
"message": "Service Unavailable",
"type": "http_error"
} | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Output` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ServerLabel` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.McpCallItemType](../../models/components/mcpcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/mcphttperror.mdx b/docs/models/components/mcphttperror.mdx index 40e695d87..d7106ac3a 100644 --- a/docs/models/components/mcphttperror.mdx +++ b/docs/models/components/mcphttperror.mdx @@ -9,6 +9,6 @@ The MCP server request failed at the HTTP layer | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Type` | [components.McpHTTPErrorType](../../models/components/mcphttperrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.McpHTTPErrorType](../../models/components/mcphttperrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcplisttoolsitem.mdx b/docs/models/components/mcplisttoolsitem.mdx index 3be02ba0f..3fc1b4f36 100644 --- a/docs/models/components/mcplisttoolsitem.mdx +++ b/docs/models/components/mcplisttoolsitem.mdx @@ -9,8 +9,8 @@ List of available MCP tools from a server | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Error` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ID` | `string` | ✅ | N/A | -| `ServerLabel` | `string` | ✅ | N/A | -| `Tools` | [][components.McpListToolsItemTool](../../models/components/mcplisttoolsitemtool.mdx) | ✅ | N/A | -| `Type` | [components.McpListToolsItemType](../../models/components/mcplisttoolsitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Error` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `ServerLabel` | `string` | :heavy_check_mark: | N/A | +| `Tools` | [][components.McpListToolsItemTool](../../models/components/mcplisttoolsitemtool.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.McpListToolsItemType](../../models/components/mcplisttoolsitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcplisttoolsitemtool.mdx b/docs/models/components/mcplisttoolsitemtool.mdx index 5e67faec6..4aa3e1ff5 100644 --- a/docs/models/components/mcplisttoolsitemtool.mdx +++ b/docs/models/components/mcplisttoolsitemtool.mdx @@ -6,7 +6,7 @@ title: "McpListToolsItemTool" | Field | Type | Required | Description | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `Annotations` | `any` | ➖ | N/A | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `InputSchema` | map[string]`any` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | \ No newline at end of file +| `Annotations` | `any` | :heavy_minus_sign: | N/A | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `InputSchema` | map[string]`any` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcpprotocolerror.mdx b/docs/models/components/mcpprotocolerror.mdx index 31b359424..cdcd6dfac 100644 --- a/docs/models/components/mcpprotocolerror.mdx +++ b/docs/models/components/mcpprotocolerror.mdx @@ -9,6 +9,6 @@ The MCP server returned a protocol-level error | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Type` | [components.McpProtocolErrorType](../../models/components/mcpprotocolerrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.McpProtocolErrorType](../../models/components/mcpprotocolerrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcpservertool.mdx b/docs/models/components/mcpservertool.mdx index 9dc3bfdc9..087a6cc0e 100644 --- a/docs/models/components/mcpservertool.mdx +++ b/docs/models/components/mcpservertool.mdx @@ -9,12 +9,12 @@ MCP (Model Context Protocol) tool configuration | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `AllowedTools` | optionalnullable.OptionalNullable[[components.AllowedToolsUnion](../../models/components/allowedtoolsunion.mdx)] | ➖ | N/A | -| `Authorization` | `*string` | ➖ | N/A | -| `ConnectorID` | [*components.ConnectorID](../../models/components/connectorid.mdx) | ➖ | N/A | -| `Headers` | optionalnullable.OptionalNullable[map[string]`string`] | ➖ | N/A | -| `RequireApproval` | optionalnullable.OptionalNullable[[components.RequireApprovalUnion](../../models/components/requireapprovalunion.mdx)] | ➖ | N/A | -| `ServerDescription` | `*string` | ➖ | N/A | -| `ServerLabel` | `string` | ✅ | N/A | -| `ServerURL` | `*string` | ➖ | N/A | -| `Type` | [components.McpServerToolType](../../models/components/mcpservertooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `AllowedTools` | optionalnullable.OptionalNullable[[components.AllowedToolsUnion](../../models/components/allowedtoolsunion.mdx)] | :heavy_minus_sign: | N/A | +| `Authorization` | `*string` | :heavy_minus_sign: | N/A | +| `ConnectorID` | [*components.ConnectorID](../../models/components/connectorid.mdx) | :heavy_minus_sign: | N/A | +| `Headers` | optionalnullable.OptionalNullable[map[string]`string`] | :heavy_minus_sign: | N/A | +| `RequireApproval` | optionalnullable.OptionalNullable[[components.RequireApprovalUnion](../../models/components/requireapprovalunion.mdx)] | :heavy_minus_sign: | N/A | +| `ServerDescription` | `*string` | :heavy_minus_sign: | N/A | +| `ServerLabel` | `string` | :heavy_check_mark: | N/A | +| `ServerURL` | `*string` | :heavy_minus_sign: | N/A | +| `Type` | [components.McpServerToolType](../../models/components/mcpservertooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mcptoolexecutionerror.mdx b/docs/models/components/mcptoolexecutionerror.mdx index db331a5ba..5998fcb01 100644 --- a/docs/models/components/mcptoolexecutionerror.mdx +++ b/docs/models/components/mcptoolexecutionerror.mdx @@ -9,5 +9,5 @@ The MCP tool ran but reported a failure | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Content` | `any` | ➖ | N/A | -| `Type` | [components.McpToolExecutionErrorType](../../models/components/mcptoolexecutionerrortype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | `any` | :heavy_minus_sign: | N/A | +| `Type` | [components.McpToolExecutionErrorType](../../models/components/mcptoolexecutionerrortype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/memberassignment.mdx b/docs/models/components/memberassignment.mdx index dac9653a4..baaa31fbb 100644 --- a/docs/models/components/memberassignment.mdx +++ b/docs/models/components/memberassignment.mdx @@ -6,9 +6,9 @@ title: "MemberAssignment" | Field | Type | Required | Description | Example | | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `AssignedBy` | `*string` | ✅ | User ID of who made the assignment | user_abc123 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the assignment was created | 2025-08-24T10:30:00Z | -| `GuardrailID` | `string` | ✅ | ID of the guardrail | 550e8400-e29b-41d4-a716-446655440001 | -| `ID` | `string` | ✅ | Unique identifier for the assignment | 550e8400-e29b-41d4-a716-446655440000 | -| `OrganizationID` | `string` | ✅ | Organization ID | org_xyz789 | -| `UserID` | `string` | ✅ | Clerk user ID of the assigned member | user_abc123 | \ No newline at end of file +| `AssignedBy` | `*string` | :heavy_check_mark: | User ID of who made the assignment | user_abc123 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the assignment was created | 2025-08-24T10:30:00Z | +| `GuardrailID` | `string` | :heavy_check_mark: | ID of the guardrail | 550e8400-e29b-41d4-a716-446655440001 | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the assignment | 550e8400-e29b-41d4-a716-446655440000 | +| `OrganizationID` | `string` | :heavy_check_mark: | Organization ID | org_xyz789 | +| `UserID` | `string` | :heavy_check_mark: | Clerk user ID of the assigned member | user_abc123 | \ No newline at end of file diff --git a/docs/models/components/message.mdx b/docs/models/components/message.mdx index 0dabd27de..9d8b0db8f 100644 --- a/docs/models/components/message.mdx +++ b/docs/models/components/message.mdx @@ -6,11 +6,11 @@ title: "Message" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Annotations` | [][components.Annotation](../../models/components/annotation.mdx) | ➖ | N/A | -| `Content` | `*string` | ✅ | N/A | -| `Images` | optionalnullable.OptionalNullable[[][components.Image](../../models/components/image.mdx)] | ➖ | N/A | -| `Reasoning` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ReasoningDetails` | optionalnullable.OptionalNullable[[][*components.ReasoningDetail](../../models/components/reasoningdetail.mdx)] | ➖ | N/A | -| `Refusal` | `*string` | ✅ | N/A | -| `Role` | [components.ChoiceRole](../../models/components/choicerole.mdx) | ✅ | N/A | -| `ToolCalls` | [][components.ToolCall](../../models/components/toolcall.mdx) | ➖ | N/A | \ No newline at end of file +| `Annotations` | [][components.Annotation](../../models/components/annotation.mdx) | :heavy_minus_sign: | N/A | +| `Content` | `*string` | :heavy_check_mark: | N/A | +| `Images` | optionalnullable.OptionalNullable[[][components.Image](../../models/components/image.mdx)] | :heavy_minus_sign: | N/A | +| `Reasoning` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ReasoningDetails` | optionalnullable.OptionalNullable[[][*components.ReasoningDetail](../../models/components/reasoningdetail.mdx)] | :heavy_minus_sign: | N/A | +| `Refusal` | `*string` | :heavy_check_mark: | N/A | +| `Role` | [components.ChoiceRole](../../models/components/choicerole.mdx) | :heavy_check_mark: | N/A | +| `ToolCalls` | [][components.ToolCall](../../models/components/toolcall.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesadvisortoolresultblock.mdx b/docs/models/components/messagesadvisortoolresultblock.mdx index 543f4980e..bf05787b4 100644 --- a/docs/models/components/messagesadvisortoolresultblock.mdx +++ b/docs/models/components/messagesadvisortoolresultblock.mdx @@ -9,6 +9,6 @@ Advisor tool result from a prior assistant turn, replayed back to the model on t | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Content` | map[string]`any` | ✅ | N/A | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.MessagesAdvisorToolResultBlockType](../../models/components/messagesadvisortoolresultblocktype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesAdvisorToolResultBlockType](../../models/components/messagesadvisortoolresultblocktype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesbashtoolresultblock.mdx b/docs/models/components/messagesbashtoolresultblock.mdx index f904b759c..d2e51ec9a 100644 --- a/docs/models/components/messagesbashtoolresultblock.mdx +++ b/docs/models/components/messagesbashtoolresultblock.mdx @@ -9,8 +9,8 @@ Output of a sandbox-executed `openrouter:bash` call from a prior assistant turn. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | -| `Content` | map[string]`any` | ✅ | N/A | -| `Files` | [][components.MessagesBashToolResultBlockFile](../../models/components/messagesbashtoolresultblockfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.MessagesBashToolResultBlockTypeOpenrouterBashToolResult](../../models/components/messagesbashtoolresultblocktypeopenrouterbashtoolresult.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `Files` | [][components.MessagesBashToolResultBlockFile](../../models/components/messagesbashtoolresultblockfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesBashToolResultBlockTypeOpenrouterBashToolResult](../../models/components/messagesbashtoolresultblocktypeopenrouterbashtoolresult.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesbashtoolresultblockfile.mdx b/docs/models/components/messagesbashtoolresultblockfile.mdx index 54ffdc525..48cad59a2 100644 --- a/docs/models/components/messagesbashtoolresultblockfile.mdx +++ b/docs/models/components/messagesbashtoolresultblockfile.mdx @@ -6,9 +6,9 @@ title: "MessagesBashToolResultBlockFile" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.MessagesBashToolResultBlockTypeContainerFileCitation](../../models/components/messagesbashtoolresultblocktypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesBashToolResultBlockTypeContainerFileCitation](../../models/components/messagesbashtoolresultblocktypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesfallbackparam.mdx b/docs/models/components/messagesfallbackparam.mdx index 5329ffcb5..18c5a3182 100644 --- a/docs/models/components/messagesfallbackparam.mdx +++ b/docs/models/components/messagesfallbackparam.mdx @@ -9,5 +9,5 @@ Fallback model to try when the primary model fails or refuses. Only the `model` | Field | Type | Required | Description | Example | | ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | ------------------------------ | -| `Model` | `string` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"model": "claude-opus-4-8"
} | \ No newline at end of file +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"model": "claude-opus-4-8"
} | \ No newline at end of file diff --git a/docs/models/components/messagesmessageparam.mdx b/docs/models/components/messagesmessageparam.mdx index 31877ac94..174dbf1ac 100644 --- a/docs/models/components/messagesmessageparam.mdx +++ b/docs/models/components/messagesmessageparam.mdx @@ -9,7 +9,7 @@ Anthropic message with OpenRouter extensions | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | -| `ClearAt` | optionalnullable.OptionalNullable[[components.AnthropicSystemClearAt](../../models/components/anthropicsystemclearat.mdx)] | ➖ | N/A | next_user_message | -| `Content` | [components.MessagesMessageParamContentUnion5](../../models/components/messagesmessageparamcontentunion5.mdx) | ✅ | N/A | | -| `OutputConfig` | optionalnullable.OptionalNullable[[components.AnthropicMessageOutputConfig](../../models/components/anthropicmessageoutputconfig.mdx)] | ➖ | N/A | \{
"effort": "low"
} | -| `Role` | [components.MessagesMessageParamRole](../../models/components/messagesmessageparamrole.mdx) | ✅ | N/A | | \ No newline at end of file +| `ClearAt` | optionalnullable.OptionalNullable[[components.AnthropicSystemClearAt](../../models/components/anthropicsystemclearat.mdx)] | :heavy_minus_sign: | N/A | next_user_message | +| `Content` | [components.MessagesMessageParamContentUnion5](../../models/components/messagesmessageparamcontentunion5.mdx) | :heavy_check_mark: | N/A | | +| `OutputConfig` | optionalnullable.OptionalNullable[[components.AnthropicMessageOutputConfig](../../models/components/anthropicmessageoutputconfig.mdx)] | :heavy_minus_sign: | N/A | \{
"effort": "low"
} | +| `Role` | [components.MessagesMessageParamRole](../../models/components/messagesmessageparamrole.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/messagesoutputconfig.mdx b/docs/models/components/messagesoutputconfig.mdx index a142cf935..5ec8f99fc 100644 --- a/docs/models/components/messagesoutputconfig.mdx +++ b/docs/models/components/messagesoutputconfig.mdx @@ -9,6 +9,6 @@ Configuration for controlling output behavior. Supports the effort parameter and | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Effort` | optionalnullable.OptionalNullable[[components.MessagesOutputConfigEffort](../../models/components/messagesoutputconfigeffort.mdx)] | ➖ | How much effort the model should put into its response. Higher effort levels may result in more thorough analysis but take longer. Valid values are `low`, `medium`, `high`, `xhigh`, or `max`. | medium | -| `Format` | optionalnullable.OptionalNullable[[components.MessagesOutputConfigFormat](../../models/components/messagesoutputconfigformat.mdx)] | ➖ | A schema to specify Claude's output format in responses. See [structured outputs](https://platform.claude.com/docs/en/build-with-claude/structured-outputs). | | -| `TaskBudget` | optionalnullable.OptionalNullable[[components.TaskBudget](../../models/components/taskbudget.mdx)] | ➖ | Task budget for an agentic turn. The model sees a countdown of remaining tokens and uses it to prioritize work and wind down gracefully. Advisory — does not enforce a hard cap. | \{
"total": 400000,
"type": "tokens"
} | \ No newline at end of file +| `Effort` | optionalnullable.OptionalNullable[[components.MessagesOutputConfigEffort](../../models/components/messagesoutputconfigeffort.mdx)] | :heavy_minus_sign: | How much effort the model should put into its response. Higher effort levels may result in more thorough analysis but take longer. Valid values are `low`, `medium`, `high`, `xhigh`, or `max`. | medium | +| `Format` | optionalnullable.OptionalNullable[[components.MessagesOutputConfigFormat](../../models/components/messagesoutputconfigformat.mdx)] | :heavy_minus_sign: | A schema to specify Claude's output format in responses. See [structured outputs](https://platform.claude.com/docs/en/build-with-claude/structured-outputs). | | +| `TaskBudget` | optionalnullable.OptionalNullable[[components.TaskBudget](../../models/components/taskbudget.mdx)] | :heavy_minus_sign: | Task budget for an agentic turn. The model sees a countdown of remaining tokens and uses it to prioritize work and wind down gracefully. Advisory — does not enforce a hard cap. | \{
"total": 400000,
"type": "tokens"
} | \ No newline at end of file diff --git a/docs/models/components/messagesoutputconfigformat.mdx b/docs/models/components/messagesoutputconfigformat.mdx index e0a8ffd67..5454729a6 100644 --- a/docs/models/components/messagesoutputconfigformat.mdx +++ b/docs/models/components/messagesoutputconfigformat.mdx @@ -9,5 +9,5 @@ A schema to specify Claude's output format in responses. See [structured outputs | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Schema` | map[string]`any` | ✅ | N/A | -| `Type` | [components.MessagesOutputConfigTypeJSONSchema](../../models/components/messagesoutputconfigtypejsonschema.mdx) | ✅ | N/A | \ No newline at end of file +| `Schema` | map[string]`any` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesOutputConfigTypeJSONSchema](../../models/components/messagesoutputconfigtypejsonschema.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesrequest.mdx b/docs/models/components/messagesrequest.mdx index 0a4108c7d..89020e99f 100644 --- a/docs/models/components/messagesrequest.mdx +++ b/docs/models/components/messagesrequest.mdx @@ -9,31 +9,31 @@ Request schema for Anthropic Messages API endpoint | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `ContextManagement` | optionalnullable.OptionalNullable[[components.ContextManagement](../../models/components/contextmanagement.mdx)] | ➖ | N/A | | -| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | ➖ | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | -| `Fallbacks` | optionalnullable.OptionalNullable[[][components.MessagesFallbackParam](../../models/components/messagesfallbackparam.mdx)] | ➖ | Fallback models to try if the primary model fails or refuses, in order. Handled by OpenRouter multi-model routing rather than Anthropic server-side fallbacks; cannot be combined with `models`. Each entry accepts only `model`. Maximum of 3 entries. | [
\{
"model": "claude-opus-4-8"
}
] | -| `MaxTokens` | `*int64` | ➖ | N/A | | -| `Messages` | [][components.MessagesMessageParam](../../models/components/messagesmessageparam.mdx) | ✅ | N/A | | -| `Metadata` | [*components.MessagesRequestMetadata](../../models/components/messagesrequestmetadata.mdx) | ➖ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Models` | []`string` | ➖ | N/A | | -| `OutputConfig` | [*components.MessagesOutputConfig](../../models/components/messagesoutputconfig.mdx) | ➖ | Configuration for controlling output behavior. Supports the effort parameter and structured output format. | \{
"effort": "medium"
} | -| `Plugins` | [][components.MessagesRequestPlugin](../../models/components/messagesrequestplugin.mdx) | ➖ | Plugins you want to enable for this request, including their settings. | | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | -| `Safeguards` | optionalnullable.OptionalNullable[[][components.AnthropicSafeguard](../../models/components/anthropicsafeguard.mdx)] | ➖ | N/A | | -| `ServiceTier` | `*string` | ➖ | N/A | | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | -| `Speed` | optionalnullable.OptionalNullable[[components.Speed](../../models/components/speed.mdx)] | ➖ | N/A | fast | -| `StopSequences` | []`string` | ➖ | N/A | | -| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | ➖ | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | -| `Stream` | `*bool` | ➖ | N/A | | -| `System` | [*components.System](../../models/components/system.mdx) | ➖ | N/A | | -| `Temperature` | `*float64` | ➖ | N/A | | -| `Thinking` | [*components.Thinking](../../models/components/thinking.mdx) | ➖ | N/A | | -| `ToolChoice` | [*components.ToolChoice](../../models/components/toolchoice.mdx) | ➖ | N/A | | -| `Tools` | [][components.MessagesRequestToolUnion](../../models/components/messagesrequesttoolunion.mdx) | ➖ | N/A | | -| `TopK` | `*int64` | ➖ | N/A | | -| `TopP` | `*float64` | ➖ | N/A | | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters. | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `ContextManagement` | optionalnullable.OptionalNullable[[components.ContextManagement](../../models/components/contextmanagement.mdx)] | :heavy_minus_sign: | N/A | | +| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | :heavy_minus_sign: | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | +| `Fallbacks` | optionalnullable.OptionalNullable[[][components.MessagesFallbackParam](../../models/components/messagesfallbackparam.mdx)] | :heavy_minus_sign: | Fallback models to try if the primary model fails or refuses, in order. Handled by OpenRouter multi-model routing rather than Anthropic server-side fallbacks; cannot be combined with `models`. Each entry accepts only `model`. Maximum of 3 entries. | [
\{
"model": "claude-opus-4-8"
}
] | +| `MaxTokens` | `*int64` | :heavy_minus_sign: | N/A | | +| `Messages` | [][components.MessagesMessageParam](../../models/components/messagesmessageparam.mdx) | :heavy_check_mark: | N/A | | +| `Metadata` | [*components.MessagesRequestMetadata](../../models/components/messagesrequestmetadata.mdx) | :heavy_minus_sign: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Models` | []`string` | :heavy_minus_sign: | N/A | | +| `OutputConfig` | [*components.MessagesOutputConfig](../../models/components/messagesoutputconfig.mdx) | :heavy_minus_sign: | Configuration for controlling output behavior. Supports the effort parameter and structured output format. | \{
"effort": "medium"
} | +| `Plugins` | [][components.MessagesRequestPlugin](../../models/components/messagesrequestplugin.mdx) | :heavy_minus_sign: | Plugins you want to enable for this request, including their settings. | | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | +| `Safeguards` | optionalnullable.OptionalNullable[[][components.AnthropicSafeguard](../../models/components/anthropicsafeguard.mdx)] | :heavy_minus_sign: | N/A | | +| `ServiceTier` | `*string` | :heavy_minus_sign: | N/A | | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | +| `Speed` | optionalnullable.OptionalNullable[[components.Speed](../../models/components/speed.mdx)] | :heavy_minus_sign: | N/A | fast | +| `StopSequences` | []`string` | :heavy_minus_sign: | N/A | | +| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | :heavy_minus_sign: | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | +| `Stream` | `*bool` | :heavy_minus_sign: | N/A | | +| `System` | [*components.System](../../models/components/system.mdx) | :heavy_minus_sign: | N/A | | +| `Temperature` | `*float64` | :heavy_minus_sign: | N/A | | +| `Thinking` | [*components.Thinking](../../models/components/thinking.mdx) | :heavy_minus_sign: | N/A | | +| `ToolChoice` | [*components.ToolChoice](../../models/components/toolchoice.mdx) | :heavy_minus_sign: | N/A | | +| `Tools` | [][components.MessagesRequestToolUnion](../../models/components/messagesrequesttoolunion.mdx) | :heavy_minus_sign: | N/A | | +| `TopK` | `*int64` | :heavy_minus_sign: | N/A | | +| `TopP` | `*float64` | :heavy_minus_sign: | N/A | | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters. | | \ No newline at end of file diff --git a/docs/models/components/messagesrequestmetadata.mdx b/docs/models/components/messagesrequestmetadata.mdx index 5b6105609..0464ea970 100644 --- a/docs/models/components/messagesrequestmetadata.mdx +++ b/docs/models/components/messagesrequestmetadata.mdx @@ -6,4 +6,4 @@ title: "MessagesRequestMetadata" | Field | Type | Required | Description | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `UserID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `UserID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesrequesttool.mdx b/docs/models/components/messagesrequesttool.mdx index 8d1015aec..1d0f0d2a6 100644 --- a/docs/models/components/messagesrequesttool.mdx +++ b/docs/models/components/messagesrequesttool.mdx @@ -6,5 +6,5 @@ title: "MessagesRequestTool" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagessearchmodelsservertool.mdx b/docs/models/components/messagessearchmodelsservertool.mdx index cdb17b982..24e11474a 100644 --- a/docs/models/components/messagessearchmodelsservertool.mdx +++ b/docs/models/components/messagessearchmodelsservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: searches and filters AI models available on Ope | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | ➖ | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | -| `Type` | [components.MessagesSearchModelsServerToolType](../../models/components/messagessearchmodelsservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | +| `Type` | [components.MessagesSearchModelsServerToolType](../../models/components/messagessearchmodelsservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/messagesshelltoolresultblock.mdx b/docs/models/components/messagesshelltoolresultblock.mdx index 5cb77aec6..0633cae11 100644 --- a/docs/models/components/messagesshelltoolresultblock.mdx +++ b/docs/models/components/messagesshelltoolresultblock.mdx @@ -9,8 +9,8 @@ Output of an `openrouter:shell` call from a prior assistant turn. Accepted on re | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | -| `Content` | map[string]`any` | ✅ | N/A | -| `Files` | [][components.MessagesShellToolResultBlockFile](../../models/components/messagesshelltoolresultblockfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.MessagesShellToolResultBlockTypeOpenrouterShellToolResult](../../models/components/messagesshelltoolresultblocktypeopenroutershelltoolresult.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `Files` | [][components.MessagesShellToolResultBlockFile](../../models/components/messagesshelltoolresultblockfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesShellToolResultBlockTypeOpenrouterShellToolResult](../../models/components/messagesshelltoolresultblocktypeopenroutershelltoolresult.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagesshelltoolresultblockfile.mdx b/docs/models/components/messagesshelltoolresultblockfile.mdx index e3e0075c8..dd96a96c6 100644 --- a/docs/models/components/messagesshelltoolresultblockfile.mdx +++ b/docs/models/components/messagesshelltoolresultblockfile.mdx @@ -6,9 +6,9 @@ title: "MessagesShellToolResultBlockFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.MessagesShellToolResultBlockTypeContainerFileCitation](../../models/components/messagesshelltoolresultblocktypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesShellToolResultBlockTypeContainerFileCitation](../../models/components/messagesshelltoolresultblocktypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestooladditionblock.mdx b/docs/models/components/messagestooladditionblock.mdx index e53057445..04bc32b20 100644 --- a/docs/models/components/messagestooladditionblock.mdx +++ b/docs/models/components/messagestooladditionblock.mdx @@ -9,6 +9,6 @@ Loads a previously deferred tool (declared in `tools` with `defer_loading: true` | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Tool` | [components.MessagesToolAdditionBlockToolUnion](../../models/components/messagestooladditionblocktoolunion.mdx) | ✅ | N/A | | -| `Type` | [components.TypeToolAddition](../../models/components/typetooladdition.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Tool` | [components.MessagesToolAdditionBlockToolUnion](../../models/components/messagestooladditionblocktoolunion.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeToolAddition](../../models/components/typetooladdition.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/messagestooladditionblocktoolmcptoolreference.mdx b/docs/models/components/messagestooladditionblocktoolmcptoolreference.mdx index 46d3089e4..17210dc92 100644 --- a/docs/models/components/messagestooladditionblocktoolmcptoolreference.mdx +++ b/docs/models/components/messagestooladditionblocktoolmcptoolreference.mdx @@ -6,6 +6,6 @@ title: "MessagesToolAdditionBlockToolMcpToolReference" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | -| `Name` | `string` | ✅ | N/A | -| `ServerName` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolAdditionBlockTypeMcpToolReference](../../models/components/messagestooladditionblocktypemcptoolreference.mdx) | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `ServerName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolAdditionBlockTypeMcpToolReference](../../models/components/messagestooladditionblocktypemcptoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestooladditionblocktoolmcptoolsetreference.mdx b/docs/models/components/messagestooladditionblocktoolmcptoolsetreference.mdx index c1065af26..f0b3ee7f5 100644 --- a/docs/models/components/messagestooladditionblocktoolmcptoolsetreference.mdx +++ b/docs/models/components/messagestooladditionblocktoolmcptoolsetreference.mdx @@ -6,5 +6,5 @@ title: "MessagesToolAdditionBlockToolMcpToolsetReference" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `ServerName` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolAdditionBlockTypeMcpToolsetReference](../../models/components/messagestooladditionblocktypemcptoolsetreference.mdx) | ✅ | N/A | \ No newline at end of file +| `ServerName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolAdditionBlockTypeMcpToolsetReference](../../models/components/messagestooladditionblocktypemcptoolsetreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestooladditionblocktooltoolreference.mdx b/docs/models/components/messagestooladditionblocktooltoolreference.mdx index 76c0a95c1..2c827a51b 100644 --- a/docs/models/components/messagestooladditionblocktooltoolreference.mdx +++ b/docs/models/components/messagestooladditionblocktooltoolreference.mdx @@ -6,5 +6,5 @@ title: "MessagesToolAdditionBlockToolToolReference" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `Name` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolAdditionBlockTypeToolReference](../../models/components/messagestooladditionblocktypetoolreference.mdx) | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolAdditionBlockTypeToolReference](../../models/components/messagestooladditionblocktypetoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestoolremovalblock.mdx b/docs/models/components/messagestoolremovalblock.mdx index a9b4d5145..c1e4f3ffd 100644 --- a/docs/models/components/messagestoolremovalblock.mdx +++ b/docs/models/components/messagestoolremovalblock.mdx @@ -9,6 +9,6 @@ Removes a tool from the conversation mid-conversation without invalidating the p | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Tool` | [components.MessagesToolRemovalBlockToolUnion](../../models/components/messagestoolremovalblocktoolunion.mdx) | ✅ | N/A | | -| `Type` | [components.TypeToolRemoval](../../models/components/typetoolremoval.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Tool` | [components.MessagesToolRemovalBlockToolUnion](../../models/components/messagestoolremovalblocktoolunion.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeToolRemoval](../../models/components/typetoolremoval.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/messagestoolremovalblocktoolmcptoolreference.mdx b/docs/models/components/messagestoolremovalblocktoolmcptoolreference.mdx index bc0fefce0..5ec3917a4 100644 --- a/docs/models/components/messagestoolremovalblocktoolmcptoolreference.mdx +++ b/docs/models/components/messagestoolremovalblocktoolmcptoolreference.mdx @@ -6,6 +6,6 @@ title: "MessagesToolRemovalBlockToolMcpToolReference" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `Name` | `string` | ✅ | N/A | -| `ServerName` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolRemovalBlockTypeMcpToolReference](../../models/components/messagestoolremovalblocktypemcptoolreference.mdx) | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `ServerName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolRemovalBlockTypeMcpToolReference](../../models/components/messagestoolremovalblocktypemcptoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestoolremovalblocktoolmcptoolsetreference.mdx b/docs/models/components/messagestoolremovalblocktoolmcptoolsetreference.mdx index 158442cd7..f9f587ae1 100644 --- a/docs/models/components/messagestoolremovalblocktoolmcptoolsetreference.mdx +++ b/docs/models/components/messagestoolremovalblocktoolmcptoolsetreference.mdx @@ -6,5 +6,5 @@ title: "MessagesToolRemovalBlockToolMcpToolsetReference" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `ServerName` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolRemovalBlockTypeMcpToolsetReference](../../models/components/messagestoolremovalblocktypemcptoolsetreference.mdx) | ✅ | N/A | \ No newline at end of file +| `ServerName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolRemovalBlockTypeMcpToolsetReference](../../models/components/messagestoolremovalblocktypemcptoolsetreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/messagestoolremovalblocktooltoolreference.mdx b/docs/models/components/messagestoolremovalblocktooltoolreference.mdx index 105666952..c14482031 100644 --- a/docs/models/components/messagestoolremovalblocktooltoolreference.mdx +++ b/docs/models/components/messagestoolremovalblocktooltoolreference.mdx @@ -6,5 +6,5 @@ title: "MessagesToolRemovalBlockToolToolReference" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `Name` | `string` | ✅ | N/A | -| `Type` | [components.MessagesToolRemovalBlockTypeToolReference](../../models/components/messagestoolremovalblocktypetoolreference.mdx) | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.MessagesToolRemovalBlockTypeToolReference](../../models/components/messagestoolremovalblocktypetoolreference.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/mismatchbehavior.mdx b/docs/models/components/mismatchbehavior.mdx index 231851846..a887dcca6 100644 --- a/docs/models/components/mismatchbehavior.mdx +++ b/docs/models/components/mismatchbehavior.mdx @@ -4,7 +4,7 @@ title: "~~MismatchBehavior~~" Deprecated: legacy alias of prefix_mismatch_behavior. Send only one of the two. -> ⚠️ **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. +> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. ## Example Usage diff --git a/docs/models/components/model.mdx b/docs/models/components/model.mdx index 1cfabfa1d..f8b1ee5c7 100644 --- a/docs/models/components/model.mdx +++ b/docs/models/components/model.mdx @@ -9,23 +9,23 @@ Information about an AI model available on OpenRouter | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AliasTarget` | [*components.ModelAliasTarget](../../models/components/modelaliastarget.mdx) | ➖ | Concrete model targeted by this tilde-latest alias, when applicable | \{
"name": "Claude Sonnet 4.5",
"slug": "anthropic/claude-sonnet-4.5"
} | -| `Architecture` | [components.ModelArchitecture](../../models/components/modelarchitecture.mdx) | ✅ | Model architecture information | \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
} | -| `Benchmarks` | [*components.ModelBenchmarks](../../models/components/modelbenchmarks.mdx) | ➖ | Third-party benchmark rankings for this model. Omitted when no benchmark data is available. | \{
"artificial_analysis": \{
"agentic_index": 55.8,
"coding_index": 63.2,
"intelligence_index": 71.4
},
"design_arena": [
\{
"arena": "models",
"category": "website",
"elo": 1385.2,
"rank": 5,
"win_rate": 62.5
}
]
} | -| `CanonicalSlug` | `string` | ✅ | Canonical slug for the model | openai/gpt-4 | -| `ContextLength` | `*int64` | ✅ | Maximum context length in tokens | 8192 | -| `Created` | `int64` | ✅ | Unix timestamp of when the model was created | 1692901234 | -| `DefaultParameters` | [*components.DefaultParameters](../../models/components/defaultparameters.mdx) | ✅ | Default parameters for this model | \{
"frequency_penalty": 0,
"presence_penalty": 0,
"repetition_penalty": 1,
"temperature": 0.7,
"top_k": 0,
"top_p": 0.9
} | -| `Description` | `*string` | ➖ | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | -| `ExpirationDate` | optionalnullable.OptionalNullable[`string`] | ➖ | The date after which the model may be removed. ISO 8601 date string (YYYY-MM-DD) or null if no expiration. | 2025-06-01 | -| `HuggingFaceID` | optionalnullable.OptionalNullable[`string`] | ➖ | Hugging Face model identifier, if applicable | microsoft/DialoGPT-medium | -| `ID` | `string` | ✅ | Unique identifier for the model | openai/gpt-4 | -| `KnowledgeCutoff` | optionalnullable.OptionalNullable[`string`] | ➖ | The date up to which the model was trained on data. ISO 8601 date string (YYYY-MM-DD) or null if unknown. | 2024-10-01 | -| `Links` | [components.ModelLinks](../../models/components/modellinks.mdx) | ✅ | Related API endpoints and resources for this model. | \{
"details": "/api/v1/models/openai/gpt-5.4/endpoints"
} | -| `Name` | `string` | ✅ | Display name of the model | GPT-4 | -| `PerRequestLimits` | [*components.PerRequestLimits](../../models/components/perrequestlimits.mdx) | ✅ | Per-request token limits | \{
"completion_tokens": 1000,
"prompt_tokens": 1000
} | -| `Pricing` | [components.PublicPricing](../../models/components/publicpricing.mdx) | ✅ | Pricing information for the model | \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
} | -| `Reasoning` | [*components.ModelReasoning](../../models/components/modelreasoning.mdx) | ➖ | Reasoning effort configuration. Omitted for non-reasoning models and dynamic router models. | \{
"default_effort": "medium",
"default_enabled": true,
"mandatory": false,
"supported_efforts": [
"high",
"medium",
"low",
"minimal"
]
} | -| `SupportedParameters` | [][components.Parameter](../../models/components/parameter.mdx) | ✅ | List of supported parameters for this model | | -| `SupportedVoices` | []`string` | ✅ | List of supported voice identifiers for TTS models. Null for non-TTS models. | null | -| `TopProvider` | [components.TopProviderInfo](../../models/components/topproviderinfo.mdx) | ✅ | Information about the top provider for this model | \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
} | \ No newline at end of file +| `AliasTarget` | [*components.ModelAliasTarget](../../models/components/modelaliastarget.mdx) | :heavy_minus_sign: | Concrete model targeted by this tilde-latest alias, when applicable | \{
"name": "Claude Sonnet 4.5",
"slug": "anthropic/claude-sonnet-4.5"
} | +| `Architecture` | [components.ModelArchitecture](../../models/components/modelarchitecture.mdx) | :heavy_check_mark: | Model architecture information | \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
} | +| `Benchmarks` | [*components.ModelBenchmarks](../../models/components/modelbenchmarks.mdx) | :heavy_minus_sign: | Third-party benchmark rankings for this model. Omitted when no benchmark data is available. | \{
"artificial_analysis": \{
"agentic_index": 55.8,
"coding_index": 63.2,
"intelligence_index": 71.4
},
"design_arena": [
\{
"arena": "models",
"category": "website",
"elo": 1385.2,
"rank": 5,
"win_rate": 62.5
}
]
} | +| `CanonicalSlug` | `string` | :heavy_check_mark: | Canonical slug for the model | openai/gpt-4 | +| `ContextLength` | `*int64` | :heavy_check_mark: | Maximum context length in tokens | 8192 | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp of when the model was created | 1692901234 | +| `DefaultParameters` | [*components.DefaultParameters](../../models/components/defaultparameters.mdx) | :heavy_check_mark: | Default parameters for this model | \{
"frequency_penalty": 0,
"presence_penalty": 0,
"repetition_penalty": 1,
"temperature": 0.7,
"top_k": 0,
"top_p": 0.9
} | +| `Description` | `*string` | :heavy_minus_sign: | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | +| `ExpirationDate` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The date after which the model may be removed. ISO 8601 date string (YYYY-MM-DD) or null if no expiration. | 2025-06-01 | +| `HuggingFaceID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Hugging Face model identifier, if applicable | microsoft/DialoGPT-medium | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the model | openai/gpt-4 | +| `KnowledgeCutoff` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The date up to which the model was trained on data. ISO 8601 date string (YYYY-MM-DD) or null if unknown. | 2024-10-01 | +| `Links` | [components.ModelLinks](../../models/components/modellinks.mdx) | :heavy_check_mark: | Related API endpoints and resources for this model. | \{
"details": "/api/v1/models/openai/gpt-5.4/endpoints"
} | +| `Name` | `string` | :heavy_check_mark: | Display name of the model | GPT-4 | +| `PerRequestLimits` | [*components.PerRequestLimits](../../models/components/perrequestlimits.mdx) | :heavy_check_mark: | Per-request token limits | \{
"completion_tokens": 1000,
"prompt_tokens": 1000
} | +| `Pricing` | [components.PublicPricing](../../models/components/publicpricing.mdx) | :heavy_check_mark: | Pricing information for the model | \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
} | +| `Reasoning` | [*components.ModelReasoning](../../models/components/modelreasoning.mdx) | :heavy_minus_sign: | Reasoning effort configuration. Omitted for non-reasoning models and dynamic router models. | \{
"default_effort": "medium",
"default_enabled": true,
"mandatory": false,
"supported_efforts": [
"high",
"medium",
"low",
"minimal"
]
} | +| `SupportedParameters` | [][components.Parameter](../../models/components/parameter.mdx) | :heavy_check_mark: | List of supported parameters for this model | | +| `SupportedVoices` | []`string` | :heavy_check_mark: | List of supported voice identifiers for TTS models. Null for non-TTS models. | null | +| `TopProvider` | [components.TopProviderInfo](../../models/components/topproviderinfo.mdx) | :heavy_check_mark: | Information about the top provider for this model | \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
} | \ No newline at end of file diff --git a/docs/models/components/modelaliastarget.mdx b/docs/models/components/modelaliastarget.mdx index e53c88828..3a99ae71f 100644 --- a/docs/models/components/modelaliastarget.mdx +++ b/docs/models/components/modelaliastarget.mdx @@ -9,5 +9,5 @@ Concrete model targeted by this tilde-latest alias, when applicable | Field | Type | Required | Description | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Name` | `string` | ✅ | Human-readable name of the concrete model targeted by this alias | -| `Slug` | `string` | ✅ | Routable model ID of the concrete target, matching that model row's id | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | Human-readable name of the concrete model targeted by this alias | +| `Slug` | `string` | :heavy_check_mark: | Routable model ID of the concrete target, matching that model row's id | \ No newline at end of file diff --git a/docs/models/components/modelarchitecture.mdx b/docs/models/components/modelarchitecture.mdx index 235cbf81e..0a41c1fcd 100644 --- a/docs/models/components/modelarchitecture.mdx +++ b/docs/models/components/modelarchitecture.mdx @@ -9,8 +9,8 @@ Model architecture information | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `InputModalities` | [][components.InputModality](../../models/components/inputmodality.mdx) | ✅ | Supported input modalities | | -| `InstructType` | optionalnullable.OptionalNullable[[components.InstructType](../../models/components/instructtype.mdx)] | ➖ | Instruction format type | chatml | -| `Modality` | `*string` | ✅ | Primary modality of the model | text->text | -| `OutputModalities` | [][components.OutputModality](../../models/components/outputmodality.mdx) | ✅ | Supported output modalities | | -| `Tokenizer` | [*components.ModelGroup](../../models/components/modelgroup.mdx) | ➖ | Tokenizer type used by the model | GPT | \ No newline at end of file +| `InputModalities` | [][components.InputModality](../../models/components/inputmodality.mdx) | :heavy_check_mark: | Supported input modalities | | +| `InstructType` | optionalnullable.OptionalNullable[[components.InstructType](../../models/components/instructtype.mdx)] | :heavy_minus_sign: | Instruction format type | chatml | +| `Modality` | `*string` | :heavy_check_mark: | Primary modality of the model | text->text | +| `OutputModalities` | [][components.OutputModality](../../models/components/outputmodality.mdx) | :heavy_check_mark: | Supported output modalities | | +| `Tokenizer` | [*components.ModelGroup](../../models/components/modelgroup.mdx) | :heavy_minus_sign: | Tokenizer type used by the model | GPT | \ No newline at end of file diff --git a/docs/models/components/modelbenchmarks.mdx b/docs/models/components/modelbenchmarks.mdx index f35bfc48c..d5cae8857 100644 --- a/docs/models/components/modelbenchmarks.mdx +++ b/docs/models/components/modelbenchmarks.mdx @@ -9,5 +9,5 @@ Third-party benchmark rankings for this model. Omitted when no benchmark data is | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `ArtificialAnalysis` | [*components.AABenchmarkEntry](../../models/components/aabenchmarkentry.mdx) | ➖ | Artificial Analysis benchmark index scores. | \{
"agentic_index": 55.8,
"coding_index": 63.2,
"intelligence_index": 71.4
} | -| `DesignArena` | [][components.DABenchmarkEntry](../../models/components/dabenchmarkentry.mdx) | ✅ | Design Arena ELO rankings across arena+category pairs. | [
\{
"arena": "models",
"category": "website",
"elo": 1385.2,
"rank": 5,
"win_rate": 62.5
}
] | \ No newline at end of file +| `ArtificialAnalysis` | [*components.AABenchmarkEntry](../../models/components/aabenchmarkentry.mdx) | :heavy_minus_sign: | Artificial Analysis benchmark index scores. | \{
"agentic_index": 55.8,
"coding_index": 63.2,
"intelligence_index": 71.4
} | +| `DesignArena` | [][components.DABenchmarkEntry](../../models/components/dabenchmarkentry.mdx) | :heavy_check_mark: | Design Arena ELO rankings across arena+category pairs. | [
\{
"arena": "models",
"category": "website",
"elo": 1385.2,
"rank": 5,
"win_rate": 62.5
}
] | \ No newline at end of file diff --git a/docs/models/components/modellinks.mdx b/docs/models/components/modellinks.mdx index 5c725e7b8..1273737d5 100644 --- a/docs/models/components/modellinks.mdx +++ b/docs/models/components/modellinks.mdx @@ -9,4 +9,4 @@ Related API endpoints and resources for this model. | Field | Type | Required | Description | Example | | --------------------------------------- | --------------------------------------- | --------------------------------------- | --------------------------------------- | --------------------------------------- | -| `Details` | `string` | ✅ | URL for the model details/endpoints API | /api/v1/models/openai/gpt-5.4/endpoints | \ No newline at end of file +| `Details` | `string` | :heavy_check_mark: | URL for the model details/endpoints API | /api/v1/models/openai/gpt-5.4/endpoints | \ No newline at end of file diff --git a/docs/models/components/modelreasoning.mdx b/docs/models/components/modelreasoning.mdx index a5b000f6d..4888367ce 100644 --- a/docs/models/components/modelreasoning.mdx +++ b/docs/models/components/modelreasoning.mdx @@ -9,8 +9,8 @@ Reasoning effort configuration. Omitted for non-reasoning models and dynamic rou | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `DefaultEffort` | optionalnullable.OptionalNullable[[components.DefaultEffort](../../models/components/defaulteffort.mdx)] | ➖ | N/A | medium | -| `DefaultEnabled` | `*bool` | ➖ | Default reasoning enabled state when the client does not set `reasoning.enabled`. | | -| `Mandatory` | `bool` | ✅ | When true, reasoning cannot be disabled and effort "none" is rejected. | | -| `SupportedEfforts` | optionalnullable.OptionalNullable[[][*components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | ➖ | Allowed reasoning effort values for this model, in descending effort order (highest first). Null means no allowlist — all gateway effort values are accepted. | | -| `SupportsMaxTokens` | `*bool` | ➖ | Present and `true` when the model accepts `reasoning.max_tokens` in requests (Anthropic-style) instead of or in addition to `reasoning.effort`. Omitted otherwise. | | \ No newline at end of file +| `DefaultEffort` | optionalnullable.OptionalNullable[[components.DefaultEffort](../../models/components/defaulteffort.mdx)] | :heavy_minus_sign: | N/A | medium | +| `DefaultEnabled` | `*bool` | :heavy_minus_sign: | Default reasoning enabled state when the client does not set `reasoning.enabled`. | | +| `Mandatory` | `bool` | :heavy_check_mark: | When true, reasoning cannot be disabled and effort "none" is rejected. | | +| `SupportedEfforts` | optionalnullable.OptionalNullable[[][*components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | :heavy_minus_sign: | Allowed reasoning effort values for this model, in descending effort order (highest first). Null means no allowlist — all gateway effort values are accepted. | | +| `SupportsMaxTokens` | `*bool` | :heavy_minus_sign: | Present and `true` when the model accepts `reasoning.max_tokens` in requests (Anthropic-style) instead of or in addition to `reasoning.effort`. Omitted otherwise. | | \ No newline at end of file diff --git a/docs/models/components/modelresponse.mdx b/docs/models/components/modelresponse.mdx index 91e2a4b91..ac70fdd90 100644 --- a/docs/models/components/modelresponse.mdx +++ b/docs/models/components/modelresponse.mdx @@ -9,4 +9,4 @@ Single model response | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Model](../../models/components/model.mdx) | ✅ | Information about an AI model available on OpenRouter | \{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-5.4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"reasoning": \{
"default_effort": "medium",
"default_enabled": true,
"mandatory": false,
"supported_efforts": [
"high",
"medium",
"low",
"minimal"
]
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
} | \ No newline at end of file +| `Data` | [components.Model](../../models/components/model.mdx) | :heavy_check_mark: | Information about an AI model available on OpenRouter | \{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-5.4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"reasoning": \{
"default_effort": "medium",
"default_enabled": true,
"mandatory": false,
"supported_efforts": [
"high",
"medium",
"low",
"minimal"
]
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
} | \ No newline at end of file diff --git a/docs/models/components/modelscountresponse.mdx b/docs/models/components/modelscountresponse.mdx index 4044230c8..04b817d9e 100644 --- a/docs/models/components/modelscountresponse.mdx +++ b/docs/models/components/modelscountresponse.mdx @@ -9,4 +9,4 @@ Model count data | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Data` | [components.ModelsCountResponseData](../../models/components/modelscountresponsedata.mdx) | ✅ | Model count data | \{
"count": 150
} | \ No newline at end of file +| `Data` | [components.ModelsCountResponseData](../../models/components/modelscountresponsedata.mdx) | :heavy_check_mark: | Model count data | \{
"count": 150
} | \ No newline at end of file diff --git a/docs/models/components/modelscountresponsedata.mdx b/docs/models/components/modelscountresponsedata.mdx index 2ffd7a93e..42e60f32c 100644 --- a/docs/models/components/modelscountresponsedata.mdx +++ b/docs/models/components/modelscountresponsedata.mdx @@ -9,4 +9,4 @@ Model count data | Field | Type | Required | Description | Example | | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | -| `Count` | `int64` | ✅ | Total number of available models | 150 | \ No newline at end of file +| `Count` | `int64` | :heavy_check_mark: | Total number of available models | 150 | \ No newline at end of file diff --git a/docs/models/components/modelslistresponse.mdx b/docs/models/components/modelslistresponse.mdx index 10a74b63b..ef5d7e350 100644 --- a/docs/models/components/modelslistresponse.mdx +++ b/docs/models/components/modelslistresponse.mdx @@ -9,6 +9,6 @@ List of available models | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.Model](../../models/components/model.mdx) | ✅ | List of available models | [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
] | -| `Links` | [components.ModelsListResponseLinks](../../models/components/modelslistresponselinks.mdx) | ✅ | Pagination links | | -| `TotalCount` | `int64` | ✅ | Total number of models matching the query | 150 | \ No newline at end of file +| `Data` | [][components.Model](../../models/components/model.mdx) | :heavy_check_mark: | List of available models | [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
] | +| `Links` | [components.ModelsListResponseLinks](../../models/components/modelslistresponselinks.mdx) | :heavy_check_mark: | Pagination links | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of models matching the query | 150 | \ No newline at end of file diff --git a/docs/models/components/modelslistresponselinks.mdx b/docs/models/components/modelslistresponselinks.mdx index c366d0d34..3e5dbd139 100644 --- a/docs/models/components/modelslistresponselinks.mdx +++ b/docs/models/components/modelslistresponselinks.mdx @@ -9,4 +9,4 @@ Pagination links | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Next` | `*string` | ✅ | URL for the next page of results, or null if this is the last page | /api/v1/models?offset=500&limit=500 | \ No newline at end of file +| `Next` | `*string` | :heavy_check_mark: | URL for the next page of results, or null if this is the last page | /api/v1/models?offset=500&limit=500 | \ No newline at end of file diff --git a/docs/models/components/moderationplugin.mdx b/docs/models/components/moderationplugin.mdx index 48856fd8f..589e0cdd2 100644 --- a/docs/models/components/moderationplugin.mdx +++ b/docs/models/components/moderationplugin.mdx @@ -6,4 +6,4 @@ title: "ModerationPlugin" | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `ID` | [components.ModerationPluginID](../../models/components/moderationpluginid.mdx) | ✅ | N/A | \ No newline at end of file +| `ID` | [components.ModerationPluginID](../../models/components/moderationpluginid.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/multimodalmedia.mdx b/docs/models/components/multimodalmedia.mdx index dfc47ecb9..d1b0a4973 100644 --- a/docs/models/components/multimodalmedia.mdx +++ b/docs/models/components/multimodalmedia.mdx @@ -6,5 +6,5 @@ title: "MultimodalMedia" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Data` | `string` | ✅ | N/A | -| `Format` | `*string` | ➖ | N/A | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | +| `Format` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/namespacefunctiontool.mdx b/docs/models/components/namespacefunctiontool.mdx index c9b6950ce..7b303c60f 100644 --- a/docs/models/components/namespacefunctiontool.mdx +++ b/docs/models/components/namespacefunctiontool.mdx @@ -9,12 +9,12 @@ A function tool grouped inside a namespace tool | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.NamespaceFunctionToolAllowedCaller](../../models/components/namespacefunctiontoolallowedcaller.mdx)] | ➖ | N/A | | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | -| `Parameters` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Type` | [components.NamespaceFunctionToolType](../../models/components/namespacefunctiontooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.NamespaceFunctionToolAllowedCaller](../../models/components/namespacefunctiontoolallowedcaller.mdx)] | :heavy_minus_sign: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | +| `Parameters` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.NamespaceFunctionToolType](../../models/components/namespacefunctiontooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/namespacetool.mdx b/docs/models/components/namespacetool.mdx index a371cb56d..63b20c09b 100644 --- a/docs/models/components/namespacetool.mdx +++ b/docs/models/components/namespacetool.mdx @@ -9,7 +9,7 @@ Groups function/custom tools under a shared namespace | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Description` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | -| `Tools` | [][components.NamespaceToolTool](../../models/components/namespacetooltool.mdx) | ✅ | N/A | -| `Type` | [components.NamespaceToolType](../../models/components/namespacetooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Description` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Tools` | [][components.NamespaceToolTool](../../models/components/namespacetooltool.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.NamespaceToolType](../../models/components/namespacetooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/nativesupport.mdx b/docs/models/components/nativesupport.mdx index d69276ca6..712f26a7b 100644 --- a/docs/models/components/nativesupport.mdx +++ b/docs/models/components/nativesupport.mdx @@ -9,6 +9,6 @@ Endpoints whose provider runs this tool itself during inference. Zero for tools | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `EndpointCount` | `int64` | ✅ | N/A | 18 | -| `ModelCount` | `int64` | ✅ | N/A | 12 | -| `Models` | [][components.ServerToolNativeModel](../../models/components/servertoolnativemodel.mdx) | ✅ | N/A | | \ No newline at end of file +| `EndpointCount` | `int64` | :heavy_check_mark: | N/A | 18 | +| `ModelCount` | `int64` | :heavy_check_mark: | N/A | 12 | +| `Models` | [][components.ServerToolNativeModel](../../models/components/servertoolnativemodel.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/nativetools.mdx b/docs/models/components/nativetools.mdx index bfdf5a3a0..2e0483ed4 100644 --- a/docs/models/components/nativetools.mdx +++ b/docs/models/components/nativetools.mdx @@ -6,4 +6,4 @@ title: "NativeTools" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Type` | `string` | ✅ | The provider tool type the request is translated to when this tool runs natively, e.g. `web_search_20260209` on Anthropic or `google_search` on Gemini. | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | The provider tool type the request is translated to when this tool runs natively, e.g. `web_search_20260209` on Anthropic or `google_search` on Gemini. | \ No newline at end of file diff --git a/docs/models/components/never.mdx b/docs/models/components/never.mdx index 6d40ecc31..0d6a9b031 100644 --- a/docs/models/components/never.mdx +++ b/docs/models/components/never.mdx @@ -6,4 +6,4 @@ title: "Never" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ToolNames` | []`string` | ➖ | N/A | \ No newline at end of file +| `ToolNames` | []`string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/notfoundresponseerrordata.mdx b/docs/models/components/notfoundresponseerrordata.mdx index 6343f9182..f1786ff95 100644 --- a/docs/models/components/notfoundresponseerrordata.mdx +++ b/docs/models/components/notfoundresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for NotFoundResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/oauthjwks.mdx b/docs/models/components/oauthjwks.mdx index 3314dbc90..6f694de91 100644 --- a/docs/models/components/oauthjwks.mdx +++ b/docs/models/components/oauthjwks.mdx @@ -9,4 +9,4 @@ RFC 7517 JWK Set of the keys OpenRouter signs access tokens with. | Field | Type | Required | Description | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Keys` | [][components.Key](../../models/components/key.mdx) | ✅ | N/A | \ No newline at end of file +| `Keys` | [][components.Key](../../models/components/key.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityarizedestination.mdx b/docs/models/components/observabilityarizedestination.mdx index f63b76009..fb8d66474 100644 --- a/docs/models/components/observabilityarizedestination.mdx +++ b/docs/models/components/observabilityarizedestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityArizeDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityArizeDestinationConfig](../../models/components/observabilityarizedestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityArizeDestinationType](../../models/components/observabilityarizedestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityArizeDestinationConfig](../../models/components/observabilityarizedestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityArizeDestinationType](../../models/components/observabilityarizedestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityarizedestinationconfig.mdx b/docs/models/components/observabilityarizedestinationconfig.mdx index 27a844955..63f7eb5fa 100644 --- a/docs/models/components/observabilityarizedestinationconfig.mdx +++ b/docs/models/components/observabilityarizedestinationconfig.mdx @@ -6,8 +6,8 @@ title: "ObservabilityArizeDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `BaseURL` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `ModelID` | `string` | ✅ | The name of the tracing project in Arize AX | -| `SpaceKey` | `string` | ✅ | N/A | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `ModelID` | `string` | :heavy_check_mark: | The name of the tracing project in Arize AX | +| `SpaceKey` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitybraintrustdestination.mdx b/docs/models/components/observabilitybraintrustdestination.mdx index 7bb35bbc8..c2c0b62cb 100644 --- a/docs/models/components/observabilitybraintrustdestination.mdx +++ b/docs/models/components/observabilitybraintrustdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityBraintrustDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityBraintrustDestinationConfig](../../models/components/observabilitybraintrustdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityBraintrustDestinationType](../../models/components/observabilitybraintrustdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityBraintrustDestinationConfig](../../models/components/observabilitybraintrustdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityBraintrustDestinationType](../../models/components/observabilitybraintrustdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitybraintrustdestinationconfig.mdx b/docs/models/components/observabilitybraintrustdestinationconfig.mdx index 827b1afc5..77e375f62 100644 --- a/docs/models/components/observabilitybraintrustdestinationconfig.mdx +++ b/docs/models/components/observabilitybraintrustdestinationconfig.mdx @@ -6,7 +6,7 @@ title: "ObservabilityBraintrustDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `BaseURL` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `ProjectID` | `string` | ✅ | N/A | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `ProjectID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityclickhousedestination.mdx b/docs/models/components/observabilityclickhousedestination.mdx index bd5706bf3..f4825babd 100644 --- a/docs/models/components/observabilityclickhousedestination.mdx +++ b/docs/models/components/observabilityclickhousedestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityClickhouseDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityClickhouseDestinationConfig](../../models/components/observabilityclickhousedestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityClickhouseDestinationType](../../models/components/observabilityclickhousedestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityClickhouseDestinationConfig](../../models/components/observabilityclickhousedestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityClickhouseDestinationType](../../models/components/observabilityclickhousedestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityclickhousedestinationconfig.mdx b/docs/models/components/observabilityclickhousedestinationconfig.mdx index c1410ec1f..db41a707c 100644 --- a/docs/models/components/observabilityclickhousedestinationconfig.mdx +++ b/docs/models/components/observabilityclickhousedestinationconfig.mdx @@ -6,10 +6,10 @@ title: "ObservabilityClickhouseDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `Database` | `string` | ✅ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `Host` | `string` | ✅ | N/A | -| `Password` | `string` | ✅ | N/A | -| `ShouldIncludeCacheWriteTokens` | `*bool` | ➖ | Send the cache_write_tokens column (schema v2). Turn this on after the table has that column. | -| `Table` | `*string` | ➖ | N/A | -| `Username` | `string` | ✅ | If you have not set a specific username in ClickHouse, simply type in 'default' below. | \ No newline at end of file +| `Database` | `string` | :heavy_check_mark: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `Host` | `string` | :heavy_check_mark: | N/A | +| `Password` | `string` | :heavy_check_mark: | N/A | +| `ShouldIncludeCacheWriteTokens` | `*bool` | :heavy_minus_sign: | Send the cache_write_tokens column (schema v2). Turn this on after the table has that column. | +| `Table` | `*string` | :heavy_minus_sign: | N/A | +| `Username` | `string` | :heavy_check_mark: | If you have not set a specific username in ClickHouse, simply type in 'default' below. | \ No newline at end of file diff --git a/docs/models/components/observabilitydatadogdestination.mdx b/docs/models/components/observabilitydatadogdestination.mdx index 0d2a9e2c6..dd51a414e 100644 --- a/docs/models/components/observabilitydatadogdestination.mdx +++ b/docs/models/components/observabilitydatadogdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityDatadogDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityDatadogDestinationConfig](../../models/components/observabilitydatadogdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityDatadogDestinationType](../../models/components/observabilitydatadogdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityDatadogDestinationConfig](../../models/components/observabilitydatadogdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityDatadogDestinationType](../../models/components/observabilitydatadogdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitydatadogdestinationconfig.mdx b/docs/models/components/observabilitydatadogdestinationconfig.mdx index 1108f66ac..87aed2460 100644 --- a/docs/models/components/observabilitydatadogdestinationconfig.mdx +++ b/docs/models/components/observabilitydatadogdestinationconfig.mdx @@ -6,7 +6,7 @@ title: "ObservabilityDatadogDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | Datadog API key must have LLM Observability permissions. Create at: | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `MlApp` | `string` | ✅ | Name to identify your application in Datadog LLM Observability | -| `URL` | `*string` | ➖ | Datadog API URL for your region (e.g., https://api.datadoghq.com, https://api.us3.datadoghq.com, https://api.us5.datadoghq.com, https://api.datadoghq.eu) | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | Datadog API key must have LLM Observability permissions. Create at: | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `MlApp` | `string` | :heavy_check_mark: | Name to identify your application in Datadog LLM Observability | +| `URL` | `*string` | :heavy_minus_sign: | Datadog API URL for your region (e.g., https://api.datadoghq.com, https://api.us3.datadoghq.com, https://api.us5.datadoghq.com, https://api.datadoghq.eu) | \ No newline at end of file diff --git a/docs/models/components/observabilityfilterrulegroup.mdx b/docs/models/components/observabilityfilterrulegroup.mdx index 5e380e8bf..a9a091697 100644 --- a/docs/models/components/observabilityfilterrulegroup.mdx +++ b/docs/models/components/observabilityfilterrulegroup.mdx @@ -6,5 +6,5 @@ title: "ObservabilityFilterRuleGroup" | Field | Type | Required | Description | | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `Logic` | [*components.Logic](../../models/components/logic.mdx) | ➖ | N/A | -| `Rules` | [][components.Rule](../../models/components/rule.mdx) | ✅ | N/A | \ No newline at end of file +| `Logic` | [*components.Logic](../../models/components/logic.mdx) | :heavy_minus_sign: | N/A | +| `Rules` | [][components.Rule](../../models/components/rule.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityfilterrulesconfig.mdx b/docs/models/components/observabilityfilterrulesconfig.mdx index d3dc2764e..a7593a36d 100644 --- a/docs/models/components/observabilityfilterrulesconfig.mdx +++ b/docs/models/components/observabilityfilterrulesconfig.mdx @@ -9,5 +9,5 @@ Optional structured filter rules controlling which events are forwarded. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | N/A | -| `Groups` | [][components.ObservabilityFilterRuleGroup](../../models/components/observabilityfilterrulegroup.mdx) | ✅ | N/A | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | N/A | +| `Groups` | [][components.ObservabilityFilterRuleGroup](../../models/components/observabilityfilterrulegroup.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityfilterrulesconfignullable.mdx b/docs/models/components/observabilityfilterrulesconfignullable.mdx index 7f1981f42..adfe79152 100644 --- a/docs/models/components/observabilityfilterrulesconfignullable.mdx +++ b/docs/models/components/observabilityfilterrulesconfignullable.mdx @@ -9,5 +9,5 @@ Optional structured filter rules controlling which events are forwarded. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | N/A | -| `Groups` | [][components.ObservabilityFilterRuleGroup](../../models/components/observabilityfilterrulegroup.mdx) | ✅ | N/A | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | N/A | +| `Groups` | [][components.ObservabilityFilterRuleGroup](../../models/components/observabilityfilterrulegroup.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitygrafanadestination.mdx b/docs/models/components/observabilitygrafanadestination.mdx index 5eb04432d..706a874cd 100644 --- a/docs/models/components/observabilitygrafanadestination.mdx +++ b/docs/models/components/observabilitygrafanadestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityGrafanaDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityGrafanaDestinationConfig](../../models/components/observabilitygrafanadestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityGrafanaDestinationType](../../models/components/observabilitygrafanadestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityGrafanaDestinationConfig](../../models/components/observabilitygrafanadestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityGrafanaDestinationType](../../models/components/observabilitygrafanadestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitygrafanadestinationconfig.mdx b/docs/models/components/observabilitygrafanadestinationconfig.mdx index 399b1c5be..43051e2bc 100644 --- a/docs/models/components/observabilitygrafanadestinationconfig.mdx +++ b/docs/models/components/observabilitygrafanadestinationconfig.mdx @@ -6,7 +6,7 @@ title: "ObservabilityGrafanaDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `BaseURL` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `InstanceID` | `string` | ✅ | N/A | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `InstanceID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitylangfusedestination.mdx b/docs/models/components/observabilitylangfusedestination.mdx index 7322ff292..ee6cc2248 100644 --- a/docs/models/components/observabilitylangfusedestination.mdx +++ b/docs/models/components/observabilitylangfusedestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityLangfuseDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityLangfuseDestinationConfig](../../models/components/observabilitylangfusedestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityLangfuseDestinationType](../../models/components/observabilitylangfusedestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityLangfuseDestinationConfig](../../models/components/observabilitylangfusedestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityLangfuseDestinationType](../../models/components/observabilitylangfusedestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitylangfusedestinationconfig.mdx b/docs/models/components/observabilitylangfusedestinationconfig.mdx index a97e36e4a..f21f733b0 100644 --- a/docs/models/components/observabilitylangfusedestinationconfig.mdx +++ b/docs/models/components/observabilitylangfusedestinationconfig.mdx @@ -6,7 +6,7 @@ title: "ObservabilityLangfuseDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `BaseURL` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `PublicKey` | `string` | ✅ | N/A | -| `SecretKey` | `string` | ✅ | N/A | \ No newline at end of file +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `PublicKey` | `string` | :heavy_check_mark: | N/A | +| `SecretKey` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitylangsmithdestination.mdx b/docs/models/components/observabilitylangsmithdestination.mdx index 5906024c6..ac6b01a85 100644 --- a/docs/models/components/observabilitylangsmithdestination.mdx +++ b/docs/models/components/observabilitylangsmithdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityLangsmithDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityLangsmithDestinationConfig](../../models/components/observabilitylangsmithdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityLangsmithDestinationType](../../models/components/observabilitylangsmithdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityLangsmithDestinationConfig](../../models/components/observabilitylangsmithdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityLangsmithDestinationType](../../models/components/observabilitylangsmithdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitylangsmithdestinationconfig.mdx b/docs/models/components/observabilitylangsmithdestinationconfig.mdx index 505b9c51f..08ecaf8e3 100644 --- a/docs/models/components/observabilitylangsmithdestinationconfig.mdx +++ b/docs/models/components/observabilitylangsmithdestinationconfig.mdx @@ -6,8 +6,8 @@ title: "ObservabilityLangsmithDestinationConfig" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `Endpoint` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `Project` | `*string` | ➖ | The name for this project, such as pr-openrouter-demo. Defaults to "main" if not set. | -| `WorkspaceID` | `*string` | ➖ | Required for org-scoped API keys. Find this in your LangSmith workspace settings. | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `Endpoint` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `Project` | `*string` | :heavy_minus_sign: | The name for this project, such as pr-openrouter-demo. Defaults to "main" if not set. | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Required for org-scoped API keys. Find this in your LangSmith workspace settings. | \ No newline at end of file diff --git a/docs/models/components/observabilitynewrelicdestination.mdx b/docs/models/components/observabilitynewrelicdestination.mdx index d6832a80c..65c201e11 100644 --- a/docs/models/components/observabilitynewrelicdestination.mdx +++ b/docs/models/components/observabilitynewrelicdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityNewrelicDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityNewrelicDestinationConfig](../../models/components/observabilitynewrelicdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityNewrelicDestinationType](../../models/components/observabilitynewrelicdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityNewrelicDestinationConfig](../../models/components/observabilitynewrelicdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityNewrelicDestinationType](../../models/components/observabilitynewrelicdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitynewrelicdestinationconfig.mdx b/docs/models/components/observabilitynewrelicdestinationconfig.mdx index 3f0c41cfc..380655d73 100644 --- a/docs/models/components/observabilitynewrelicdestinationconfig.mdx +++ b/docs/models/components/observabilitynewrelicdestinationconfig.mdx @@ -6,6 +6,6 @@ title: "ObservabilityNewrelicDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `LicenseKey` | `string` | ✅ | N/A | -| `Region` | [*components.Region](../../models/components/region.mdx) | ➖ | N/A | \ No newline at end of file +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `LicenseKey` | `string` | :heavy_check_mark: | N/A | +| `Region` | [*components.Region](../../models/components/region.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityopikdestination.mdx b/docs/models/components/observabilityopikdestination.mdx index 909a513cd..612161df9 100644 --- a/docs/models/components/observabilityopikdestination.mdx +++ b/docs/models/components/observabilityopikdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityOpikDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityOpikDestinationConfig](../../models/components/observabilityopikdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityOpikDestinationType](../../models/components/observabilityopikdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityOpikDestinationConfig](../../models/components/observabilityopikdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityOpikDestinationType](../../models/components/observabilityopikdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityopikdestinationconfig.mdx b/docs/models/components/observabilityopikdestinationconfig.mdx index c5c3c4777..258428c36 100644 --- a/docs/models/components/observabilityopikdestinationconfig.mdx +++ b/docs/models/components/observabilityopikdestinationconfig.mdx @@ -6,7 +6,7 @@ title: "ObservabilityOpikDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `ProjectName` | `string` | ✅ | N/A | -| `Workspace` | `string` | ✅ | N/A | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `ProjectName` | `string` | :heavy_check_mark: | N/A | +| `Workspace` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityotelcollectordestination.mdx b/docs/models/components/observabilityotelcollectordestination.mdx index 2b03add3b..55f1401d6 100644 --- a/docs/models/components/observabilityotelcollectordestination.mdx +++ b/docs/models/components/observabilityotelcollectordestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityOtelCollectorDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityOtelCollectorDestinationConfig](../../models/components/observabilityotelcollectordestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityOtelCollectorDestinationType](../../models/components/observabilityotelcollectordestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityOtelCollectorDestinationConfig](../../models/components/observabilityotelcollectordestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityOtelCollectorDestinationType](../../models/components/observabilityotelcollectordestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityotelcollectordestinationconfig.mdx b/docs/models/components/observabilityotelcollectordestinationconfig.mdx index b8e5b18a2..569730f46 100644 --- a/docs/models/components/observabilityotelcollectordestinationconfig.mdx +++ b/docs/models/components/observabilityotelcollectordestinationconfig.mdx @@ -6,5 +6,5 @@ title: "ObservabilityOtelCollectorDestinationConfig" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `Endpoint` | `string` | ✅ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers as a JSON object. For Axiom, use \{"Authorization": "Bearer xaat-xxx", "X-Axiom-Dataset": "your-dataset"} | \ No newline at end of file +| `Endpoint` | `string` | :heavy_check_mark: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers as a JSON object. For Axiom, use \{"Authorization": "Bearer xaat-xxx", "X-Axiom-Dataset": "your-dataset"} | \ No newline at end of file diff --git a/docs/models/components/observabilityposthogdestination.mdx b/docs/models/components/observabilityposthogdestination.mdx index bb7a70755..dc99b1946 100644 --- a/docs/models/components/observabilityposthogdestination.mdx +++ b/docs/models/components/observabilityposthogdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityPosthogDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityPosthogDestinationConfig](../../models/components/observabilityposthogdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityPosthogDestinationType](../../models/components/observabilityposthogdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityPosthogDestinationConfig](../../models/components/observabilityposthogdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityPosthogDestinationType](../../models/components/observabilityposthogdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityposthogdestinationconfig.mdx b/docs/models/components/observabilityposthogdestinationconfig.mdx index 7192c799b..15721e28e 100644 --- a/docs/models/components/observabilityposthogdestinationconfig.mdx +++ b/docs/models/components/observabilityposthogdestinationconfig.mdx @@ -6,6 +6,6 @@ title: "ObservabilityPosthogDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `Endpoint` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `Endpoint` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | \ No newline at end of file diff --git a/docs/models/components/observabilityrampdestination.mdx b/docs/models/components/observabilityrampdestination.mdx index 2a2910105..dd5897fa7 100644 --- a/docs/models/components/observabilityrampdestination.mdx +++ b/docs/models/components/observabilityrampdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityRampDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityRampDestinationConfig](../../models/components/observabilityrampdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityRampDestinationType](../../models/components/observabilityrampdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityRampDestinationConfig](../../models/components/observabilityrampdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityRampDestinationType](../../models/components/observabilityrampdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityrampdestinationconfig.mdx b/docs/models/components/observabilityrampdestinationconfig.mdx index bcc343e33..46d1c2e0f 100644 --- a/docs/models/components/observabilityrampdestinationconfig.mdx +++ b/docs/models/components/observabilityrampdestinationconfig.mdx @@ -6,6 +6,6 @@ title: "ObservabilityRampDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `APIKey` | `string` | ✅ | Generate this in your Ramp integration settings. | -| `BaseURL` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to Ramp. | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | Generate this in your Ramp integration settings. | +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to Ramp. | \ No newline at end of file diff --git a/docs/models/components/observabilitys3destination.mdx b/docs/models/components/observabilitys3destination.mdx index f7469862f..21c7e5904 100644 --- a/docs/models/components/observabilitys3destination.mdx +++ b/docs/models/components/observabilitys3destination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityS3Destination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityS3DestinationConfig](../../models/components/observabilitys3destinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityS3DestinationType](../../models/components/observabilitys3destinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityS3DestinationConfig](../../models/components/observabilitys3destinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityS3DestinationType](../../models/components/observabilitys3destinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitys3destinationconfig.mdx b/docs/models/components/observabilitys3destinationconfig.mdx index c9c8d1d26..fb2e4f95c 100644 --- a/docs/models/components/observabilitys3destinationconfig.mdx +++ b/docs/models/components/observabilitys3destinationconfig.mdx @@ -6,12 +6,12 @@ title: "ObservabilityS3DestinationConfig" | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AccessKeyID` | `string` | ✅ | N/A | -| `BucketName` | `string` | ✅ | N/A | -| `Endpoint` | `*string` | ➖ | Only for S3-compatible services like Cloudflare R2 (https://account-id.r2.cloudflarestorage.com) or MinIO. Leave blank for standard AWS S3. | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `PathTemplate` | `*string` | ➖ | Template for S3 object path. The filename (\{traceId}-\{timestamp}.json) is automatically appended. Available variables: \{prefix}, \{date}, \{year}, \{month}, \{day}, \{apiKeyName} | -| `Prefix` | `*string` | ➖ | N/A | -| `Region` | `*string` | ➖ | N/A | -| `SecretAccessKey` | `string` | ✅ | N/A | -| `SessionToken` | `*string` | ➖ | N/A | \ No newline at end of file +| `AccessKeyID` | `string` | :heavy_check_mark: | N/A | +| `BucketName` | `string` | :heavy_check_mark: | N/A | +| `Endpoint` | `*string` | :heavy_minus_sign: | Only for S3-compatible services like Cloudflare R2 (https://account-id.r2.cloudflarestorage.com) or MinIO. Leave blank for standard AWS S3. | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `PathTemplate` | `*string` | :heavy_minus_sign: | Template for S3 object path. The filename (\{traceId}-\{timestamp}.json) is automatically appended. Available variables: \{prefix}, \{date}, \{year}, \{month}, \{day}, \{apiKeyName} | +| `Prefix` | `*string` | :heavy_minus_sign: | N/A | +| `Region` | `*string` | :heavy_minus_sign: | N/A | +| `SecretAccessKey` | `string` | :heavy_check_mark: | N/A | +| `SessionToken` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitysentrydestination.mdx b/docs/models/components/observabilitysentrydestination.mdx index 3ba49c3d4..71fed4010 100644 --- a/docs/models/components/observabilitysentrydestination.mdx +++ b/docs/models/components/observabilitysentrydestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilitySentryDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilitySentryDestinationConfig](../../models/components/observabilitysentrydestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilitySentryDestinationType](../../models/components/observabilitysentrydestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilitySentryDestinationConfig](../../models/components/observabilitysentrydestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilitySentryDestinationType](../../models/components/observabilitysentrydestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitysentrydestinationconfig.mdx b/docs/models/components/observabilitysentrydestinationconfig.mdx index 24af6ebc4..110212416 100644 --- a/docs/models/components/observabilitysentrydestinationconfig.mdx +++ b/docs/models/components/observabilitysentrydestinationconfig.mdx @@ -6,6 +6,6 @@ title: "ObservabilitySentryDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `Dsn` | `string` | ✅ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `OtlpEndpoint` | `string` | ✅ | N/A | \ No newline at end of file +| `Dsn` | `string` | :heavy_check_mark: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `OtlpEndpoint` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitysnowflakedestination.mdx b/docs/models/components/observabilitysnowflakedestination.mdx index 76060e0af..be8d0fe35 100644 --- a/docs/models/components/observabilitysnowflakedestination.mdx +++ b/docs/models/components/observabilitysnowflakedestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilitySnowflakeDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilitySnowflakeDestinationConfig](../../models/components/observabilitysnowflakedestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilitySnowflakeDestinationType](../../models/components/observabilitysnowflakedestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilitySnowflakeDestinationConfig](../../models/components/observabilitysnowflakedestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilitySnowflakeDestinationType](../../models/components/observabilitysnowflakedestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitysnowflakedestinationconfig.mdx b/docs/models/components/observabilitysnowflakedestinationconfig.mdx index 3eadc916e..09e5f8532 100644 --- a/docs/models/components/observabilitysnowflakedestinationconfig.mdx +++ b/docs/models/components/observabilitysnowflakedestinationconfig.mdx @@ -6,11 +6,11 @@ title: "ObservabilitySnowflakeDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `Account` | `string` | ✅ | N/A | -| `Database` | `*string` | ➖ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `Schema` | `*string` | ➖ | N/A | -| `ShouldIncludeCacheWriteTokens` | `*bool` | ➖ | Send the cache_write_tokens column (schema v2). Turn this on after the table has that column. | -| `Table` | `*string` | ➖ | N/A | -| `Token` | `string` | ✅ | N/A | -| `Warehouse` | `*string` | ➖ | N/A | \ No newline at end of file +| `Account` | `string` | :heavy_check_mark: | N/A | +| `Database` | `*string` | :heavy_minus_sign: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `Schema` | `*string` | :heavy_minus_sign: | N/A | +| `ShouldIncludeCacheWriteTokens` | `*bool` | :heavy_minus_sign: | Send the cache_write_tokens column (schema v2). Turn this on after the table has that column. | +| `Table` | `*string` | :heavy_minus_sign: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | +| `Warehouse` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilityweavedestination.mdx b/docs/models/components/observabilityweavedestination.mdx index 278c6eaca..157aa3c0c 100644 --- a/docs/models/components/observabilityweavedestination.mdx +++ b/docs/models/components/observabilityweavedestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityWeaveDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityWeaveDestinationConfig](../../models/components/observabilityweavedestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityWeaveDestinationType](../../models/components/observabilityweavedestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityWeaveDestinationConfig](../../models/components/observabilityweavedestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityWeaveDestinationType](../../models/components/observabilityweavedestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilityweavedestinationconfig.mdx b/docs/models/components/observabilityweavedestinationconfig.mdx index 22ccdc391..f49d7555e 100644 --- a/docs/models/components/observabilityweavedestinationconfig.mdx +++ b/docs/models/components/observabilityweavedestinationconfig.mdx @@ -6,8 +6,8 @@ title: "ObservabilityWeaveDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | --------------------------------------------------------------- | -| `APIKey` | `string` | ✅ | N/A | -| `BaseURL` | `*string` | ➖ | N/A | -| `Entity` | `string` | ✅ | N/A | -| `Headers` | map[string]`string` | ➖ | Custom HTTP headers to include in requests to this destination. | -| `Project` | `string` | ✅ | N/A | \ No newline at end of file +| `APIKey` | `string` | :heavy_check_mark: | N/A | +| `BaseURL` | `*string` | :heavy_minus_sign: | N/A | +| `Entity` | `string` | :heavy_check_mark: | N/A | +| `Headers` | map[string]`string` | :heavy_minus_sign: | Custom HTTP headers to include in requests to this destination. | +| `Project` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/observabilitywebhookdestination.mdx b/docs/models/components/observabilitywebhookdestination.mdx index 0ac5db27a..d596667b8 100644 --- a/docs/models/components/observabilitywebhookdestination.mdx +++ b/docs/models/components/observabilitywebhookdestination.mdx @@ -6,20 +6,20 @@ title: "ObservabilityWebhookDestination" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | []`string` | ✅ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | -| `BroadcastGenerationCost` | `bool` | ✅ | When true, include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `bool` | ✅ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `bool` | ✅ | When true, include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `bool` | ✅ | When true, include request-context generation metadata. | false | -| `Config` | [components.ObservabilityWebhookDestinationConfig](../../models/components/observabilitywebhookdestinationconfig.mdx) | ✅ | N/A | | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | -| `Enabled` | `bool` | ✅ | Whether this destination is currently enabled. | true | -| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | ✅ | Optional structured filter rules controlling which events are forwarded. | null | -| `ID` | `string` | ✅ | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `Name` | `*string` | ✅ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `bool` | ✅ | When true, request/response bodies are not forwarded to this destination — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | ✅ | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | -| `SamplingRate` | `float64` | ✅ | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | -| `Type` | [components.ObservabilityWebhookDestinationType](../../models/components/observabilitywebhookdestinationtype.mdx) | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `APIKeyHashes` | []`string` | :heavy_check_mark: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) whose traffic is forwarded to this destination. `null` means all keys. | null | +| `BroadcastGenerationCost` | `bool` | :heavy_check_mark: | When true, include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `bool` | :heavy_check_mark: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `bool` | :heavy_check_mark: | When true, include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `bool` | :heavy_check_mark: | When true, include request-context generation metadata. | false | +| `Config` | [components.ObservabilityWebhookDestinationConfig](../../models/components/observabilitywebhookdestinationconfig.mdx) | :heavy_check_mark: | N/A | | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was created. | 2025-08-24T10:30:00Z | +| `Enabled` | `bool` | :heavy_check_mark: | Whether this destination is currently enabled. | true | +| `FilterRules` | [*components.ObservabilityFilterRulesConfig](../../models/components/observabilityfilterrulesconfig.mdx) | :heavy_check_mark: | Optional structured filter rules controlling which events are forwarded. | null | +| `ID` | `string` | :heavy_check_mark: | Stable public identifier for this destination. | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `Name` | `*string` | :heavy_check_mark: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `bool` | :heavy_check_mark: | When true, request/response bodies are not forwarded to this destination — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegion](../../models/components/observabilitydataregion.mdx) | :heavy_check_mark: | Data regions this destination applies to. Requests served in a region only fan out to destinations that include that region. | [
"global"
] | +| `SamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for events sent to this destination, between 0.0001 and 1 (1 = 100%). | 1 | +| `Type` | [components.ObservabilityWebhookDestinationType](../../models/components/observabilitywebhookdestinationtype.mdx) | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the destination was last updated. | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace this destination belongs to. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/observabilitywebhookdestinationconfig.mdx b/docs/models/components/observabilitywebhookdestinationconfig.mdx index 6f0fc3ada..79171ee28 100644 --- a/docs/models/components/observabilitywebhookdestinationconfig.mdx +++ b/docs/models/components/observabilitywebhookdestinationconfig.mdx @@ -6,6 +6,6 @@ title: "ObservabilityWebhookDestinationConfig" | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `Headers` | map[string]`string` | ➖ | N/A | -| `Method` | [*components.ObservabilityWebhookDestinationMethod](../../models/components/observabilitywebhookdestinationmethod.mdx) | ➖ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Headers` | map[string]`string` | :heavy_minus_sign: | N/A | +| `Method` | [*components.ObservabilityWebhookDestinationMethod](../../models/components/observabilitywebhookdestinationmethod.mdx) | :heavy_minus_sign: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/offreason.mdx b/docs/models/components/offreason.mdx deleted file mode 100644 index ee759a75b..000000000 --- a/docs/models/components/offreason.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "OffReason" ---- - -`switched_off` for this intern, `disabled` for the whole workspace; null while on. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.OffReasonSwitchedOff - -// Open enum: custom values can be created with a direct type cast -custom := components.OffReason("custom_value") -``` - - -## Values - -| Name | Value | -| ---------------------- | ---------------------- | -| `OffReasonSwitchedOff` | switched_off | -| `OffReasonDisabled` | disabled | \ No newline at end of file diff --git a/docs/models/components/openaifile.mdx b/docs/models/components/openaifile.mdx index 2f564bbfd..ce6c7c6fa 100644 --- a/docs/models/components/openaifile.mdx +++ b/docs/models/components/openaifile.mdx @@ -9,11 +9,11 @@ A stored file in OpenAI's Files API shape. | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Shape` | [components.OpenAIFileShape](../../models/components/openaifileshape.mdx) | ✅ | N/A | -| `Bytes` | `int64` | ✅ | N/A | -| `CreatedAt` | `int64` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Object` | [components.OpenAIFileObject](../../models/components/openaifileobject.mdx) | ✅ | N/A | -| `Purpose` | [components.Purpose](../../models/components/purpose.mdx) | ✅ | N/A | -| `Status` | [components.OpenAIFileStatus](../../models/components/openaifilestatus.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenAIFileShape](../../models/components/openaifileshape.mdx) | :heavy_check_mark: | N/A | +| `Bytes` | `int64` | :heavy_check_mark: | N/A | +| `CreatedAt` | `int64` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Object` | [components.OpenAIFileObject](../../models/components/openaifileobject.mdx) | :heavy_check_mark: | N/A | +| `Purpose` | [components.Purpose](../../models/components/purpose.mdx) | :heavy_check_mark: | N/A | +| `Status` | [components.OpenAIFileStatus](../../models/components/openaifilestatus.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openaifiledeleted.mdx b/docs/models/components/openaifiledeleted.mdx index 1636294f7..5e9e8bb9a 100644 --- a/docs/models/components/openaifiledeleted.mdx +++ b/docs/models/components/openaifiledeleted.mdx @@ -9,7 +9,7 @@ Deletion result in OpenAI's shape. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Shape` | [components.OpenAIFileDeletedShape](../../models/components/openaifiledeletedshape.mdx) | ✅ | N/A | -| `Deleted` | `bool` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Object` | [components.OpenAIFileDeletedObject](../../models/components/openaifiledeletedobject.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenAIFileDeletedShape](../../models/components/openaifiledeletedshape.mdx) | :heavy_check_mark: | N/A | +| `Deleted` | `bool` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Object` | [components.OpenAIFileDeletedObject](../../models/components/openaifiledeletedobject.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openaifilelist.mdx b/docs/models/components/openaifilelist.mdx index fe43387a0..4222fe91c 100644 --- a/docs/models/components/openaifilelist.mdx +++ b/docs/models/components/openaifilelist.mdx @@ -9,9 +9,9 @@ A page of files in OpenAI's shape. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Shape` | [components.OpenAIFileListShape](../../models/components/openaifilelistshape.mdx) | ✅ | N/A | -| `Data` | [][components.OpenAIFile](../../models/components/openaifile.mdx) | ✅ | N/A | -| `FirstID` | `*string` | ✅ | N/A | -| `HasMore` | `bool` | ✅ | N/A | -| `LastID` | `*string` | ✅ | N/A | -| `Object` | [components.OpenAIFileListObject](../../models/components/openaifilelistobject.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenAIFileListShape](../../models/components/openaifilelistshape.mdx) | :heavy_check_mark: | N/A | +| `Data` | [][components.OpenAIFile](../../models/components/openaifile.mdx) | :heavy_check_mark: | N/A | +| `FirstID` | `*string` | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | N/A | +| `LastID` | `*string` | :heavy_check_mark: | N/A | +| `Object` | [components.OpenAIFileListObject](../../models/components/openaifilelistobject.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsecustomtoolcall.mdx b/docs/models/components/openairesponsecustomtoolcall.mdx index 072ffa95a..4a6a8d1a0 100644 --- a/docs/models/components/openairesponsecustomtoolcall.mdx +++ b/docs/models/components/openairesponsecustomtoolcall.mdx @@ -6,10 +6,10 @@ title: "OpenAIResponseCustomToolCall" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Input` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Type` | [components.OpenAIResponseCustomToolCallType](../../models/components/openairesponsecustomtoolcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Input` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Type` | [components.OpenAIResponseCustomToolCallType](../../models/components/openairesponsecustomtoolcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openairesponsecustomtoolcalloutput.mdx b/docs/models/components/openairesponsecustomtoolcalloutput.mdx index cbc1368d9..726441b3b 100644 --- a/docs/models/components/openairesponsecustomtoolcalloutput.mdx +++ b/docs/models/components/openairesponsecustomtoolcalloutput.mdx @@ -6,7 +6,7 @@ title: "OpenAIResponseCustomToolCallOutput" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `Output` | [components.OpenAIResponseCustomToolCallOutputOutput2](../../models/components/openairesponsecustomtoolcalloutputoutput2.mdx) | ✅ | N/A | -| `Type` | [components.OpenAIResponseCustomToolCallOutputType](../../models/components/openairesponsecustomtoolcalloutputtype.mdx) | ✅ | N/A | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `Output` | [components.OpenAIResponseCustomToolCallOutputOutput2](../../models/components/openairesponsecustomtoolcalloutputoutput2.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.OpenAIResponseCustomToolCallOutputType](../../models/components/openairesponsecustomtoolcalloutputtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsefunctiontoolcall.mdx b/docs/models/components/openairesponsefunctiontoolcall.mdx index 1c005d874..ebfcfef97 100644 --- a/docs/models/components/openairesponsefunctiontoolcall.mdx +++ b/docs/models/components/openairesponsefunctiontoolcall.mdx @@ -6,13 +6,13 @@ title: "OpenAIResponseFunctionToolCall" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | [*components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ➖ | N/A | completed | -| `SubagentID` | `*string` | ➖ | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | -| `SubagentItems` | [][components.OpenAIResponseFunctionToolCallSubagentItem](../../models/components/openairesponsefunctiontoolcallsubagentitem.mdx) | ➖ | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | -| `Type` | [components.OpenAIResponseFunctionToolCallType](../../models/components/openairesponsefunctiontoolcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | [*components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_minus_sign: | N/A | completed | +| `SubagentID` | `*string` | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | +| `SubagentItems` | [][components.OpenAIResponseFunctionToolCallSubagentItem](../../models/components/openairesponsefunctiontoolcallsubagentitem.mdx) | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | +| `Type` | [components.OpenAIResponseFunctionToolCallType](../../models/components/openairesponsefunctiontoolcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openairesponsefunctiontoolcalloutput.mdx b/docs/models/components/openairesponsefunctiontoolcalloutput.mdx index 6174bf4b6..e464d154c 100644 --- a/docs/models/components/openairesponsefunctiontoolcalloutput.mdx +++ b/docs/models/components/openairesponsefunctiontoolcalloutput.mdx @@ -6,8 +6,8 @@ title: "OpenAIResponseFunctionToolCallOutput" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Output` | [components.OpenAIResponseFunctionToolCallOutputOutput2](../../models/components/openairesponsefunctiontoolcalloutputoutput2.mdx) | ✅ | N/A | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.OpenAIResponseFunctionToolCallOutputType](../../models/components/openairesponsefunctiontoolcalloutputtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Output` | [components.OpenAIResponseFunctionToolCallOutputOutput2](../../models/components/openairesponsefunctiontoolcalloutputoutput2.mdx) | :heavy_check_mark: | N/A | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.OpenAIResponseFunctionToolCallOutputType](../../models/components/openairesponsefunctiontoolcalloutputtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openairesponsefunctiontoolcallsubagentitem.mdx b/docs/models/components/openairesponsefunctiontoolcallsubagentitem.mdx index d293745ed..6d1d9b61b 100644 --- a/docs/models/components/openairesponsefunctiontoolcallsubagentitem.mdx +++ b/docs/models/components/openairesponsefunctiontoolcallsubagentitem.mdx @@ -6,5 +6,5 @@ title: "OpenAIResponseFunctionToolCallSubagentItem" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponseinputmessageitem.mdx b/docs/models/components/openairesponseinputmessageitem.mdx index 9bd3d0ad8..8d8a2353e 100644 --- a/docs/models/components/openairesponseinputmessageitem.mdx +++ b/docs/models/components/openairesponseinputmessageitem.mdx @@ -6,7 +6,7 @@ title: "OpenAIResponseInputMessageItem" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Content` | [][components.OpenAIResponseInputMessageItemContent](../../models/components/openairesponseinputmessageitemcontent.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Role` | [components.OpenAIResponseInputMessageItemRoleUnion](../../models/components/openairesponseinputmessageitemroleunion.mdx) | ✅ | N/A | -| `Type` | [*components.OpenAIResponseInputMessageItemType](../../models/components/openairesponseinputmessageitemtype.mdx) | ➖ | N/A | \ No newline at end of file +| `Content` | [][components.OpenAIResponseInputMessageItemContent](../../models/components/openairesponseinputmessageitemcontent.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Role` | [components.OpenAIResponseInputMessageItemRoleUnion](../../models/components/openairesponseinputmessageitemroleunion.mdx) | :heavy_check_mark: | N/A | +| `Type` | [*components.OpenAIResponseInputMessageItemType](../../models/components/openairesponseinputmessageitemtype.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsesrefusalcontent.mdx b/docs/models/components/openairesponsesrefusalcontent.mdx index 4f6b357f1..e412ff668 100644 --- a/docs/models/components/openairesponsesrefusalcontent.mdx +++ b/docs/models/components/openairesponsesrefusalcontent.mdx @@ -6,5 +6,5 @@ title: "OpenAIResponsesRefusalContent" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Refusal` | `string` | ✅ | N/A | -| `Type` | [components.OpenAIResponsesRefusalContentType](../../models/components/openairesponsesrefusalcontenttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Refusal` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.OpenAIResponsesRefusalContentType](../../models/components/openairesponsesrefusalcontenttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsestoolchoice.mdx b/docs/models/components/openairesponsestoolchoice.mdx index 849d433a6..cfeeb25de 100644 --- a/docs/models/components/openairesponsestoolchoice.mdx +++ b/docs/models/components/openairesponsestoolchoice.mdx @@ -6,4 +6,4 @@ title: "OpenAIResponsesToolChoice" | Field | Type | Required | Description | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Type` | [components.Type](../../models/components/type.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.Type](../../models/components/type.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsestoolchoiceapplypatch.mdx b/docs/models/components/openairesponsestoolchoiceapplypatch.mdx index 5485631f4..d37e00a52 100644 --- a/docs/models/components/openairesponsestoolchoiceapplypatch.mdx +++ b/docs/models/components/openairesponsestoolchoiceapplypatch.mdx @@ -6,4 +6,4 @@ title: "OpenAIResponsesToolChoiceApplyPatch" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Type` | [components.OpenAIResponsesToolChoiceTypeApplyPatch](../../models/components/openairesponsestoolchoicetypeapplypatch.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.OpenAIResponsesToolChoiceTypeApplyPatch](../../models/components/openairesponsestoolchoicetypeapplypatch.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsestoolchoicefunction.mdx b/docs/models/components/openairesponsestoolchoicefunction.mdx index 831b77006..f9607fb9b 100644 --- a/docs/models/components/openairesponsestoolchoicefunction.mdx +++ b/docs/models/components/openairesponsestoolchoicefunction.mdx @@ -6,5 +6,5 @@ title: "OpenAIResponsesToolChoiceFunction" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Name` | `string` | ✅ | N/A | -| `Type` | [components.OpenAIResponsesToolChoiceTypeFunction](../../models/components/openairesponsestoolchoicetypefunction.mdx) | ✅ | N/A | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.OpenAIResponsesToolChoiceTypeFunction](../../models/components/openairesponsestoolchoicetypefunction.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openairesponsestoolchoiceshell.mdx b/docs/models/components/openairesponsestoolchoiceshell.mdx index ab5536f78..f964fb9c6 100644 --- a/docs/models/components/openairesponsestoolchoiceshell.mdx +++ b/docs/models/components/openairesponsestoolchoiceshell.mdx @@ -6,4 +6,4 @@ title: "OpenAIResponsesToolChoiceShell" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Type` | [components.OpenAIResponsesToolChoiceTypeShell](../../models/components/openairesponsestoolchoicetypeshell.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.OpenAIResponsesToolChoiceTypeShell](../../models/components/openairesponsestoolchoicetypeshell.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openresponsescreatedevent.mdx b/docs/models/components/openresponsescreatedevent.mdx index d70315a60..50c252482 100644 --- a/docs/models/components/openresponsescreatedevent.mdx +++ b/docs/models/components/openresponsescreatedevent.mdx @@ -9,6 +9,6 @@ Event emitted when a response is created | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | ✅ | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.OpenResponsesCreatedEventType](../../models/components/openresponsescreatedeventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | :heavy_check_mark: | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.OpenResponsesCreatedEventType](../../models/components/openresponsescreatedeventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openresponseserrorfield.mdx b/docs/models/components/openresponseserrorfield.mdx index fc3ef43a7..89bbef4fb 100644 --- a/docs/models/components/openresponseserrorfield.mdx +++ b/docs/models/components/openresponseserrorfield.mdx @@ -9,6 +9,6 @@ Error of a failed response; `metadata` carries OpenRouter-specific details. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Code` | [components.CodeEnum](../../models/components/codeenum.mdx) | ✅ | N/A | | -| `Message` | `string` | ✅ | N/A | | -| `Metadata` | [*components.OpenResponsesErrorMetadata](../../models/components/openresponseserrormetadata.mdx) | ➖ | OpenRouter-specific details of a failed response, such as the alignment object of an alignment error. | \{
"alignment": \{
"calls": [
\{
"call": 1,
"outcome": "unavailable",
"reason": "evaluator_error"
}
]
}
} | \ No newline at end of file +| `Code` | [components.CodeEnum](../../models/components/codeenum.mdx) | :heavy_check_mark: | N/A | | +| `Message` | `string` | :heavy_check_mark: | N/A | | +| `Metadata` | [*components.OpenResponsesErrorMetadata](../../models/components/openresponseserrormetadata.mdx) | :heavy_minus_sign: | OpenRouter-specific details of a failed response, such as the alignment object of an alignment error. | \{
"alignment": \{
"calls": [
\{
"call": 1,
"outcome": "unavailable",
"reason": "evaluator_error"
}
]
}
} | \ No newline at end of file diff --git a/docs/models/components/openresponseserrormetadata.mdx b/docs/models/components/openresponseserrormetadata.mdx index 0c17834df..437275376 100644 --- a/docs/models/components/openresponseserrormetadata.mdx +++ b/docs/models/components/openresponseserrormetadata.mdx @@ -9,4 +9,4 @@ OpenRouter-specific details of a failed response, such as the alignment object o | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| `Alignment` | [*components.OpenResponsesErrorMetadataAlignment](../../models/components/openresponseserrormetadataalignment.mdx) | ➖ | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | \ No newline at end of file +| `Alignment` | [*components.OpenResponsesErrorMetadataAlignment](../../models/components/openresponseserrormetadataalignment.mdx) | :heavy_minus_sign: | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | \ No newline at end of file diff --git a/docs/models/components/openresponseserrormetadataalignment.mdx b/docs/models/components/openresponseserrormetadataalignment.mdx index 7c0eddfee..930f13f67 100644 --- a/docs/models/components/openresponseserrormetadataalignment.mdx +++ b/docs/models/components/openresponseserrormetadataalignment.mdx @@ -9,5 +9,5 @@ Beta. The result of the alignment plugin for this request; the shape may change. | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Calls` | [][components.AlignmentCallRecord](../../models/components/alignmentcallrecord.mdx) | ✅ | One record per evaluated assistant message of the request, in the order the messages were produced. Empty when no message of the request had content to evaluate. | -| `Rejected` | [*components.AlignmentRejected](../../models/components/alignmentrejected.mdx) | ➖ | N/A | \ No newline at end of file +| `Calls` | [][components.AlignmentCallRecord](../../models/components/alignmentcallrecord.mdx) | :heavy_check_mark: | One record per evaluated assistant message of the request, in the order the messages were produced. Empty when no message of the request had content to evaluate. | +| `Rejected` | [*components.AlignmentRejected](../../models/components/alignmentrejected.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/openresponsesinprogressevent.mdx b/docs/models/components/openresponsesinprogressevent.mdx index e5a533e82..e08c1e18e 100644 --- a/docs/models/components/openresponsesinprogressevent.mdx +++ b/docs/models/components/openresponsesinprogressevent.mdx @@ -9,6 +9,6 @@ Event emitted when a response is in progress | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | ✅ | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.OpenResponsesInProgressEventType](../../models/components/openresponsesinprogresseventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | :heavy_check_mark: | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.OpenResponsesInProgressEventType](../../models/components/openresponsesinprogresseventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openresponsesresult.mdx b/docs/models/components/openresponsesresult.mdx index f80e4376c..3ea8e6887 100644 --- a/docs/models/components/openresponsesresult.mdx +++ b/docs/models/components/openresponsesresult.mdx @@ -9,42 +9,42 @@ Complete non-streaming response from the Responses API | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Background` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `CompletedAt` | `*int64` | ✅ | N/A | | -| `CreatedAt` | `int64` | ✅ | N/A | | -| `Error` | [*components.OpenResponsesErrorField](../../models/components/openresponseserrorfield.mdx) | ✅ | Error of a failed response; `metadata` carries OpenRouter-specific details. | \{
"code": "server_error",
"message": "Alignment plugin: the reply could not be evaluated: evaluator_error",
"metadata": \{
"alignment": \{
"calls": [
\{
"call": 1,
"outcome": "unavailable",
"reason": "evaluator_error"
}
]
}
}
} | -| `FrequencyPenalty` | `*float64` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `IncompleteDetails` | [*components.IncompleteDetails](../../models/components/incompletedetails.mdx) | ✅ | N/A | \{
"reason": "max_output_tokens"
} | -| `Instructions` | [*components.BaseInputsUnion](../../models/components/baseinputsunion.mdx) | ✅ | N/A | [
\{
"content": "What is the weather today?",
"role": "user"
}
] | -| `MaxOutputTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `MaxToolCalls` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `Metadata` | map[string]`string` | ✅ | Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed. | \{
"session_id": "abc-def-ghi",
"user_id": "123"
} | -| `Model` | `string` | ✅ | N/A | | -| `Object` | [components.OpenResponsesResultObject](../../models/components/openresponsesresultobject.mdx) | ✅ | N/A | | -| `Output` | [][components.OutputItems](../../models/components/outputitems.mdx) | ✅ | N/A | | -| `OutputText` | `*string` | ➖ | N/A | | -| `ParallelToolCalls` | `bool` | ✅ | N/A | | -| `PresencePenalty` | `*float64` | ✅ | N/A | | -| `PreviousResponseID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Prompt` | optionalnullable.OptionalNullable[[components.StoredPromptTemplate](../../models/components/storedprompttemplate.mdx)] | ➖ | N/A | \{
"id": "prompt-abc123",
"variables": \{
"name": "John"
}
} | -| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | ➖ | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | -| `Reasoning` | optionalnullable.OptionalNullable[[components.BaseReasoningConfig](../../models/components/basereasoningconfig.mdx)] | ➖ | N/A | \{
"effort": "medium",
"summary": "auto"
} | -| `SafetyIdentifier` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Status` | [components.OpenAIResponsesResponseStatus](../../models/components/openairesponsesresponsestatus.mdx) | ✅ | N/A | completed | -| `Store` | `*bool` | ➖ | N/A | | -| `Temperature` | `*float64` | ✅ | N/A | | -| `Text` | [*components.TextExtendedConfig](../../models/components/textextendedconfig.mdx) | ➖ | Text output configuration including format and verbosity | \{
"format": \{
"type": "text"
}
} | -| `ToolChoice` | [components.OpenAIResponsesToolChoiceUnion](../../models/components/openairesponsestoolchoiceunion.mdx) | ✅ | N/A | auto | -| `Tools` | [][components.OpenResponsesResultToolUnion](../../models/components/openresponsesresulttoolunion.mdx) | ✅ | N/A | | -| `TopLogprobs` | `*int64` | ➖ | N/A | | -| `TopP` | `*float64` | ✅ | N/A | | -| `Truncation` | optionalnullable.OptionalNullable[[components.Truncation](../../models/components/truncation.mdx)] | ➖ | N/A | auto | -| `Usage` | optionalnullable.OptionalNullable[[components.Usage](../../models/components/usage.mdx)] | ➖ | Token usage information for the response | \{
"cost": 0.0012,
"cost_details": \{
"upstream_inference_cost": null,
"upstream_inference_input_cost": 0.0008,
"upstream_inference_output_cost": 0.0004
},
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
} | -| `User` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | ➖ | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | -| `ErrorType` | [*components.APIErrorType](../../models/components/apierrortype.mdx) | ➖ | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | -| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | ➖ | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | -| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | ➖ | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | \ No newline at end of file +| `Background` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `CompletedAt` | `*int64` | :heavy_check_mark: | N/A | | +| `CreatedAt` | `int64` | :heavy_check_mark: | N/A | | +| `Error` | [*components.OpenResponsesErrorField](../../models/components/openresponseserrorfield.mdx) | :heavy_check_mark: | Error of a failed response; `metadata` carries OpenRouter-specific details. | \{
"code": "server_error",
"message": "Alignment plugin: the reply could not be evaluated: evaluator_error",
"metadata": \{
"alignment": \{
"calls": [
\{
"call": 1,
"outcome": "unavailable",
"reason": "evaluator_error"
}
]
}
}
} | +| `FrequencyPenalty` | `*float64` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `IncompleteDetails` | [*components.IncompleteDetails](../../models/components/incompletedetails.mdx) | :heavy_check_mark: | N/A | \{
"reason": "max_output_tokens"
} | +| `Instructions` | [*components.BaseInputsUnion](../../models/components/baseinputsunion.mdx) | :heavy_check_mark: | N/A | [
\{
"content": "What is the weather today?",
"role": "user"
}
] | +| `MaxOutputTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `MaxToolCalls` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `Metadata` | map[string]`string` | :heavy_check_mark: | Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed. | \{
"session_id": "abc-def-ghi",
"user_id": "123"
} | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Object` | [components.OpenResponsesResultObject](../../models/components/openresponsesresultobject.mdx) | :heavy_check_mark: | N/A | | +| `Output` | [][components.OutputItems](../../models/components/outputitems.mdx) | :heavy_check_mark: | N/A | | +| `OutputText` | `*string` | :heavy_minus_sign: | N/A | | +| `ParallelToolCalls` | `bool` | :heavy_check_mark: | N/A | | +| `PresencePenalty` | `*float64` | :heavy_check_mark: | N/A | | +| `PreviousResponseID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Prompt` | optionalnullable.OptionalNullable[[components.StoredPromptTemplate](../../models/components/storedprompttemplate.mdx)] | :heavy_minus_sign: | N/A | \{
"id": "prompt-abc123",
"variables": \{
"name": "John"
}
} | +| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | :heavy_minus_sign: | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | +| `Reasoning` | optionalnullable.OptionalNullable[[components.BaseReasoningConfig](../../models/components/basereasoningconfig.mdx)] | :heavy_minus_sign: | N/A | \{
"effort": "medium",
"summary": "auto"
} | +| `SafetyIdentifier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ServiceTier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Status` | [components.OpenAIResponsesResponseStatus](../../models/components/openairesponsesresponsestatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Store` | `*bool` | :heavy_minus_sign: | N/A | | +| `Temperature` | `*float64` | :heavy_check_mark: | N/A | | +| `Text` | [*components.TextExtendedConfig](../../models/components/textextendedconfig.mdx) | :heavy_minus_sign: | Text output configuration including format and verbosity | \{
"format": \{
"type": "text"
}
} | +| `ToolChoice` | [components.OpenAIResponsesToolChoiceUnion](../../models/components/openairesponsestoolchoiceunion.mdx) | :heavy_check_mark: | N/A | auto | +| `Tools` | [][components.OpenResponsesResultToolUnion](../../models/components/openresponsesresulttoolunion.mdx) | :heavy_check_mark: | N/A | | +| `TopLogprobs` | `*int64` | :heavy_minus_sign: | N/A | | +| `TopP` | `*float64` | :heavy_check_mark: | N/A | | +| `Truncation` | optionalnullable.OptionalNullable[[components.Truncation](../../models/components/truncation.mdx)] | :heavy_minus_sign: | N/A | auto | +| `Usage` | optionalnullable.OptionalNullable[[components.Usage](../../models/components/usage.mdx)] | :heavy_minus_sign: | Token usage information for the response | \{
"cost": 0.0012,
"cost_details": \{
"upstream_inference_cost": null,
"upstream_inference_input_cost": 0.0008,
"upstream_inference_output_cost": 0.0004
},
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
} | +| `User` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Alignment` | [*components.Alignment](../../models/components/alignment.mdx) | :heavy_minus_sign: | Beta. The result of the alignment plugin for this request; the shape may change. | \{
"calls": [
\{
"call": 1,
"outcome": "allowed",
"rules": [
\{
"applicable": true,
"broken": false,
"probability": 0.04
}
]
}
]
} | +| `ErrorType` | [*components.APIErrorType](../../models/components/apierrortype.mdx) | :heavy_minus_sign: | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | +| `OpenrouterMetadata` | [*components.OpenRouterMetadata](../../models/components/openroutermetadata.mdx) | :heavy_minus_sign: | N/A | \{
"attempt": 1,
"endpoints": \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 1
},
"generation_time": 2016,
"is_byok": false,
"region": "iad",
"requested": "openai/gpt-4o",
"strategy": "direct",
"summary": "available=1, selected=OpenAI"
} | +| `SafeguardResults` | [][components.ArmorSafeguardResult](../../models/components/armorsafeguardresult.mdx) | :heavy_minus_sign: | OpenRouter Armor's verdict for each client tool call of this response, present whenever Armor evaluated the response (even when nothing was flagged). Independent of the `openrouter_metadata` opt-in. | | \ No newline at end of file diff --git a/docs/models/components/openresponsesresulttoolfunction.mdx b/docs/models/components/openresponsesresulttoolfunction.mdx index 02f383554..cae4da53b 100644 --- a/docs/models/components/openresponsesresulttoolfunction.mdx +++ b/docs/models/components/openresponsesresulttoolfunction.mdx @@ -9,12 +9,12 @@ Function tool definition | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Parameters` | map[string]`any` | ✅ | N/A | | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Type` | [components.OpenResponsesResultType](../../models/components/openresponsesresulttype.mdx) | ✅ | N/A | | -| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.OpenResponsesResultAllowedCaller](../../models/components/openresponsesresultallowedcaller.mdx)] | ➖ | N/A | | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | -| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | \ No newline at end of file +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Parameters` | map[string]`any` | :heavy_check_mark: | N/A | | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.OpenResponsesResultType](../../models/components/openresponsesresulttype.mdx) | :heavy_check_mark: | N/A | | +| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.OpenResponsesResultAllowedCaller](../../models/components/openresponsesresultallowedcaller.mdx)] | :heavy_minus_sign: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | +| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openrouterfile.mdx b/docs/models/components/openrouterfile.mdx index b9110f68f..ec87a6284 100644 --- a/docs/models/components/openrouterfile.mdx +++ b/docs/models/components/openrouterfile.mdx @@ -9,11 +9,11 @@ A stored file in the OpenRouter superset shape: Anthropic-shaped, plus OpenRoute | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Shape` | [components.OpenRouterFileShape](../../models/components/openrouterfileshape.mdx) | ✅ | N/A | -| `CreatedAt` | `string` | ✅ | N/A | -| `Downloadable` | `bool` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `MimeType` | `string` | ✅ | N/A | -| `SizeBytes` | `int64` | ✅ | N/A | -| `Type` | [components.OpenRouterFileType](../../models/components/openrouterfiletype.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenRouterFileShape](../../models/components/openrouterfileshape.mdx) | :heavy_check_mark: | N/A | +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | +| `Downloadable` | `bool` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `MimeType` | `string` | :heavy_check_mark: | N/A | +| `SizeBytes` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.OpenRouterFileType](../../models/components/openrouterfiletype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openrouterfiledeleted.mdx b/docs/models/components/openrouterfiledeleted.mdx index d1046da35..16d6aea4c 100644 --- a/docs/models/components/openrouterfiledeleted.mdx +++ b/docs/models/components/openrouterfiledeleted.mdx @@ -9,6 +9,6 @@ Deletion result in the OpenRouter shape. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Shape` | [components.OpenRouterFileDeletedShape](../../models/components/openrouterfiledeletedshape.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Type` | [components.OpenRouterFileDeletedType](../../models/components/openrouterfiledeletedtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenRouterFileDeletedShape](../../models/components/openrouterfiledeletedshape.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.OpenRouterFileDeletedType](../../models/components/openrouterfiledeletedtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openrouterfilelist.mdx b/docs/models/components/openrouterfilelist.mdx index 2a6bef713..8b4ef8de0 100644 --- a/docs/models/components/openrouterfilelist.mdx +++ b/docs/models/components/openrouterfilelist.mdx @@ -9,9 +9,9 @@ A page of files in the OpenRouter shape. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Shape` | [components.OpenRouterFileListShape](../../models/components/openrouterfilelistshape.mdx) | ✅ | N/A | -| `Cursor` | `*string` | ✅ | Opaque cursor for the next page; null when there are no more results. | -| `Data` | [][components.OpenRouterFile](../../models/components/openrouterfile.mdx) | ✅ | N/A | -| `FirstID` | `*string` | ✅ | N/A | -| `HasMore` | `bool` | ✅ | N/A | -| `LastID` | `*string` | ✅ | N/A | \ No newline at end of file +| `Shape` | [components.OpenRouterFileListShape](../../models/components/openrouterfilelistshape.mdx) | :heavy_check_mark: | N/A | +| `Cursor` | `*string` | :heavy_check_mark: | Opaque cursor for the next page; null when there are no more results. | +| `Data` | [][components.OpenRouterFile](../../models/components/openrouterfile.mdx) | :heavy_check_mark: | N/A | +| `FirstID` | `*string` | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | N/A | +| `LastID` | `*string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/openroutermetadata.mdx b/docs/models/components/openroutermetadata.mdx index 21e5e404b..79f760106 100644 --- a/docs/models/components/openroutermetadata.mdx +++ b/docs/models/components/openroutermetadata.mdx @@ -6,14 +6,14 @@ title: "OpenRouterMetadata" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Attempt` | `int64` | ✅ | N/A | | -| `Attempts` | [][components.RouterAttempt](../../models/components/routerattempt.mdx) | ➖ | N/A | | -| `Endpoints` | [components.EndpointsMetadata](../../models/components/endpointsmetadata.mdx) | ✅ | N/A | \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 3
} | -| `GenerationTime` | `*int64` | ➖ | Milliseconds measured for the generation, from dispatching the upstream request until its response body ended. Divide the completion token count by this for throughput. Absent when no upstream request was dispatched. | 2016 | -| `IsBYOK` | `bool` | ✅ | N/A | | -| `Params` | [*components.RouterParams](../../models/components/routerparams.mdx) | ➖ | N/A | \{
"version_group": "anthropic/claude-sonnet-4"
} | -| `Pipeline` | [][components.PipelineStage](../../models/components/pipelinestage.mdx) | ➖ | N/A | | -| `Region` | `*string` | ✅ | N/A | | -| `Requested` | `string` | ✅ | N/A | | -| `Strategy` | [components.RoutingStrategy](../../models/components/routingstrategy.mdx) | ✅ | N/A | direct | -| `Summary` | `string` | ✅ | N/A | | \ No newline at end of file +| `Attempt` | `int64` | :heavy_check_mark: | N/A | | +| `Attempts` | [][components.RouterAttempt](../../models/components/routerattempt.mdx) | :heavy_minus_sign: | N/A | | +| `Endpoints` | [components.EndpointsMetadata](../../models/components/endpointsmetadata.mdx) | :heavy_check_mark: | N/A | \{
"available": [
\{
"model": "openai/gpt-4o",
"provider": "OpenAI",
"selected": true
}
],
"total": 3
} | +| `GenerationTime` | `*int64` | :heavy_minus_sign: | Milliseconds measured for the generation, from dispatching the upstream request until its response body ended. Divide the completion token count by this for throughput. Absent when no upstream request was dispatched. | 2016 | +| `IsBYOK` | `bool` | :heavy_check_mark: | N/A | | +| `Params` | [*components.RouterParams](../../models/components/routerparams.mdx) | :heavy_minus_sign: | N/A | \{
"version_group": "anthropic/claude-sonnet-4"
} | +| `Pipeline` | [][components.PipelineStage](../../models/components/pipelinestage.mdx) | :heavy_minus_sign: | N/A | | +| `Region` | `*string` | :heavy_check_mark: | N/A | | +| `Requested` | `string` | :heavy_check_mark: | N/A | | +| `Strategy` | [components.RoutingStrategy](../../models/components/routingstrategy.mdx) | :heavy_check_mark: | N/A | direct | +| `Summary` | `string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/openrouterwebsearchservertool.mdx b/docs/models/components/openrouterwebsearchservertool.mdx index 14a848074..acd808b40 100644 --- a/docs/models/components/openrouterwebsearchservertool.mdx +++ b/docs/models/components/openrouterwebsearchservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: searches the web for current information | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Parameters` | [*components.WebSearchConfig](../../models/components/websearchconfig.mdx) | ➖ | N/A | \{
"max_results": 5,
"search_context_size": "medium"
} | -| `Type` | [components.OpenRouterWebSearchServerToolType](../../models/components/openrouterwebsearchservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.WebSearchConfig](../../models/components/websearchconfig.mdx) | :heavy_minus_sign: | N/A | \{
"max_results": 5,
"search_context_size": "medium"
} | +| `Type` | [components.OpenRouterWebSearchServerToolType](../../models/components/openrouterwebsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/oranthropicbashtoolresult.mdx b/docs/models/components/oranthropicbashtoolresult.mdx index 03e79850d..2fdf42921 100644 --- a/docs/models/components/oranthropicbashtoolresult.mdx +++ b/docs/models/components/oranthropicbashtoolresult.mdx @@ -9,8 +9,8 @@ Output of an `openrouter:bash` call executed in the OpenRouter sandbox (`engine: | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | -| `Content` | map[string]`any` | ✅ | N/A | -| `Files` | [][components.ORAnthropicBashToolResultFile](../../models/components/oranthropicbashtoolresultfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.ORAnthropicBashToolResultTypeOpenrouterBashToolResult](../../models/components/oranthropicbashtoolresulttypeopenrouterbashtoolresult.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `Files` | [][components.ORAnthropicBashToolResultFile](../../models/components/oranthropicbashtoolresultfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicBashToolResultTypeOpenrouterBashToolResult](../../models/components/oranthropicbashtoolresulttypeopenrouterbashtoolresult.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/oranthropicbashtoolresultfile.mdx b/docs/models/components/oranthropicbashtoolresultfile.mdx index 2755ed07d..b2a83c6c1 100644 --- a/docs/models/components/oranthropicbashtoolresultfile.mdx +++ b/docs/models/components/oranthropicbashtoolresultfile.mdx @@ -6,9 +6,9 @@ title: "ORAnthropicBashToolResultFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.ORAnthropicBashToolResultTypeContainerFileCitation](../../models/components/oranthropicbashtoolresulttypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicBashToolResultTypeContainerFileCitation](../../models/components/oranthropicbashtoolresulttypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/oranthropicservertooluseblock.mdx b/docs/models/components/oranthropicservertooluseblock.mdx index 3582fc062..b6e5baacf 100644 --- a/docs/models/components/oranthropicservertooluseblock.mdx +++ b/docs/models/components/oranthropicservertooluseblock.mdx @@ -6,8 +6,8 @@ title: "ORAnthropicServerToolUseBlock" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| `Caller` | optionalnullable.OptionalNullable[[components.ORAnthropicNullableCaller](../../models/components/oranthropicnullablecaller.mdx)] | ➖ | N/A | \{
"type": "direct"
} | -| `ID` | `string` | ✅ | N/A | | -| `Input` | `any` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Type` | [components.ORAnthropicServerToolUseBlockType](../../models/components/oranthropicservertooluseblocktype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Caller` | optionalnullable.OptionalNullable[[components.ORAnthropicNullableCaller](../../models/components/oranthropicnullablecaller.mdx)] | :heavy_minus_sign: | N/A | \{
"type": "direct"
} | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Input` | `any` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.ORAnthropicServerToolUseBlockType](../../models/components/oranthropicservertooluseblocktype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/oranthropicshelltoolresult.mdx b/docs/models/components/oranthropicshelltoolresult.mdx index 70221c8a9..e8ea31460 100644 --- a/docs/models/components/oranthropicshelltoolresult.mdx +++ b/docs/models/components/oranthropicshelltoolresult.mdx @@ -9,8 +9,8 @@ Output of an `openrouter:shell` call executed in the OpenRouter sandbox | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | -| `Content` | map[string]`any` | ✅ | N/A | -| `Files` | [][components.ORAnthropicShellToolResultFile](../../models/components/oranthropicshelltoolresultfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.ORAnthropicShellToolResultTypeOpenrouterShellToolResult](../../models/components/oranthropicshelltoolresulttypeopenroutershelltoolresult.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `Files` | [][components.ORAnthropicShellToolResultFile](../../models/components/oranthropicshelltoolresultfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicShellToolResultTypeOpenrouterShellToolResult](../../models/components/oranthropicshelltoolresulttypeopenroutershelltoolresult.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/oranthropicshelltoolresultfile.mdx b/docs/models/components/oranthropicshelltoolresultfile.mdx index 21357d7eb..6cb4fdaf3 100644 --- a/docs/models/components/oranthropicshelltoolresultfile.mdx +++ b/docs/models/components/oranthropicshelltoolresultfile.mdx @@ -6,9 +6,9 @@ title: "ORAnthropicShellToolResultFile" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------ | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.ORAnthropicShellToolResultTypeContainerFileCitation](../../models/components/oranthropicshelltoolresulttypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicShellToolResultTypeContainerFileCitation](../../models/components/oranthropicshelltoolresulttypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/oranthropictoolsearchresult.mdx b/docs/models/components/oranthropictoolsearchresult.mdx index 403fdc70b..d3785d663 100644 --- a/docs/models/components/oranthropictoolsearchresult.mdx +++ b/docs/models/components/oranthropictoolsearchresult.mdx @@ -9,6 +9,6 @@ Router-owned deferred discovery result containing original selected tool definit | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Content` | map[string]`any` | ✅ | N/A | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.ORAnthropicToolSearchResultType](../../models/components/oranthropictoolsearchresulttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicToolSearchResultType](../../models/components/oranthropictoolsearchresulttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/oranthropictoolsearchresultparam.mdx b/docs/models/components/oranthropictoolsearchresultparam.mdx index 5d721ba42..07f942fe0 100644 --- a/docs/models/components/oranthropictoolsearchresultparam.mdx +++ b/docs/models/components/oranthropictoolsearchresultparam.mdx @@ -9,6 +9,6 @@ Router-owned deferred discovery result for continuation. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Content` | map[string]`any` | ✅ | N/A | -| `ToolUseID` | `string` | ✅ | N/A | -| `Type` | [components.ORAnthropicToolSearchResultParamType](../../models/components/oranthropictoolsearchresultparamtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | map[string]`any` | :heavy_check_mark: | N/A | +| `ToolUseID` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ORAnthropicToolSearchResultParamType](../../models/components/oranthropictoolsearchresultparamtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/organizationsettings.mdx b/docs/models/components/organizationsettings.mdx index b8152295f..6e05ea3fe 100644 --- a/docs/models/components/organizationsettings.mdx +++ b/docs/models/components/organizationsettings.mdx @@ -6,5 +6,5 @@ title: "OrganizationSettings" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | ID of the organization the settings belong to | org_2dHFtVWx2n56w6HkM0000000000 | -| `IsFilteredModelCatalogEnabled` | `bool` | ✅ | When true, `GET /api/v1/models` called with one of the organization's API keys returns only the models that key can use (the `/api/v1/models/user` catalog), and the signed-in dashboard shows the same list. Anonymous requests always receive the public catalog. | true | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | ID of the organization the settings belong to | org_2dHFtVWx2n56w6HkM0000000000 | +| `IsFilteredModelCatalogEnabled` | `bool` | :heavy_check_mark: | When true, `GET /api/v1/models` called with one of the organization's API keys returns only the models that key can use (the `/api/v1/models/user` catalog), and the signed-in dashboard shows the same list. Anonymous requests always receive the public catalog. | true | \ No newline at end of file diff --git a/docs/models/components/outcomeexit.mdx b/docs/models/components/outcomeexit.mdx index 428d204d0..4703060d6 100644 --- a/docs/models/components/outcomeexit.mdx +++ b/docs/models/components/outcomeexit.mdx @@ -6,6 +6,6 @@ title: "OutcomeExit" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `ExitCode` | `int64` | ✅ | N/A | -| `Type` | [components.TypeExit](../../models/components/typeexit.mdx) | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `ExitCode` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.TypeExit](../../models/components/typeexit.mdx) | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outcometimeout.mdx b/docs/models/components/outcometimeout.mdx index 395651cd4..8b5a623f8 100644 --- a/docs/models/components/outcometimeout.mdx +++ b/docs/models/components/outcometimeout.mdx @@ -6,5 +6,5 @@ title: "OutcomeTimeout" | Field | Type | Required | Description | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Type` | [components.TypeTimeout](../../models/components/typetimeout.mdx) | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | [components.TypeTimeout](../../models/components/typetimeout.mdx) | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputadvisorservertoolitem.mdx b/docs/models/components/outputadvisorservertoolitem.mdx index 1e26be575..ddbedd13f 100644 --- a/docs/models/components/outputadvisorservertoolitem.mdx +++ b/docs/models/components/outputadvisorservertoolitem.mdx @@ -9,11 +9,11 @@ An openrouter:advisor server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Advice` | `*string` | ➖ | The advisor model's response (the advice text returned to the executor). | | -| `Error` | `*string` | ➖ | Error message when the advisor call did not produce advice. Set together with `status: 'failed'` on the terminal item. | | -| `ID` | `*string` | ➖ | N/A | | -| `InstanceName` | `*string` | ➖ | Provider-safe function name of the specific advisor instance that produced this item (e.g. `openrouter_advisor__1`). Present only when more than one advisor tool is configured; omitted for the default single advisor. Echo this field back unchanged so the advisor's cross-request memory stays namespaced to the correct instance. This identity is positional: it is derived from the index of the advisor entry in the request `tools` array, so clients must keep the order of advisor tool entries stable across requests in a conversation. Reordering or inserting advisor entries shifts these names and causes each advisor's cross-request memory to be attributed to the wrong instance. | openrouter_advisor__1 | -| `Model` | `*string` | ➖ | Slug of the advisor model that was consulted. | | -| `Prompt` | `*string` | ➖ | The prompt the executor sent to the advisor. | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputAdvisorServerToolItemType](../../models/components/outputadvisorservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Advice` | `*string` | :heavy_minus_sign: | The advisor model's response (the advice text returned to the executor). | | +| `Error` | `*string` | :heavy_minus_sign: | Error message when the advisor call did not produce advice. Set together with `status: 'failed'` on the terminal item. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `InstanceName` | `*string` | :heavy_minus_sign: | Provider-safe function name of the specific advisor instance that produced this item (e.g. `openrouter_advisor__1`). Present only when more than one advisor tool is configured; omitted for the default single advisor. Echo this field back unchanged so the advisor's cross-request memory stays namespaced to the correct instance. This identity is positional: it is derived from the index of the advisor entry in the request `tools` array, so clients must keep the order of advisor tool entries stable across requests in a conversation. Reordering or inserting advisor entries shifts these names and causes each advisor's cross-request memory to be attributed to the wrong instance. | openrouter_advisor__1 | +| `Model` | `*string` | :heavy_minus_sign: | Slug of the advisor model that was consulted. | | +| `Prompt` | `*string` | :heavy_minus_sign: | The prompt the executor sent to the advisor. | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputAdvisorServerToolItemType](../../models/components/outputadvisorservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputapplypatchcallitem.mdx b/docs/models/components/outputapplypatchcallitem.mdx index e5b5a4424..fba577351 100644 --- a/docs/models/components/outputapplypatchcallitem.mdx +++ b/docs/models/components/outputapplypatchcallitem.mdx @@ -9,8 +9,8 @@ A native `apply_patch_call` output item matching OpenAI's Responses API shape. E | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Operation` | [components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | ✅ | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | -| `Status` | [components.ApplyPatchCallStatus](../../models/components/applypatchcallstatus.mdx) | ✅ | Lifecycle state of an `apply_patch_call` output item. | completed | -| `Type` | [components.OutputApplyPatchCallItemType](../../models/components/outputapplypatchcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Operation` | [components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | :heavy_check_mark: | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | +| `Status` | [components.ApplyPatchCallStatus](../../models/components/applypatchcallstatus.mdx) | :heavy_check_mark: | Lifecycle state of an `apply_patch_call` output item. | completed | +| `Type` | [components.OutputApplyPatchCallItemType](../../models/components/outputapplypatchcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputapplypatchservertoolitem.mdx b/docs/models/components/outputapplypatchservertoolitem.mdx index b3dac23b2..cb6c958d8 100644 --- a/docs/models/components/outputapplypatchservertoolitem.mdx +++ b/docs/models/components/outputapplypatchservertoolitem.mdx @@ -9,9 +9,9 @@ An openrouter:apply_patch server tool output item. The turn halts when validatio | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `*string` | ➖ | N/A | | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `Operation` | [*components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | ➖ | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputApplyPatchServerToolItemType](../../models/components/outputapplypatchservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `*string` | :heavy_minus_sign: | N/A | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Operation` | [*components.ApplyPatchCallOperation](../../models/components/applypatchcalloperation.mdx) | :heavy_minus_sign: | The patch operation requested by an `apply_patch_call`. `create_file` and `update_file` carry a V4A diff; `delete_file` omits it. | \{
"diff": "@@ function main() \{\n+ console.log(\"hi\");\n }",
"path": "/src/main.ts",
"type": "update_file"
} | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputApplyPatchServerToolItemType](../../models/components/outputapplypatchservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputarmorblockeditem.mdx b/docs/models/components/outputarmorblockeditem.mdx index 9de007395..11a967194 100644 --- a/docs/models/components/outputarmorblockeditem.mdx +++ b/docs/models/components/outputarmorblockeditem.mdx @@ -9,12 +9,12 @@ A client tool call that OpenRouter Armor blocked. Emitted in place of the call w | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | The arguments exactly as the model wrote them. | -| `CallID` | `string` | ✅ | The call id the model chose. Use it to find this call in `safeguard_results`. | -| `Explanation` | `string` | ✅ | The rule that blocked the call, in the same `[Rule Name]` form as `safeguard_results`. | -| `ID` | `string` | ✅ | N/A | -| `Name` | `string` | ✅ | The name of the tool the model called. | -| `Namespace` | `*string` | ➖ | The namespace the tool belongs to, for namespaced tools such as MCP. Absent for a plain function tool. | -| `Reason` | `string` | ✅ | The error text the model received as the result of this call. Sending this item back replays that text to the model. | -| `Status` | [components.OutputArmorBlockedItemStatus](../../models/components/outputarmorblockeditemstatus.mdx) | ✅ | N/A | -| `Type` | [components.OutputArmorBlockedItemType](../../models/components/outputarmorblockeditemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | The arguments exactly as the model wrote them. | +| `CallID` | `string` | :heavy_check_mark: | The call id the model chose. Use it to find this call in `safeguard_results`. | +| `Explanation` | `string` | :heavy_check_mark: | The rule that blocked the call, in the same `[Rule Name]` form as `safeguard_results`. | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | The name of the tool the model called. | +| `Namespace` | `*string` | :heavy_minus_sign: | The namespace the tool belongs to, for namespaced tools such as MCP. Absent for a plain function tool. | +| `Reason` | `string` | :heavy_check_mark: | The error text the model received as the result of this call. Sending this item back replays that text to the model. | +| `Status` | [components.OutputArmorBlockedItemStatus](../../models/components/outputarmorblockeditemstatus.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.OutputArmorBlockedItemType](../../models/components/outputarmorblockeditemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputbashservertoolitem.mdx b/docs/models/components/outputbashservertoolitem.mdx index 255fd99f9..35ef9e315 100644 --- a/docs/models/components/outputbashservertoolitem.mdx +++ b/docs/models/components/outputbashservertoolitem.mdx @@ -9,15 +9,15 @@ An openrouter:bash server tool output item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | optionalnullable.OptionalNullable[`string`] | ➖ | The raw tool-call arguments string as emitted by the model. | | -| `CallID` | optionalnullable.OptionalNullable[`string`] | ➖ | The model-generated tool call id from the originating turn. | | -| `Command` | `*string` | ➖ | N/A | | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | -| `Error` | `*string` | ➖ | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'failed'`; absent on a successful call. A non-zero `exitCode` is a command failure, not a tool failure. | | -| `ExitCode` | `*int64` | ➖ | N/A | | -| `Files` | [][components.OutputBashServerToolItemFile](../../models/components/outputbashservertoolitemfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Stderr` | `*string` | ➖ | N/A | | -| `Stdout` | `*string` | ➖ | N/A | | -| `Type` | [components.OutputBashServerToolItemTypeOpenrouterBash](../../models/components/outputbashservertoolitemtypeopenrouterbash.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The raw tool-call arguments string as emitted by the model. | | +| `CallID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The model-generated tool call id from the originating turn. | | +| `Command` | `*string` | :heavy_minus_sign: | N/A | | +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'failed'`; absent on a successful call. A non-zero `exitCode` is a command failure, not a tool failure. | | +| `ExitCode` | `*int64` | :heavy_minus_sign: | N/A | | +| `Files` | [][components.OutputBashServerToolItemFile](../../models/components/outputbashservertoolitemfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Stderr` | `*string` | :heavy_minus_sign: | N/A | | +| `Stdout` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputBashServerToolItemTypeOpenrouterBash](../../models/components/outputbashservertoolitemtypeopenrouterbash.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputbashservertoolitemfile.mdx b/docs/models/components/outputbashservertoolitemfile.mdx index f114a0ef6..74172357e 100644 --- a/docs/models/components/outputbashservertoolitemfile.mdx +++ b/docs/models/components/outputbashservertoolitemfile.mdx @@ -6,9 +6,9 @@ title: "OutputBashServerToolItemFile" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.OutputBashServerToolItemTypeContainerFileCitation](../../models/components/outputbashservertoolitemtypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.OutputBashServerToolItemTypeContainerFileCitation](../../models/components/outputbashservertoolitemtypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputbrowseruseservertoolitem.mdx b/docs/models/components/outputbrowseruseservertoolitem.mdx index 73b2a3cc0..25673e0fa 100644 --- a/docs/models/components/outputbrowseruseservertoolitem.mdx +++ b/docs/models/components/outputbrowseruseservertoolitem.mdx @@ -9,8 +9,8 @@ An openrouter:browser_use server tool output item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Action` | `*string` | ➖ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `ScreenshotB64` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputBrowserUseServerToolItemType](../../models/components/outputbrowseruseservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | `*string` | :heavy_minus_sign: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `ScreenshotB64` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputBrowserUseServerToolItemType](../../models/components/outputbrowseruseservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputcodeinterpretercallitem.mdx b/docs/models/components/outputcodeinterpretercallitem.mdx index 6ef851a52..58d04ea03 100644 --- a/docs/models/components/outputcodeinterpretercallitem.mdx +++ b/docs/models/components/outputcodeinterpretercallitem.mdx @@ -9,10 +9,10 @@ A code interpreter execution call with outputs | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Code` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ContainerID` | `*string` | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Outputs` | optionalnullable.OptionalNullable[[][components.OutputCodeInterpreterCallItemOutput](../../models/components/outputcodeinterpretercallitemoutput.mdx)] | ➖ | N/A | | -| `Status` | [components.OutputCodeInterpreterCallItemStatus](../../models/components/outputcodeinterpretercallitemstatus.mdx) | ✅ | N/A | | -| `Type` | [components.OutputCodeInterpreterCallItemType](../../models/components/outputcodeinterpretercallitemtype.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | \ No newline at end of file +| `Code` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ContainerID` | `*string` | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Outputs` | optionalnullable.OptionalNullable[[][components.OutputCodeInterpreterCallItemOutput](../../models/components/outputcodeinterpretercallitemoutput.mdx)] | :heavy_minus_sign: | N/A | | +| `Status` | [components.OutputCodeInterpreterCallItemStatus](../../models/components/outputcodeinterpretercallitemstatus.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.OutputCodeInterpreterCallItemType](../../models/components/outputcodeinterpretercallitemtype.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | \ No newline at end of file diff --git a/docs/models/components/outputcodeinterpreterservertoolitem.mdx b/docs/models/components/outputcodeinterpreterservertoolitem.mdx index 1ca5247dc..43f758a57 100644 --- a/docs/models/components/outputcodeinterpreterservertoolitem.mdx +++ b/docs/models/components/outputcodeinterpreterservertoolitem.mdx @@ -9,11 +9,11 @@ An openrouter:code_interpreter server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Code` | `*string` | ➖ | N/A | | -| `ExitCode` | `*int64` | ➖ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Language` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Stderr` | `*string` | ➖ | N/A | | -| `Stdout` | `*string` | ➖ | N/A | | -| `Type` | [components.OutputCodeInterpreterServerToolItemType](../../models/components/outputcodeinterpreterservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Code` | `*string` | :heavy_minus_sign: | N/A | | +| `ExitCode` | `*int64` | :heavy_minus_sign: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Language` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Stderr` | `*string` | :heavy_minus_sign: | N/A | | +| `Stdout` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputCodeInterpreterServerToolItemType](../../models/components/outputcodeinterpreterservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputcomputercallitem.mdx b/docs/models/components/outputcomputercallitem.mdx index c24b78165..f63420774 100644 --- a/docs/models/components/outputcomputercallitem.mdx +++ b/docs/models/components/outputcomputercallitem.mdx @@ -6,9 +6,9 @@ title: "OutputComputerCallItem" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Action` | `any` | ➖ | N/A | -| `CallID` | `string` | ✅ | N/A | -| `ID` | `*string` | ➖ | N/A | -| `PendingSafetyChecks` | [][components.PendingSafetyCheck](../../models/components/pendingsafetycheck.mdx) | ✅ | N/A | -| `Status` | [components.OutputComputerCallItemStatus](../../models/components/outputcomputercallitemstatus.mdx) | ✅ | N/A | -| `Type` | [components.OutputComputerCallItemType](../../models/components/outputcomputercallitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Action` | `any` | :heavy_minus_sign: | N/A | +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `ID` | `*string` | :heavy_minus_sign: | N/A | +| `PendingSafetyChecks` | [][components.PendingSafetyCheck](../../models/components/pendingsafetycheck.mdx) | :heavy_check_mark: | N/A | +| `Status` | [components.OutputComputerCallItemStatus](../../models/components/outputcomputercallitemstatus.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.OutputComputerCallItemType](../../models/components/outputcomputercallitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputcustomtoolcallitem.mdx b/docs/models/components/outputcustomtoolcallitem.mdx index 018f82a9f..c6672c38b 100644 --- a/docs/models/components/outputcustomtoolcallitem.mdx +++ b/docs/models/components/outputcustomtoolcallitem.mdx @@ -9,11 +9,11 @@ A call to a custom (freeform-grammar) tool created by the model — distinct fro | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Input` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | [*components.OutputCustomToolCallItemStatus](../../models/components/outputcustomtoolcallitemstatus.mdx) | ➖ | N/A | | -| `Type` | [components.OutputCustomToolCallItemType](../../models/components/outputcustomtoolcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Input` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | [*components.OutputCustomToolCallItemStatus](../../models/components/outputcustomtoolcallitemstatus.mdx) | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputCustomToolCallItemType](../../models/components/outputcustomtoolcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputdatetimeitem.mdx b/docs/models/components/outputdatetimeitem.mdx index bbe03919a..c6ee2019e 100644 --- a/docs/models/components/outputdatetimeitem.mdx +++ b/docs/models/components/outputdatetimeitem.mdx @@ -9,9 +9,9 @@ An openrouter:datetime server tool output item | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Datetime` | `string` | ✅ | ISO 8601 datetime string | | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Timezone` | `string` | ✅ | IANA timezone name | | -| `Type` | [components.OutputDatetimeItemType](../../models/components/outputdatetimeitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Datetime` | `string` | :heavy_check_mark: | ISO 8601 datetime string | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Timezone` | `string` | :heavy_check_mark: | IANA timezone name | | +| `Type` | [components.OutputDatetimeItemType](../../models/components/outputdatetimeitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputfilesearchcallitem.mdx b/docs/models/components/outputfilesearchcallitem.mdx index 038cf5977..7ec3d6c62 100644 --- a/docs/models/components/outputfilesearchcallitem.mdx +++ b/docs/models/components/outputfilesearchcallitem.mdx @@ -6,7 +6,7 @@ title: "OutputFileSearchCallItem" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | | -| `Queries` | []`string` | ✅ | N/A | | -| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputFileSearchCallItemType](../../models/components/outputfilesearchcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Queries` | []`string` | :heavy_check_mark: | N/A | | +| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputFileSearchCallItemType](../../models/components/outputfilesearchcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputfilesearchservertoolitem.mdx b/docs/models/components/outputfilesearchservertoolitem.mdx index 891f28346..74dcebbee 100644 --- a/docs/models/components/outputfilesearchservertoolitem.mdx +++ b/docs/models/components/outputfilesearchservertoolitem.mdx @@ -9,7 +9,7 @@ An openrouter:file_search server tool output item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `ID` | `*string` | ➖ | N/A | | -| `Queries` | []`string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputFileSearchServerToolItemType](../../models/components/outputfilesearchservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Queries` | []`string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputFileSearchServerToolItemType](../../models/components/outputfilesearchservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputfilesservertoolitem.mdx b/docs/models/components/outputfilesservertoolitem.mdx index 7e33f0a35..e960931cb 100644 --- a/docs/models/components/outputfilesservertoolitem.mdx +++ b/docs/models/components/outputfilesservertoolitem.mdx @@ -9,13 +9,13 @@ An openrouter:files server tool output item | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Arguments` | optionalnullable.OptionalNullable[`string`] | ➖ | The raw tool-call arguments string as emitted by the model. | | -| `CallID` | optionalnullable.OptionalNullable[`string`] | ➖ | The model-generated tool call id from the originating turn. | | -| `Error` | `*string` | ➖ | Error message when the file operation failed. | | -| `FileID` | `*string` | ➖ | The target file id supplied in the tool-call arguments. | | -| `Filename` | `*string` | ➖ | The target filename supplied in the tool-call arguments. | | -| `ID` | `*string` | ➖ | N/A | | -| `Operation` | `*string` | ➖ | The file operation performed (list, read, write, or edit). | | -| `Result` | `*string` | ➖ | JSON-serialized result of the file operation. | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputFilesServerToolItemType](../../models/components/outputfilesservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The raw tool-call arguments string as emitted by the model. | | +| `CallID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The model-generated tool call id from the originating turn. | | +| `Error` | `*string` | :heavy_minus_sign: | Error message when the file operation failed. | | +| `FileID` | `*string` | :heavy_minus_sign: | The target file id supplied in the tool-call arguments. | | +| `Filename` | `*string` | :heavy_minus_sign: | The target filename supplied in the tool-call arguments. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Operation` | `*string` | :heavy_minus_sign: | The file operation performed (list, read, write, or edit). | | +| `Result` | `*string` | :heavy_minus_sign: | JSON-serialized result of the file operation. | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputFilesServerToolItemType](../../models/components/outputfilesservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputfunctioncallitem.mdx b/docs/models/components/outputfunctioncallitem.mdx index 3a42a9e54..a71c13427 100644 --- a/docs/models/components/outputfunctioncallitem.mdx +++ b/docs/models/components/outputfunctioncallitem.mdx @@ -6,13 +6,13 @@ title: "OutputFunctionCallItem" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `string` | ✅ | N/A | | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | [*components.OutputFunctionCallItemStatusUnion](../../models/components/outputfunctioncallitemstatusunion.mdx) | ➖ | N/A | | -| `Type` | [components.OutputFunctionCallItemType](../../models/components/outputfunctioncallitemtype.mdx) | ✅ | N/A | | -| `SubagentID` | `*string` | ➖ | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | -| `SubagentItems` | [][components.OutputFunctionCallItemSubagentItem](../../models/components/outputfunctioncallitemsubagentitem.mdx) | ➖ | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | [*components.OutputFunctionCallItemStatusUnion](../../models/components/outputfunctioncallitemstatusunion.mdx) | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputFunctionCallItemType](../../models/components/outputfunctioncallitemtype.mdx) | :heavy_check_mark: | N/A | | +| `SubagentID` | `*string` | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. String id that matches the `call_id` of the `openrouter:subagent` server tool call that spawned the subagent. Present on every `function_call` item the subagent projects; absent on ordinary function calls. | | +| `SubagentItems` | [][components.OutputFunctionCallItemSubagentItem](../../models/components/outputfunctioncallitemsubagentitem.mdx) | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. The subagent's output items produced on this turn. Treat this as an opaque object; you must replay it in the request so that the subagent can continue execution of the tool with the same context. If a subagent created multiple parallel tool calls, only the first tool call will have this field. The other tool calls will only have `subagent_id`. Present only if the tool call originates from a subagent spawned by the `openrouter:subagent` server tool. | | \ No newline at end of file diff --git a/docs/models/components/outputfunctioncallitemsubagentitem.mdx b/docs/models/components/outputfunctioncallitemsubagentitem.mdx index ea9104111..2f3773d6f 100644 --- a/docs/models/components/outputfunctioncallitemsubagentitem.mdx +++ b/docs/models/components/outputfunctioncallitemsubagentitem.mdx @@ -6,5 +6,5 @@ title: "OutputFunctionCallItemSubagentItem" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputfusionservertoolitem.mdx b/docs/models/components/outputfusionservertoolitem.mdx index 43e7d9c82..5b48e67ff 100644 --- a/docs/models/components/outputfusionservertoolitem.mdx +++ b/docs/models/components/outputfusionservertoolitem.mdx @@ -9,12 +9,12 @@ An openrouter:fusion server tool output item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Analysis` | [*components.FusionAnalysisResult](../../models/components/fusionanalysisresult.mdx) | ➖ | Structured analysis produced by the fusion analyst model. | \{
"blind_spots": [
"No model considered the impact on existing API consumers."
],
"consensus": [
"All panel models agree the request is asking for a concise summary."
],
"contradictions": [
\{
"stances": [
\{
"model": "openai/gpt-5",
"stance": "Favors an incremental rollout."
},
\{
"model": "anthropic/claude-sonnet-4.5",
"stance": "Favors a single coordinated migration."
}
],
"topic": "Recommended approach"
}
],
"partial_coverage": [
\{
"models": [
"openai/gpt-5"
],
"point": "Only one model addressed the rollback strategy."
}
],
"unique_insights": [
\{
"insight": "Highlighted a backwards-compatibility risk the other models missed.",
"model": "anthropic/claude-sonnet-4.5"
}
]
} | -| `Error` | `*string` | ➖ | Error message when the fusion run did not produce an analysis result. | | -| `FailedModels` | [][components.FailedModel](../../models/components/failedmodel.mdx) | ➖ | Models that were requested as part of the analysis panel but did not produce a response. Present when at least one requested analysis model failed. On a completed item the fusion result is still usable but was produced from a degraded panel; on a failed item it lists the panels that failed before the run stopped, so the caller can see which models were attempted even though no analysis was produced. | | -| `FailureReason` | `*string` | ➖ | Typed failure reason when the fusion run failed. Possible values include: all_panels_failed, insufficient_credits, rate_limited, invalid_model, judge_not_valid_json, judge_schema_mismatch, judge_upstream_error, judge_empty_completion. The four analysis-stage codes keep their pre-rename `judge_` spelling so existing consumers keep matching. The consumer-cancellation code is `cancelled`. | | -| `ID` | `*string` | ➖ | N/A | | -| `Responses` | [][components.OutputFusionServerToolItemResponse](../../models/components/outputfusionservertoolitemresponse.mdx) | ➖ | Analysis models that produced a response in this fusion run, with each model's full panel content. | | -| `Sources` | [][components.FusionSource](../../models/components/fusionsource.mdx) | ➖ | Web pages the analysis panels and analyst retrieved via web search during this fusion run, deduplicated by URL across the whole run. Present when at least one model cited a source. | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputFusionServerToolItemType](../../models/components/outputfusionservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Analysis` | [*components.FusionAnalysisResult](../../models/components/fusionanalysisresult.mdx) | :heavy_minus_sign: | Structured analysis produced by the fusion analyst model. | \{
"blind_spots": [
"No model considered the impact on existing API consumers."
],
"consensus": [
"All panel models agree the request is asking for a concise summary."
],
"contradictions": [
\{
"stances": [
\{
"model": "openai/gpt-5",
"stance": "Favors an incremental rollout."
},
\{
"model": "anthropic/claude-sonnet-4.5",
"stance": "Favors a single coordinated migration."
}
],
"topic": "Recommended approach"
}
],
"partial_coverage": [
\{
"models": [
"openai/gpt-5"
],
"point": "Only one model addressed the rollback strategy."
}
],
"unique_insights": [
\{
"insight": "Highlighted a backwards-compatibility risk the other models missed.",
"model": "anthropic/claude-sonnet-4.5"
}
]
} | +| `Error` | `*string` | :heavy_minus_sign: | Error message when the fusion run did not produce an analysis result. | | +| `FailedModels` | [][components.FailedModel](../../models/components/failedmodel.mdx) | :heavy_minus_sign: | Models that were requested as part of the analysis panel but did not produce a response. Present when at least one requested analysis model failed. On a completed item the fusion result is still usable but was produced from a degraded panel; on a failed item it lists the panels that failed before the run stopped, so the caller can see which models were attempted even though no analysis was produced. | | +| `FailureReason` | `*string` | :heavy_minus_sign: | Typed failure reason when the fusion run failed. Possible values include: all_panels_failed, insufficient_credits, rate_limited, invalid_model, judge_not_valid_json, judge_schema_mismatch, judge_upstream_error, judge_empty_completion. The four analysis-stage codes keep their pre-rename `judge_` spelling so existing consumers keep matching. The consumer-cancellation code is `cancelled`. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Responses` | [][components.OutputFusionServerToolItemResponse](../../models/components/outputfusionservertoolitemresponse.mdx) | :heavy_minus_sign: | Analysis models that produced a response in this fusion run, with each model's full panel content. | | +| `Sources` | [][components.FusionSource](../../models/components/fusionsource.mdx) | :heavy_minus_sign: | Web pages the analysis panels and analyst retrieved via web search during this fusion run, deduplicated by URL across the whole run. Present when at least one model cited a source. | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputFusionServerToolItemType](../../models/components/outputfusionservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputfusionservertoolitemresponse.mdx b/docs/models/components/outputfusionservertoolitemresponse.mdx index fcf749faf..2c0dd46f2 100644 --- a/docs/models/components/outputfusionservertoolitemresponse.mdx +++ b/docs/models/components/outputfusionservertoolitemresponse.mdx @@ -6,5 +6,5 @@ title: "OutputFusionServerToolItemResponse" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Content` | `*string` | ➖ | N/A | -| `Model` | `string` | ✅ | N/A | \ No newline at end of file +| `Content` | `*string` | :heavy_minus_sign: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputimagegenerationcallitem.mdx b/docs/models/components/outputimagegenerationcallitem.mdx index e981d59c9..9bd9a25d8 100644 --- a/docs/models/components/outputimagegenerationcallitem.mdx +++ b/docs/models/components/outputimagegenerationcallitem.mdx @@ -6,8 +6,8 @@ title: "OutputImageGenerationCallItem" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | N/A | | -| `Result` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Status` | [components.ImageGenerationStatus](../../models/components/imagegenerationstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputImageGenerationCallItemType](../../models/components/outputimagegenerationcallitemtype.mdx) | ✅ | N/A | | -| `Prompt` | `*string` | ➖ | The prompt (possibly rewritten) that the image was generated from. | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Result` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Status` | [components.ImageGenerationStatus](../../models/components/imagegenerationstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputImageGenerationCallItemType](../../models/components/outputimagegenerationcallitemtype.mdx) | :heavy_check_mark: | N/A | | +| `Prompt` | `*string` | :heavy_minus_sign: | The prompt (possibly rewritten) that the image was generated from. | | \ No newline at end of file diff --git a/docs/models/components/outputimagegenerationservertoolitem.mdx b/docs/models/components/outputimagegenerationservertoolitem.mdx index 954fded85..c6bb28069 100644 --- a/docs/models/components/outputimagegenerationservertoolitem.mdx +++ b/docs/models/components/outputimagegenerationservertoolitem.mdx @@ -9,12 +9,12 @@ An openrouter:image_generation server tool output item | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `ImageB64` | `*string` | ➖ | N/A | | -| `ImageURL` | `*string` | ➖ | N/A | | -| `Prompt` | `*string` | ➖ | The prompt (possibly rewritten) that the image was generated from. | | -| `Result` | optionalnullable.OptionalNullable[`string`] | ➖ | The generated image as a base64-encoded string or URL, matching OpenAI image_generation_call format | | -| `RevisedPrompt` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputImageGenerationServerToolItemType](../../models/components/outputimagegenerationservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `ImageB64` | `*string` | :heavy_minus_sign: | N/A | | +| `ImageURL` | `*string` | :heavy_minus_sign: | N/A | | +| `Prompt` | `*string` | :heavy_minus_sign: | The prompt (possibly rewritten) that the image was generated from. | | +| `Result` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The generated image as a base64-encoded string or URL, matching OpenAI image_generation_call format | | +| `RevisedPrompt` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputImageGenerationServerToolItemType](../../models/components/outputimagegenerationservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputitemapplypatchcall.mdx b/docs/models/components/outputitemapplypatchcall.mdx index d5c69e9a7..4c62e74ca 100644 --- a/docs/models/components/outputitemapplypatchcall.mdx +++ b/docs/models/components/outputitemapplypatchcall.mdx @@ -6,9 +6,9 @@ title: "OutputItemApplyPatchCall" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `CallID` | `string` | ✅ | N/A | -| `CreatedBy` | `*string` | ➖ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Operation` | [components.Operation](../../models/components/operation.mdx) | ✅ | N/A | -| `Status` | [components.OutputItemApplyPatchCallStatus](../../models/components/outputitemapplypatchcallstatus.mdx) | ✅ | N/A | -| `Type` | [components.OutputItemApplyPatchCallType](../../models/components/outputitemapplypatchcalltype.mdx) | ✅ | N/A | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `CreatedBy` | `*string` | :heavy_minus_sign: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Operation` | [components.Operation](../../models/components/operation.mdx) | :heavy_check_mark: | N/A | +| `Status` | [components.OutputItemApplyPatchCallStatus](../../models/components/outputitemapplypatchcallstatus.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.OutputItemApplyPatchCallType](../../models/components/outputitemapplypatchcalltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputitemcodeinterpretercall.mdx b/docs/models/components/outputitemcodeinterpretercall.mdx index cc95c98cd..de3d8dfae 100644 --- a/docs/models/components/outputitemcodeinterpretercall.mdx +++ b/docs/models/components/outputitemcodeinterpretercall.mdx @@ -6,10 +6,10 @@ title: "OutputItemCodeInterpreterCall" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Code` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ContainerID` | `*string` | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Outputs` | optionalnullable.OptionalNullable[[][components.OutputItemCodeInterpreterCallOutput](../../models/components/outputitemcodeinterpretercalloutput.mdx)] | ➖ | N/A | | -| `Status` | [components.OutputItemCodeInterpreterCallStatus](../../models/components/outputitemcodeinterpretercallstatus.mdx) | ✅ | N/A | | -| `Type` | [components.OutputItemCodeInterpreterCallType](../../models/components/outputitemcodeinterpretercalltype.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"code": "print(\"hello\")",
"id": "ci_abc123",
"outputs": [
\{
"logs": "hello\n",
"type": "logs"
}
],
"status": "completed",
"type": "code_interpreter_call"
} | \ No newline at end of file +| `Code` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ContainerID` | `*string` | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Outputs` | optionalnullable.OptionalNullable[[][components.OutputItemCodeInterpreterCallOutput](../../models/components/outputitemcodeinterpretercalloutput.mdx)] | :heavy_minus_sign: | N/A | | +| `Status` | [components.OutputItemCodeInterpreterCallStatus](../../models/components/outputitemcodeinterpretercallstatus.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.OutputItemCodeInterpreterCallType](../../models/components/outputitemcodeinterpretercalltype.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"code": "print(\"hello\")",
"id": "ci_abc123",
"outputs": [
\{
"logs": "hello\n",
"type": "logs"
}
],
"status": "completed",
"type": "code_interpreter_call"
} | \ No newline at end of file diff --git a/docs/models/components/outputitemcustomtoolcall.mdx b/docs/models/components/outputitemcustomtoolcall.mdx index faa5250e8..d8aa4dc82 100644 --- a/docs/models/components/outputitemcustomtoolcall.mdx +++ b/docs/models/components/outputitemcustomtoolcall.mdx @@ -6,11 +6,11 @@ title: "OutputItemCustomToolCall" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Input` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | [*components.OutputItemCustomToolCallStatus](../../models/components/outputitemcustomtoolcallstatus.mdx) | ➖ | N/A | | -| `Type` | [components.OutputItemCustomToolCallType](../../models/components/outputitemcustomtoolcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Input` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | [*components.OutputItemCustomToolCallStatus](../../models/components/outputitemcustomtoolcallstatus.mdx) | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputItemCustomToolCallType](../../models/components/outputitemcustomtoolcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputitemfilesearchcall.mdx b/docs/models/components/outputitemfilesearchcall.mdx index 27056e4c2..6f0348b5c 100644 --- a/docs/models/components/outputitemfilesearchcall.mdx +++ b/docs/models/components/outputitemfilesearchcall.mdx @@ -6,7 +6,7 @@ title: "OutputItemFileSearchCall" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | | -| `Queries` | []`string` | ✅ | N/A | | -| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputItemFileSearchCallType](../../models/components/outputitemfilesearchcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Queries` | []`string` | :heavy_check_mark: | N/A | | +| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputItemFileSearchCallType](../../models/components/outputitemfilesearchcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputitemfunctioncall.mdx b/docs/models/components/outputitemfunctioncall.mdx index e90ac708e..fe943658a 100644 --- a/docs/models/components/outputitemfunctioncall.mdx +++ b/docs/models/components/outputitemfunctioncall.mdx @@ -6,11 +6,11 @@ title: "OutputItemFunctionCall" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Arguments` | `string` | ✅ | N/A | | -| `Async` | `*bool` | ➖ | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Namespace` | `*string` | ➖ | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | -| `Status` | [*components.OutputItemFunctionCallStatusUnion](../../models/components/outputitemfunctioncallstatusunion.mdx) | ➖ | N/A | | -| `Type` | [components.OutputItemFunctionCallType](../../models/components/outputitemfunctioncalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | True when the model called a tool declared with `async: true` and may continue its turn before the output is returned. Return the result in a later request as a `function_call_output` with this `call_id`. | true | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Namespace` | `*string` | :heavy_minus_sign: | Namespace qualifier for tools registered as part of a namespace tool group (e.g. an MCP server) | | +| `Status` | [*components.OutputItemFunctionCallStatusUnion](../../models/components/outputitemfunctioncallstatusunion.mdx) | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputItemFunctionCallType](../../models/components/outputitemfunctioncalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputitemimagegenerationcall.mdx b/docs/models/components/outputitemimagegenerationcall.mdx index 2785c635d..5f80bfc78 100644 --- a/docs/models/components/outputitemimagegenerationcall.mdx +++ b/docs/models/components/outputitemimagegenerationcall.mdx @@ -6,7 +6,7 @@ title: "OutputItemImageGenerationCall" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | N/A | | -| `Result` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Status` | [components.ImageGenerationStatus](../../models/components/imagegenerationstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputItemImageGenerationCallType](../../models/components/outputitemimagegenerationcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Result` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Status` | [components.ImageGenerationStatus](../../models/components/imagegenerationstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputItemImageGenerationCallType](../../models/components/outputitemimagegenerationcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputitemreasoning.mdx b/docs/models/components/outputitemreasoning.mdx index f94ebdb64..73504d2cb 100644 --- a/docs/models/components/outputitemreasoning.mdx +++ b/docs/models/components/outputitemreasoning.mdx @@ -6,9 +6,9 @@ title: "OutputItemReasoning" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx) | ➖ | N/A | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Status` | [*components.OutputItemReasoningStatusUnion](../../models/components/outputitemreasoningstatusunion.mdx) | ➖ | N/A | -| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | -| `Type` | [components.OutputItemReasoningType](../../models/components/outputitemreasoningtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx) | :heavy_minus_sign: | N/A | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Status` | [*components.OutputItemReasoningStatusUnion](../../models/components/outputitemreasoningstatusunion.mdx) | :heavy_minus_sign: | N/A | +| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.OutputItemReasoningType](../../models/components/outputitemreasoningtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputitemwebsearchcall.mdx b/docs/models/components/outputitemwebsearchcall.mdx index 36745cf13..bd9471ba5 100644 --- a/docs/models/components/outputitemwebsearchcall.mdx +++ b/docs/models/components/outputitemwebsearchcall.mdx @@ -6,8 +6,8 @@ title: "OutputItemWebSearchCall" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [*components.OutputItemWebSearchCallActionUnion](../../models/components/outputitemwebsearchcallactionunion.mdx) | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputItemWebSearchCallTypeWebSearchCall](../../models/components/outputitemwebsearchcalltypewebsearchcall.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"action": \{
"query": "OpenAI API",
"type": "search"
},
"id": "search-abc123",
"status": "completed",
"type": "web_search_call"
} | \ No newline at end of file +| `Action` | [*components.OutputItemWebSearchCallActionUnion](../../models/components/outputitemwebsearchcallactionunion.mdx) | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputItemWebSearchCallTypeWebSearchCall](../../models/components/outputitemwebsearchcalltypewebsearchcall.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"action": \{
"query": "OpenAI API",
"type": "search"
},
"id": "search-abc123",
"status": "completed",
"type": "web_search_call"
} | \ No newline at end of file diff --git a/docs/models/components/outputitemwebsearchcallactionfindinpage.mdx b/docs/models/components/outputitemwebsearchcallactionfindinpage.mdx index baa51d90d..3e19a88b5 100644 --- a/docs/models/components/outputitemwebsearchcallactionfindinpage.mdx +++ b/docs/models/components/outputitemwebsearchcallactionfindinpage.mdx @@ -6,6 +6,6 @@ title: "OutputItemWebSearchCallActionFindInPage" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Pattern` | `string` | ✅ | N/A | -| `Type` | [components.OutputItemWebSearchCallTypeFindInPage](../../models/components/outputitemwebsearchcalltypefindinpage.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Pattern` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.OutputItemWebSearchCallTypeFindInPage](../../models/components/outputitemwebsearchcalltypefindinpage.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputitemwebsearchcallactionopenpage.mdx b/docs/models/components/outputitemwebsearchcallactionopenpage.mdx index b83771bb9..c3cbcb821 100644 --- a/docs/models/components/outputitemwebsearchcallactionopenpage.mdx +++ b/docs/models/components/outputitemwebsearchcallactionopenpage.mdx @@ -6,5 +6,5 @@ title: "OutputItemWebSearchCallActionOpenPage" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Type` | [components.OutputItemWebSearchCallTypeOpenPage](../../models/components/outputitemwebsearchcalltypeopenpage.mdx) | ✅ | N/A | -| `URL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `Type` | [components.OutputItemWebSearchCallTypeOpenPage](../../models/components/outputitemwebsearchcalltypeopenpage.mdx) | :heavy_check_mark: | N/A | +| `URL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputitemwebsearchcallactionsearch.mdx b/docs/models/components/outputitemwebsearchcallactionsearch.mdx index 69952e2aa..85374ce0f 100644 --- a/docs/models/components/outputitemwebsearchcallactionsearch.mdx +++ b/docs/models/components/outputitemwebsearchcallactionsearch.mdx @@ -6,7 +6,7 @@ title: "OutputItemWebSearchCallActionSearch" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Queries` | []`string` | ➖ | N/A | -| `Query` | `string` | ✅ | N/A | -| `Sources` | [][components.WebSearchSource](../../models/components/websearchsource.mdx) | ➖ | N/A | -| `Type` | [components.OutputItemWebSearchCallTypeSearch](../../models/components/outputitemwebsearchcalltypesearch.mdx) | ✅ | N/A | \ No newline at end of file +| `Queries` | []`string` | :heavy_minus_sign: | N/A | +| `Query` | `string` | :heavy_check_mark: | N/A | +| `Sources` | [][components.WebSearchSource](../../models/components/websearchsource.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.OutputItemWebSearchCallTypeSearch](../../models/components/outputitemwebsearchcalltypesearch.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputmcpservertoolitem.mdx b/docs/models/components/outputmcpservertoolitem.mdx index 2277b8c4a..bc7aa85c9 100644 --- a/docs/models/components/outputmcpservertoolitem.mdx +++ b/docs/models/components/outputmcpservertoolitem.mdx @@ -9,8 +9,8 @@ An openrouter:mcp server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `ID` | `*string` | ➖ | N/A | | -| `ServerLabel` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `ToolName` | `*string` | ➖ | N/A | | -| `Type` | [components.OutputMcpServerToolItemType](../../models/components/outputmcpservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `ServerLabel` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `ToolName` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputMcpServerToolItemType](../../models/components/outputmcpservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputmemoryservertoolitem.mdx b/docs/models/components/outputmemoryservertoolitem.mdx index 29479ffee..09b7e5ec3 100644 --- a/docs/models/components/outputmemoryservertoolitem.mdx +++ b/docs/models/components/outputmemoryservertoolitem.mdx @@ -9,9 +9,9 @@ An openrouter:memory server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Action` | [*components.ActionEnum](../../models/components/actionenum.mdx) | ➖ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Key` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputMemoryServerToolItemType](../../models/components/outputmemoryservertoolitemtype.mdx) | ✅ | N/A | | -| `Value` | `any` | ➖ | N/A | | \ No newline at end of file +| `Action` | [*components.ActionEnum](../../models/components/actionenum.mdx) | :heavy_minus_sign: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Key` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputMemoryServerToolItemType](../../models/components/outputmemoryservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | +| `Value` | `any` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputmessage.mdx b/docs/models/components/outputmessage.mdx index 72eb97e11..ce33cc76d 100644 --- a/docs/models/components/outputmessage.mdx +++ b/docs/models/components/outputmessage.mdx @@ -6,9 +6,9 @@ title: "OutputMessage" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.OutputMessageContent](../../models/components/outputmessagecontent.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Phase` | optionalnullable.OptionalNullable[[components.OutputMessagePhaseUnion](../../models/components/outputmessagephaseunion.mdx)] | ➖ | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | -| `Role` | [components.OutputMessageRole](../../models/components/outputmessagerole.mdx) | ✅ | N/A | -| `Status` | [*components.OutputMessageStatusUnion](../../models/components/outputmessagestatusunion.mdx) | ➖ | N/A | -| `Type` | [components.OutputMessageType](../../models/components/outputmessagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.OutputMessageContent](../../models/components/outputmessagecontent.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Phase` | optionalnullable.OptionalNullable[[components.OutputMessagePhaseUnion](../../models/components/outputmessagephaseunion.mdx)] | :heavy_minus_sign: | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | +| `Role` | [components.OutputMessageRole](../../models/components/outputmessagerole.mdx) | :heavy_check_mark: | N/A | +| `Status` | [*components.OutputMessageStatusUnion](../../models/components/outputmessagestatusunion.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.OutputMessageType](../../models/components/outputmessagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputmessageitem.mdx b/docs/models/components/outputmessageitem.mdx index 7c79b802a..4a1ee6034 100644 --- a/docs/models/components/outputmessageitem.mdx +++ b/docs/models/components/outputmessageitem.mdx @@ -9,9 +9,9 @@ An output message item | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Content` | [][components.OutputMessageItemContent](../../models/components/outputmessageitemcontent.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Phase` | optionalnullable.OptionalNullable[[components.OutputMessageItemPhaseUnion](../../models/components/outputmessageitemphaseunion.mdx)] | ➖ | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | -| `Role` | [components.OutputMessageItemRole](../../models/components/outputmessageitemrole.mdx) | ✅ | N/A | -| `Status` | [*components.OutputMessageItemStatusUnion](../../models/components/outputmessageitemstatusunion.mdx) | ➖ | N/A | -| `Type` | [components.OutputMessageItemType](../../models/components/outputmessageitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][components.OutputMessageItemContent](../../models/components/outputmessageitemcontent.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Phase` | optionalnullable.OptionalNullable[[components.OutputMessageItemPhaseUnion](../../models/components/outputmessageitemphaseunion.mdx)] | :heavy_minus_sign: | The phase of an assistant message. Use `commentary` for an intermediate assistant message and `final_answer` for the final assistant message. For follow-up requests with models like `gpt-5.3-codex` and later, preserve and resend phase on all assistant messages. Omitting it can degrade performance. Not used for user messages. | +| `Role` | [components.OutputMessageItemRole](../../models/components/outputmessageitemrole.mdx) | :heavy_check_mark: | N/A | +| `Status` | [*components.OutputMessageItemStatusUnion](../../models/components/outputmessageitemstatusunion.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.OutputMessageItemType](../../models/components/outputmessageitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputreasoningitem.mdx b/docs/models/components/outputreasoningitem.mdx index be15ec38a..05843b636 100644 --- a/docs/models/components/outputreasoningitem.mdx +++ b/docs/models/components/outputreasoningitem.mdx @@ -9,11 +9,11 @@ An output item containing reasoning | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | ➖ | N/A | | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [*components.OutputReasoningItemStatusUnion](../../models/components/outputreasoningitemstatusunion.mdx) | ➖ | N/A | | -| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | | -| `Type` | [components.OutputReasoningItemType](../../models/components/outputreasoningitemtype.mdx) | ✅ | N/A | | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `Signature` | optionalnullable.OptionalNullable[`string`] | ➖ | A signature for the reasoning content, used for verification | EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj... | \ No newline at end of file +| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | :heavy_minus_sign: | N/A | | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [*components.OutputReasoningItemStatusUnion](../../models/components/outputreasoningitemstatusunion.mdx) | :heavy_minus_sign: | N/A | | +| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.OutputReasoningItemType](../../models/components/outputreasoningitemtype.mdx) | :heavy_check_mark: | N/A | | +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `Signature` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | A signature for the reasoning content, used for verification | EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj... | \ No newline at end of file diff --git a/docs/models/components/outputsearchmodelsservertoolitem.mdx b/docs/models/components/outputsearchmodelsservertoolitem.mdx index d44b7b225..79a6ac995 100644 --- a/docs/models/components/outputsearchmodelsservertoolitem.mdx +++ b/docs/models/components/outputsearchmodelsservertoolitem.mdx @@ -9,9 +9,9 @@ An openrouter:experimental__search_models server tool output item | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `*string` | ➖ | The JSON arguments submitted to the search tool (e.g. \{"query":"Claude"}) | | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `Query` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputSearchModelsServerToolItemType](../../models/components/outputsearchmodelsservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `*string` | :heavy_minus_sign: | The JSON arguments submitted to the search tool (e.g. \{"query":"Claude"}) | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Query` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputSearchModelsServerToolItemType](../../models/components/outputsearchmodelsservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputshellcallitem.mdx b/docs/models/components/outputshellcallitem.mdx index ce3cfdff2..e29cfed42 100644 --- a/docs/models/components/outputshellcallitem.mdx +++ b/docs/models/components/outputshellcallitem.mdx @@ -9,9 +9,9 @@ A native `shell_call` output item matching OpenAI's Responses API shape. Emitted | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [*components.OutputShellCallItemAction](../../models/components/outputshellcallitemaction.mdx) | ➖ | N/A | | -| `Arguments` | optionalnullable.OptionalNullable[`string`] | ➖ | The raw tool-call arguments string as emitted by the model. Echo back unchanged when replaying history; used verbatim to preserve provider prompt-cache prefixes. | | -| `CallID` | `string` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [components.ShellCallStatus](../../models/components/shellcallstatus.mdx) | ✅ | Status of a shell call or its output. | completed | -| `Type` | [components.OutputShellCallItemType](../../models/components/outputshellcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | [*components.OutputShellCallItemAction](../../models/components/outputshellcallitemaction.mdx) | :heavy_minus_sign: | N/A | | +| `Arguments` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The raw tool-call arguments string as emitted by the model. Echo back unchanged when replaying history; used verbatim to preserve provider prompt-cache prefixes. | | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.ShellCallStatus](../../models/components/shellcallstatus.mdx) | :heavy_check_mark: | Status of a shell call or its output. | completed | +| `Type` | [components.OutputShellCallItemType](../../models/components/outputshellcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputshellcallitemaction.mdx b/docs/models/components/outputshellcallitemaction.mdx index 37540134c..c841bd3e5 100644 --- a/docs/models/components/outputshellcallitemaction.mdx +++ b/docs/models/components/outputshellcallitemaction.mdx @@ -6,6 +6,6 @@ title: "OutputShellCallItemAction" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Commands` | []`string` | ✅ | N/A | -| `MaxOutputLength` | `*int64` | ✅ | N/A | -| `TimeoutMs` | `*int64` | ✅ | N/A | \ No newline at end of file +| `Commands` | []`string` | :heavy_check_mark: | N/A | +| `MaxOutputLength` | `*int64` | :heavy_check_mark: | N/A | +| `TimeoutMs` | `*int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputshellcalloutputitem.mdx b/docs/models/components/outputshellcalloutputitem.mdx index 5a4b9fd05..09ef848d1 100644 --- a/docs/models/components/outputshellcalloutputitem.mdx +++ b/docs/models/components/outputshellcalloutputitem.mdx @@ -9,12 +9,12 @@ A native `shell_call_output` item matching OpenAI's Responses API shape. Carries | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | -| `Error` | `*string` | ➖ | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'incomplete'` and an empty `output`; absent on a successful call. | | -| `Files` | [][components.OutputShellCallOutputItemFile](../../models/components/outputshellcalloutputitemfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | -| `ID` | `string` | ✅ | N/A | | -| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | ✅ | N/A | | -| `Status` | [components.ShellCallStatus](../../models/components/shellcallstatus.mdx) | ✅ | Status of a shell call or its output. | completed | -| `Type` | [components.OutputShellCallOutputItemTypeShellCallOutput](../../models/components/outputshellcalloutputitemtypeshellcalloutput.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'incomplete'` and an empty `output`; absent on a successful call. | | +| `Files` | [][components.OutputShellCallOutputItemFile](../../models/components/outputshellcalloutputitemfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | :heavy_check_mark: | N/A | | +| `Status` | [components.ShellCallStatus](../../models/components/shellcallstatus.mdx) | :heavy_check_mark: | Status of a shell call or its output. | completed | +| `Type` | [components.OutputShellCallOutputItemTypeShellCallOutput](../../models/components/outputshellcalloutputitemtypeshellcalloutput.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputshellcalloutputitemfile.mdx b/docs/models/components/outputshellcalloutputitemfile.mdx index c5858b81b..85ccb9970 100644 --- a/docs/models/components/outputshellcalloutputitemfile.mdx +++ b/docs/models/components/outputshellcalloutputitemfile.mdx @@ -6,9 +6,9 @@ title: "OutputShellCallOutputItemFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.OutputShellCallOutputItemTypeContainerFileCitation](../../models/components/outputshellcalloutputitemtypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.OutputShellCallOutputItemTypeContainerFileCitation](../../models/components/outputshellcalloutputitemtypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputshellservertoolitem.mdx b/docs/models/components/outputshellservertoolitem.mdx index a5a626072..1723c5f78 100644 --- a/docs/models/components/outputshellservertoolitem.mdx +++ b/docs/models/components/outputshellservertoolitem.mdx @@ -9,13 +9,13 @@ An openrouter:shell server tool output item | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [*components.OutputShellServerToolItemAction](../../models/components/outputshellservertoolitemaction.mdx) | ➖ | N/A | | -| `Arguments` | optionalnullable.OptionalNullable[`string`] | ➖ | The raw tool-call arguments string as emitted by the model. | | -| `CallID` | optionalnullable.OptionalNullable[`string`] | ➖ | The model-generated tool call id from the originating turn. | | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | -| `Error` | `*string` | ➖ | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'failed'`; absent on a successful call. `output` is omitted when `error` is set. | | -| `Files` | [][components.OutputShellServerToolItemFile](../../models/components/outputshellservertoolitemfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | -| `ID` | `*string` | ➖ | N/A | | -| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputShellServerToolItemTypeOpenrouterShell](../../models/components/outputshellservertoolitemtypeopenroutershell.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | [*components.OutputShellServerToolItemAction](../../models/components/outputshellservertoolitemaction.mdx) | :heavy_minus_sign: | N/A | | +| `Arguments` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The raw tool-call arguments string as emitted by the model. | | +| `CallID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The model-generated tool call id from the originating turn. | | +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the sandbox call failed before producing a result (for example, the per-user container limit was reached). Set together with `status: 'failed'`; absent on a successful call. `output` is omitted when `error` is set. | | +| `Files` | [][components.OutputShellServerToolItemFile](../../models/components/outputshellservertoolitemfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputShellServerToolItemTypeOpenrouterShell](../../models/components/outputshellservertoolitemtypeopenroutershell.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputshellservertoolitemaction.mdx b/docs/models/components/outputshellservertoolitemaction.mdx index 9030fc37a..2e748d553 100644 --- a/docs/models/components/outputshellservertoolitemaction.mdx +++ b/docs/models/components/outputshellservertoolitemaction.mdx @@ -6,6 +6,6 @@ title: "OutputShellServerToolItemAction" | Field | Type | Required | Description | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `Commands` | []`string` | ✅ | N/A | -| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | \ No newline at end of file +| `Commands` | []`string` | :heavy_check_mark: | N/A | +| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputshellservertoolitemfile.mdx b/docs/models/components/outputshellservertoolitemfile.mdx index c3bbf58ca..a5dbf3cea 100644 --- a/docs/models/components/outputshellservertoolitemfile.mdx +++ b/docs/models/components/outputshellservertoolitemfile.mdx @@ -6,9 +6,9 @@ title: "OutputShellServerToolItemFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.OutputShellServerToolItemTypeContainerFileCitation](../../models/components/outputshellservertoolitemtypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.OutputShellServerToolItemTypeContainerFileCitation](../../models/components/outputshellservertoolitemtypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputsubagentservertoolitem.mdx b/docs/models/components/outputsubagentservertoolitem.mdx index cac1dcde3..246183b42 100644 --- a/docs/models/components/outputsubagentservertoolitem.mdx +++ b/docs/models/components/outputsubagentservertoolitem.mdx @@ -9,14 +9,14 @@ An openrouter:subagent server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `*string` | ➖ | EXPERIMENTAL — subject to change without notice. The `call_id` of the tool call that spawned this subagent. This id will also be included as the `subagent_id` on any `function_call` items created by the subagent. This must be returned in the request so the `function_call` can be matched with the correct subagent. A suspended `in_progress` item is announced once and never re-emitted or terminally closed — completion arrives as a new item with the same `call_id`. | | -| `Error` | `*string` | ➖ | Error message when the subagent task did not produce an outcome. Set together with `status: 'failed'` on the terminal item. | | -| `ID` | `*string` | ➖ | N/A | | -| `InstanceName` | `*string` | ➖ | Provider-safe function name of the specific subagent instance that produced this item (e.g. `openrouter_subagent__1`). Present only on items from non-default instances — the second and later subagent entries in the request `tools` array. The first (default) instance omits it, even when multiple subagents are configured. When a replayed item echoes this field back, the transcript rehydrates the call under that instance's tool. This identity is positional: it is derived from the index of the subagent entry in the request `tools` array, so keep the order of subagent entries stable across requests in a conversation. | openrouter_subagent__1 | -| `Model` | `*string` | ➖ | Slug of the worker model that executed the task. | | -| `Name` | `*string` | ➖ | Configured name of the subagent that executed the task (the `name` on its tool entry). Present only for named subagents; omitted for an unnamed (default) subagent. | summarizer | -| `Outcome` | `*string` | ➖ | The worker model's result (the outcome text returned to the delegating model). | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `TaskDescription` | `*string` | ➖ | The task description the delegating model sent to the worker. | | -| `TaskName` | `*string` | ➖ | The short task identifier the delegating model supplied. | | -| `Type` | [components.OutputSubagentServerToolItemType](../../models/components/outputsubagentservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `*string` | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. The `call_id` of the tool call that spawned this subagent. This id will also be included as the `subagent_id` on any `function_call` items created by the subagent. This must be returned in the request so the `function_call` can be matched with the correct subagent. A suspended `in_progress` item is announced once and never re-emitted or terminally closed — completion arrives as a new item with the same `call_id`. | | +| `Error` | `*string` | :heavy_minus_sign: | Error message when the subagent task did not produce an outcome. Set together with `status: 'failed'` on the terminal item. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `InstanceName` | `*string` | :heavy_minus_sign: | Provider-safe function name of the specific subagent instance that produced this item (e.g. `openrouter_subagent__1`). Present only on items from non-default instances — the second and later subagent entries in the request `tools` array. The first (default) instance omits it, even when multiple subagents are configured. When a replayed item echoes this field back, the transcript rehydrates the call under that instance's tool. This identity is positional: it is derived from the index of the subagent entry in the request `tools` array, so keep the order of subagent entries stable across requests in a conversation. | openrouter_subagent__1 | +| `Model` | `*string` | :heavy_minus_sign: | Slug of the worker model that executed the task. | | +| `Name` | `*string` | :heavy_minus_sign: | Configured name of the subagent that executed the task (the `name` on its tool entry). Present only for named subagents; omitted for an unnamed (default) subagent. | summarizer | +| `Outcome` | `*string` | :heavy_minus_sign: | The worker model's result (the outcome text returned to the delegating model). | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `TaskDescription` | `*string` | :heavy_minus_sign: | The task description the delegating model sent to the worker. | | +| `TaskName` | `*string` | :heavy_minus_sign: | The short task identifier the delegating model supplied. | | +| `Type` | [components.OutputSubagentServerToolItemType](../../models/components/outputsubagentservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputtexteditorservertoolitem.mdx b/docs/models/components/outputtexteditorservertoolitem.mdx index 05e82f1cb..039f5e00c 100644 --- a/docs/models/components/outputtexteditorservertoolitem.mdx +++ b/docs/models/components/outputtexteditorservertoolitem.mdx @@ -9,8 +9,8 @@ An openrouter:text_editor server tool output item | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Command` | [*components.Command](../../models/components/command.mdx) | ➖ | N/A | | -| `FilePath` | `*string` | ➖ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputTextEditorServerToolItemType](../../models/components/outputtexteditorservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Command` | [*components.Command](../../models/components/command.mdx) | :heavy_minus_sign: | N/A | | +| `FilePath` | `*string` | :heavy_minus_sign: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputTextEditorServerToolItemType](../../models/components/outputtexteditorservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputtokensdetails.mdx b/docs/models/components/outputtokensdetails.mdx index f5e57d954..e4615eaa0 100644 --- a/docs/models/components/outputtokensdetails.mdx +++ b/docs/models/components/outputtokensdetails.mdx @@ -6,4 +6,4 @@ title: "OutputTokensDetails" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ReasoningTokens` | `int64` | ✅ | N/A | \ No newline at end of file +| `ReasoningTokens` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputtoolsearchcallitem.mdx b/docs/models/components/outputtoolsearchcallitem.mdx index ebabd4695..8d32cfdbf 100644 --- a/docs/models/components/outputtoolsearchcallitem.mdx +++ b/docs/models/components/outputtoolsearchcallitem.mdx @@ -9,9 +9,9 @@ A call the model made to a `tool_search` tool declared with `"execution": "clien | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Arguments` | `any` | ➖ | N/A | | -| `CallID` | `string` | ✅ | N/A | | -| `Execution` | [components.OutputToolSearchCallItemExecution](../../models/components/outputtoolsearchcallitemexecution.mdx) | ✅ | N/A | | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputToolSearchCallItemType](../../models/components/outputtoolsearchcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `any` | :heavy_minus_sign: | N/A | | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `Execution` | [components.OutputToolSearchCallItemExecution](../../models/components/outputtoolsearchcallitemexecution.mdx) | :heavy_check_mark: | N/A | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputToolSearchCallItemType](../../models/components/outputtoolsearchcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputtoolsearchservertoolitem.mdx b/docs/models/components/outputtoolsearchservertoolitem.mdx index f2100be79..5bb66a281 100644 --- a/docs/models/components/outputtoolsearchservertoolitem.mdx +++ b/docs/models/components/outputtoolsearchservertoolitem.mdx @@ -9,9 +9,9 @@ An openrouter:tool_search server tool output item | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `Matches` | [][components.Match](../../models/components/match.mdx) | ➖ | N/A | | -| `Query` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputToolSearchServerToolItemType](../../models/components/outputtoolsearchservertoolitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Matches` | [][components.Match](../../models/components/match.mdx) | :heavy_minus_sign: | N/A | | +| `Query` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputToolSearchServerToolItemType](../../models/components/outputtoolsearchservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputwebfetchservertoolitem.mdx b/docs/models/components/outputwebfetchservertoolitem.mdx index fe48ddb91..181609b0f 100644 --- a/docs/models/components/outputwebfetchservertoolitem.mdx +++ b/docs/models/components/outputwebfetchservertoolitem.mdx @@ -9,11 +9,11 @@ An openrouter:web_fetch server tool output item | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Content` | `*string` | ➖ | N/A | | -| `Error` | `*string` | ➖ | The error message if the fetch failed. | | -| `HTTPStatus` | `*int64` | ➖ | The HTTP status code returned by the upstream URL fetch. | | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | ✅ | N/A | completed | -| `Title` | `*string` | ➖ | N/A | | -| `Type` | [components.OutputWebFetchServerToolItemType](../../models/components/outputwebfetchservertoolitemtype.mdx) | ✅ | N/A | | -| `URL` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Content` | `*string` | :heavy_minus_sign: | N/A | | +| `Error` | `*string` | :heavy_minus_sign: | The error message if the fetch failed. | | +| `HTTPStatus` | `*int64` | :heavy_minus_sign: | The HTTP status code returned by the upstream URL fetch. | | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.ToolCallStatus](../../models/components/toolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Title` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.OutputWebFetchServerToolItemType](../../models/components/outputwebfetchservertoolitemtype.mdx) | :heavy_check_mark: | N/A | | +| `URL` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchcallitem.mdx b/docs/models/components/outputwebsearchcallitem.mdx index 3ea3d4d75..45f40bec8 100644 --- a/docs/models/components/outputwebsearchcallitem.mdx +++ b/docs/models/components/outputwebsearchcallitem.mdx @@ -6,8 +6,8 @@ title: "OutputWebSearchCallItem" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [*components.OutputWebSearchCallItemActionUnion](../../models/components/outputwebsearchcallitemactionunion.mdx) | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputWebSearchCallItemTypeWebSearchCall](../../models/components/outputwebsearchcallitemtypewebsearchcall.mdx) | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | \ No newline at end of file +| `Action` | [*components.OutputWebSearchCallItemActionUnion](../../models/components/outputwebsearchcallitemactionunion.mdx) | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.WebSearchStatus](../../models/components/websearchstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputWebSearchCallItemTypeWebSearchCall](../../models/components/outputwebsearchcallitemtypewebsearchcall.mdx) | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchcallitemactionfindinpage.mdx b/docs/models/components/outputwebsearchcallitemactionfindinpage.mdx index bcce8f459..d847dda95 100644 --- a/docs/models/components/outputwebsearchcallitemactionfindinpage.mdx +++ b/docs/models/components/outputwebsearchcallitemactionfindinpage.mdx @@ -6,6 +6,6 @@ title: "OutputWebSearchCallItemActionFindInPage" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Pattern` | `string` | ✅ | N/A | -| `Type` | [components.OutputWebSearchCallItemTypeFindInPage](../../models/components/outputwebsearchcallitemtypefindinpage.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Pattern` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.OutputWebSearchCallItemTypeFindInPage](../../models/components/outputwebsearchcallitemtypefindinpage.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchcallitemactionopenpage.mdx b/docs/models/components/outputwebsearchcallitemactionopenpage.mdx index 498b51277..b2df0abc8 100644 --- a/docs/models/components/outputwebsearchcallitemactionopenpage.mdx +++ b/docs/models/components/outputwebsearchcallitemactionopenpage.mdx @@ -6,5 +6,5 @@ title: "OutputWebSearchCallItemActionOpenPage" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Type` | [components.OutputWebSearchCallItemTypeOpenPage](../../models/components/outputwebsearchcallitemtypeopenpage.mdx) | ✅ | N/A | -| `URL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `Type` | [components.OutputWebSearchCallItemTypeOpenPage](../../models/components/outputwebsearchcallitemtypeopenpage.mdx) | :heavy_check_mark: | N/A | +| `URL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchcallitemactionsearch.mdx b/docs/models/components/outputwebsearchcallitemactionsearch.mdx index fbe298d4f..d0edcd035 100644 --- a/docs/models/components/outputwebsearchcallitemactionsearch.mdx +++ b/docs/models/components/outputwebsearchcallitemactionsearch.mdx @@ -6,7 +6,7 @@ title: "OutputWebSearchCallItemActionSearch" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Queries` | []`string` | ➖ | N/A | -| `Query` | `string` | ✅ | N/A | -| `Sources` | [][components.WebSearchSource](../../models/components/websearchsource.mdx) | ➖ | N/A | -| `Type` | [components.OutputWebSearchCallItemTypeSearch](../../models/components/outputwebsearchcallitemtypesearch.mdx) | ✅ | N/A | \ No newline at end of file +| `Queries` | []`string` | :heavy_minus_sign: | N/A | +| `Query` | `string` | :heavy_check_mark: | N/A | +| `Sources` | [][components.WebSearchSource](../../models/components/websearchsource.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.OutputWebSearchCallItemTypeSearch](../../models/components/outputwebsearchcallitemtypesearch.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchservertoolitem.mdx b/docs/models/components/outputwebsearchservertoolitem.mdx index 06429a4bd..7b95e9e45 100644 --- a/docs/models/components/outputwebsearchservertoolitem.mdx +++ b/docs/models/components/outputwebsearchservertoolitem.mdx @@ -9,8 +9,8 @@ An openrouter:web_search server tool output item | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Action` | [*components.OutputWebSearchServerToolItemAction](../../models/components/outputwebsearchservertoolitemaction.mdx) | ➖ | The search action performed, matching OpenAI web_search_call.action shape. Includes the query the model issued and optional source URLs returned by the search provider. | | -| `Error` | `*string` | ➖ | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | -| `ID` | `*string` | ➖ | N/A | | -| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | ✅ | N/A | completed | -| `Type` | [components.OutputWebSearchServerToolItemTypeOpenrouterWebSearch](../../models/components/outputwebsearchservertoolitemtypeopenrouterwebsearch.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | [*components.OutputWebSearchServerToolItemAction](../../models/components/outputwebsearchservertoolitemaction.mdx) | :heavy_minus_sign: | The search action performed, matching OpenAI web_search_call.action shape. Includes the query the model issued and optional source URLs returned by the search provider. | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the tool call failed before producing a result. Set together with `status: 'failed'`; absent on a successful call. | Tool execution failed | +| `ID` | `*string` | :heavy_minus_sign: | N/A | | +| `Status` | [components.FailableToolCallStatus](../../models/components/failabletoolcallstatus.mdx) | :heavy_check_mark: | N/A | completed | +| `Type` | [components.OutputWebSearchServerToolItemTypeOpenrouterWebSearch](../../models/components/outputwebsearchservertoolitemtypeopenrouterwebsearch.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchservertoolitemaction.mdx b/docs/models/components/outputwebsearchservertoolitemaction.mdx index e76b2d6ed..f48fb201d 100644 --- a/docs/models/components/outputwebsearchservertoolitemaction.mdx +++ b/docs/models/components/outputwebsearchservertoolitemaction.mdx @@ -9,6 +9,6 @@ The search action performed, matching OpenAI web_search_call.action shape. Inclu | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Query` | `string` | ✅ | N/A | -| `Sources` | [][components.OutputWebSearchServerToolItemSource](../../models/components/outputwebsearchservertoolitemsource.mdx) | ➖ | N/A | -| `Type` | [components.OutputWebSearchServerToolItemTypeSearch](../../models/components/outputwebsearchservertoolitemtypesearch.mdx) | ✅ | N/A | \ No newline at end of file +| `Query` | `string` | :heavy_check_mark: | N/A | +| `Sources` | [][components.OutputWebSearchServerToolItemSource](../../models/components/outputwebsearchservertoolitemsource.mdx) | :heavy_minus_sign: | N/A | +| `Type` | [components.OutputWebSearchServerToolItemTypeSearch](../../models/components/outputwebsearchservertoolitemtypesearch.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/outputwebsearchservertoolitemsource.mdx b/docs/models/components/outputwebsearchservertoolitemsource.mdx index b8f6856f5..a674d64af 100644 --- a/docs/models/components/outputwebsearchservertoolitemsource.mdx +++ b/docs/models/components/outputwebsearchservertoolitemsource.mdx @@ -6,5 +6,5 @@ title: "OutputWebSearchServerToolItemSource" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Type` | [components.OutputWebSearchServerToolItemTypeURL](../../models/components/outputwebsearchservertoolitemtypeurl.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.OutputWebSearchServerToolItemTypeURL](../../models/components/outputwebsearchservertoolitemtypeurl.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/paretorouterplugin.mdx b/docs/models/components/paretorouterplugin.mdx index ba2ebc22b..c499f4b7b 100644 --- a/docs/models/components/paretorouterplugin.mdx +++ b/docs/models/components/paretorouterplugin.mdx @@ -6,8 +6,8 @@ title: "ParetoRouterPlugin" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | Set to false to disable the pareto-router plugin for this request. Defaults to true. | | -| `ID` | [components.ParetoRouterPluginID](../../models/components/paretorouterpluginid.mdx) | ✅ | N/A | | -| `MaxPrice` | `*float64` | ➖ | Maximum input price in USD per million tokens. When set, quality-tier selection (min_coding_score) is bypassed: the router computes the Pareto frontier over the top coding models and routes to the best-scoring frontier model priced at or below this cap, falling back through cheaper frontier models, then non-frontier models. Enforced against the price source given by price_source. Returns 404 when no candidate satisfies the cap. | 5 | -| `MinCodingScore` | `*float64` | ➖ | Minimum coding quality score between 0 and 1. Maps to internal quality tiers: >= 0.66 → high (top coding models), >= 0.33 → medium (strong modern flagships), < 0.33 → low (capable coders above the median). Omit to default to the highest tier (equivalent to >= 0.66). Not used when max_price is set (price-based selection takes over). | 0.8 | -| `PriceSource` | [*components.PriceSource](../../models/components/pricesource.mdx) | ➖ | Price source for the Pareto frontier cost axis and for enforcing max_price. "prompt" uses catalog list price (endpoint.pricing.prompt). "weighted_avg" uses traffic-weighted effective input price from ClickHouse, falling back to prompt price for models without traffic data. Defaults to "prompt". | | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the pareto-router plugin for this request. Defaults to true. | | +| `ID` | [components.ParetoRouterPluginID](../../models/components/paretorouterpluginid.mdx) | :heavy_check_mark: | N/A | | +| `MaxPrice` | `*float64` | :heavy_minus_sign: | Maximum input price in USD per million tokens. When set, quality-tier selection (min_coding_score) is bypassed: the router computes the Pareto frontier over the top coding models and routes to the best-scoring frontier model priced at or below this cap, falling back through cheaper frontier models, then non-frontier models. Enforced against the price source given by price_source. Returns 404 when no candidate satisfies the cap. | 5 | +| `MinCodingScore` | `*float64` | :heavy_minus_sign: | Minimum coding quality score between 0 and 1. Maps to internal quality tiers: >= 0.66 → high (top coding models), >= 0.33 → medium (strong modern flagships), < 0.33 → low (capable coders above the median). Omit to default to the highest tier (equivalent to >= 0.66). Not used when max_price is set (price-based selection takes over). | 0.8 | +| `PriceSource` | [*components.PriceSource](../../models/components/pricesource.mdx) | :heavy_minus_sign: | Price source for the Pareto frontier cost axis and for enforcing max_price. "prompt" uses catalog list price (endpoint.pricing.prompt). "weighted_avg" uses traffic-weighted effective input price from ClickHouse, falling back to prompt price for models without traffic data. Defaults to "prompt". | | \ No newline at end of file diff --git a/docs/models/components/partialcoverage.mdx b/docs/models/components/partialcoverage.mdx index 695c78498..2a5e8dd1e 100644 --- a/docs/models/components/partialcoverage.mdx +++ b/docs/models/components/partialcoverage.mdx @@ -6,5 +6,5 @@ title: "PartialCoverage" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Models` | []`string` | ✅ | N/A | -| `Point` | `string` | ✅ | N/A | \ No newline at end of file +| `Models` | []`string` | :heavy_check_mark: | N/A | +| `Point` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/payloadtoolargeresponseerrordata.mdx b/docs/models/components/payloadtoolargeresponseerrordata.mdx index 423377083..fabd4a759 100644 --- a/docs/models/components/payloadtoolargeresponseerrordata.mdx +++ b/docs/models/components/payloadtoolargeresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for PayloadTooLargeResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/paymentrequiredresponseerrordata.mdx b/docs/models/components/paymentrequiredresponseerrordata.mdx index 67068fcca..a33c49cc2 100644 --- a/docs/models/components/paymentrequiredresponseerrordata.mdx +++ b/docs/models/components/paymentrequiredresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for PaymentRequiredResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/pdfparseroptions.mdx b/docs/models/components/pdfparseroptions.mdx index 9ee8419fd..7065b065a 100644 --- a/docs/models/components/pdfparseroptions.mdx +++ b/docs/models/components/pdfparseroptions.mdx @@ -9,4 +9,4 @@ Options for PDF parsing. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.PDFParserEngine](../../models/components/pdfparserengine.mdx) | ➖ | The engine to use for parsing PDF files. "pdf-text" is deprecated and automatically redirected to "cloudflare-ai". | cloudflare-ai | \ No newline at end of file +| `Engine` | [*components.PDFParserEngine](../../models/components/pdfparserengine.mdx) | :heavy_minus_sign: | The engine to use for parsing PDF files. "pdf-text" is deprecated and automatically redirected to "cloudflare-ai". | cloudflare-ai | \ No newline at end of file diff --git a/docs/models/components/pendingsafetycheck.mdx b/docs/models/components/pendingsafetycheck.mdx index ab6afff22..6a4fd63bd 100644 --- a/docs/models/components/pendingsafetycheck.mdx +++ b/docs/models/components/pendingsafetycheck.mdx @@ -6,6 +6,6 @@ title: "PendingSafetyCheck" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Code` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | \ No newline at end of file +| `Code` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/percentilelatencycutoffs.mdx b/docs/models/components/percentilelatencycutoffs.mdx index fd0e6ba5e..7cc5dae79 100644 --- a/docs/models/components/percentilelatencycutoffs.mdx +++ b/docs/models/components/percentilelatencycutoffs.mdx @@ -9,7 +9,7 @@ Percentile-based latency cutoffs. All specified cutoffs must be met for an endpo | Field | Type | Required | Description | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `P50` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum p50 latency (seconds) | -| `P75` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum p75 latency (seconds) | -| `P90` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum p90 latency (seconds) | -| `P99` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum p99 latency (seconds) | \ No newline at end of file +| `P50` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum p50 latency (seconds) | +| `P75` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum p75 latency (seconds) | +| `P90` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum p90 latency (seconds) | +| `P99` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum p99 latency (seconds) | \ No newline at end of file diff --git a/docs/models/components/percentilestats.mdx b/docs/models/components/percentilestats.mdx index 56f6fdf53..6aabafaa0 100644 --- a/docs/models/components/percentilestats.mdx +++ b/docs/models/components/percentilestats.mdx @@ -9,7 +9,7 @@ Latency percentiles in milliseconds over the last 30 minutes. Latency measures t | Field | Type | Required | Description | Example | | ------------------------ | ------------------------ | ------------------------ | ------------------------ | ------------------------ | -| `P50` | `float64` | ✅ | Median (50th percentile) | 25.5 | -| `P75` | `float64` | ✅ | 75th percentile | 35.2 | -| `P90` | `float64` | ✅ | 90th percentile | 48.7 | -| `P99` | `float64` | ✅ | 99th percentile | 85.3 | \ No newline at end of file +| `P50` | `float64` | :heavy_check_mark: | Median (50th percentile) | 25.5 | +| `P75` | `float64` | :heavy_check_mark: | 75th percentile | 35.2 | +| `P90` | `float64` | :heavy_check_mark: | 90th percentile | 48.7 | +| `P99` | `float64` | :heavy_check_mark: | 99th percentile | 85.3 | \ No newline at end of file diff --git a/docs/models/components/percentilethroughputcutoffs.mdx b/docs/models/components/percentilethroughputcutoffs.mdx index 7a536ff3c..b149d4fa3 100644 --- a/docs/models/components/percentilethroughputcutoffs.mdx +++ b/docs/models/components/percentilethroughputcutoffs.mdx @@ -9,7 +9,7 @@ Percentile-based throughput cutoffs. All specified cutoffs must be met for an en | Field | Type | Required | Description | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `P50` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum p50 throughput (tokens/sec) | -| `P75` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum p75 throughput (tokens/sec) | -| `P90` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum p90 throughput (tokens/sec) | -| `P99` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum p99 throughput (tokens/sec) | \ No newline at end of file +| `P50` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum p50 throughput (tokens/sec) | +| `P75` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum p75 throughput (tokens/sec) | +| `P90` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum p90 throughput (tokens/sec) | +| `P99` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum p99 throughput (tokens/sec) | \ No newline at end of file diff --git a/docs/models/components/perflast30mbyworkload.mdx b/docs/models/components/perflast30mbyworkload.mdx index 318aa1803..dde50725f 100644 --- a/docs/models/components/perflast30mbyworkload.mdx +++ b/docs/models/components/perflast30mbyworkload.mdx @@ -9,12 +9,12 @@ Endpoint performance over the last 30 minutes, keyed by the kind of request serv | Field | Type | Required | Description | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Decisions` | [*components.Decisions](../../models/components/decisions.mdx) | ➖ | N/A | -| `Embeddings` | [*components.Embeddings](../../models/components/embeddings.mdx) | ➖ | N/A | -| `ImageGeneration` | [*components.ImageGeneration](../../models/components/imagegeneration.mdx) | ➖ | N/A | -| `Rerank` | [*components.Rerank](../../models/components/rerank.mdx) | ➖ | N/A | -| `STT` | [*components.STT](../../models/components/stt.mdx) | ➖ | N/A | -| `TextGeneration` | [*components.TextGeneration](../../models/components/textgeneration.mdx) | ➖ | N/A | -| `TTS` | [*components.TTS](../../models/components/tts.mdx) | ➖ | N/A | -| `Unknown` | [*components.Unknown](../../models/components/unknown.mdx) | ➖ | N/A | -| `VideoGeneration` | [*components.VideoGeneration](../../models/components/videogeneration.mdx) | ➖ | N/A | \ No newline at end of file +| `Decisions` | [*components.Decisions](../../models/components/decisions.mdx) | :heavy_minus_sign: | N/A | +| `Embeddings` | [*components.Embeddings](../../models/components/embeddings.mdx) | :heavy_minus_sign: | N/A | +| `ImageGeneration` | [*components.ImageGeneration](../../models/components/imagegeneration.mdx) | :heavy_minus_sign: | N/A | +| `Rerank` | [*components.Rerank](../../models/components/rerank.mdx) | :heavy_minus_sign: | N/A | +| `STT` | [*components.STT](../../models/components/stt.mdx) | :heavy_minus_sign: | N/A | +| `TextGeneration` | [*components.TextGeneration](../../models/components/textgeneration.mdx) | :heavy_minus_sign: | N/A | +| `TTS` | [*components.TTS](../../models/components/tts.mdx) | :heavy_minus_sign: | N/A | +| `Unknown` | [*components.Unknown](../../models/components/unknown.mdx) | :heavy_minus_sign: | N/A | +| `VideoGeneration` | [*components.VideoGeneration](../../models/components/videogeneration.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/perrequestlimits.mdx b/docs/models/components/perrequestlimits.mdx index b18992532..57dfcd45c 100644 --- a/docs/models/components/perrequestlimits.mdx +++ b/docs/models/components/perrequestlimits.mdx @@ -9,5 +9,5 @@ Per-request token limits | Field | Type | Required | Description | Example | | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | -| `CompletionTokens` | `float64` | ✅ | Maximum completion tokens per request | 1000 | -| `PromptTokens` | `float64` | ✅ | Maximum prompt tokens per request | 1000 | \ No newline at end of file +| `CompletionTokens` | `float64` | :heavy_check_mark: | Maximum completion tokens per request | 1000 | +| `PromptTokens` | `float64` | :heavy_check_mark: | Maximum prompt tokens per request | 1000 | \ No newline at end of file diff --git a/docs/models/components/pipelinestage.mdx b/docs/models/components/pipelinestage.mdx index 03a8a387f..ced1b8f85 100644 --- a/docs/models/components/pipelinestage.mdx +++ b/docs/models/components/pipelinestage.mdx @@ -6,10 +6,10 @@ title: "PipelineStage" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CostUsd` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | | -| `Data` | map[string]`any` | ➖ | N/A | | -| `GuardrailID` | `*string` | ➖ | N/A | | -| `GuardrailScope` | `*string` | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Summary` | `*string` | ➖ | N/A | | -| `Type` | [components.PipelineStageType](../../models/components/pipelinestagetype.mdx) | ✅ | Categorical kind of a pipeline stage. Multiple plugins can share a type (e.g. all guardrail-level plugins emit `guardrail`); the `name` field disambiguates which plugin emitted it. | guardrail | \ No newline at end of file +| `CostUsd` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | | +| `Data` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `GuardrailID` | `*string` | :heavy_minus_sign: | N/A | | +| `GuardrailScope` | `*string` | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Summary` | `*string` | :heavy_minus_sign: | N/A | | +| `Type` | [components.PipelineStageType](../../models/components/pipelinestagetype.mdx) | :heavy_check_mark: | Categorical kind of a pipeline stage. Multiple plugins can share a type (e.g. all guardrail-level plugins emit `guardrail`); the `name` field disambiguates which plugin emitted it. | guardrail | \ No newline at end of file diff --git a/docs/models/components/prediction.mdx b/docs/models/components/prediction.mdx index 10d6d26ae..5cbb82074 100644 --- a/docs/models/components/prediction.mdx +++ b/docs/models/components/prediction.mdx @@ -9,5 +9,5 @@ Static predicted output content. Supported models can use this to reduce latency | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `Content` | [components.PredictionContent](../../models/components/predictioncontent.mdx) | ✅ | N/A | -| `Type` | [components.PredictionType](../../models/components/predictiontype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [components.PredictionContent](../../models/components/predictioncontent.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.PredictionType](../../models/components/predictiontype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/predictioncontenttext.mdx b/docs/models/components/predictioncontenttext.mdx index 6242b5429..d28120b65 100644 --- a/docs/models/components/predictioncontenttext.mdx +++ b/docs/models/components/predictioncontenttext.mdx @@ -9,5 +9,5 @@ Text content part for a predicted output. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.PredictionContentTextType](../../models/components/predictioncontenttexttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.PredictionContentTextType](../../models/components/predictioncontenttexttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/preset.mdx b/docs/models/components/preset.mdx index c3cf8e279..33eec201c 100644 --- a/docs/models/components/preset.mdx +++ b/docs/models/components/preset.mdx @@ -9,14 +9,14 @@ A preset without version details. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `CreatedAt` | `string` | ✅ | N/A | | -| `CreatorUserID` | `*string` | ✅ | N/A | | -| `Description` | `*string` | ✅ | N/A | | -| `DesignatedVersionID` | `*string` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Slug` | `string` | ✅ | N/A | | -| `Status` | [components.PresetStatus](../../models/components/presetstatus.mdx) | ✅ | The status of a preset. | active | -| `StatusUpdatedAt` | `*string` | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | N/A | | -| `WorkspaceID` | `*string` | ✅ | N/A | | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | | +| `CreatorUserID` | `*string` | :heavy_check_mark: | N/A | | +| `Description` | `*string` | :heavy_check_mark: | N/A | | +| `DesignatedVersionID` | `*string` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Slug` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.PresetStatus](../../models/components/presetstatus.mdx) | :heavy_check_mark: | The status of a preset. | active | +| `StatusUpdatedAt` | `*string` | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | N/A | | +| `WorkspaceID` | `*string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/presetdesignatedversion.mdx b/docs/models/components/presetdesignatedversion.mdx index 7eaefd95f..94a959054 100644 --- a/docs/models/components/presetdesignatedversion.mdx +++ b/docs/models/components/presetdesignatedversion.mdx @@ -9,11 +9,11 @@ A specific version of a preset, containing config and optional system prompt. | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Config` | map[string]`any` | ✅ | N/A | -| `CreatedAt` | `string` | ✅ | N/A | -| `CreatorID` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `PresetID` | `string` | ✅ | N/A | -| `SystemPrompt` | `*string` | ✅ | N/A | -| `UpdatedAt` | `string` | ✅ | N/A | -| `Version` | `int64` | ✅ | N/A | \ No newline at end of file +| `Config` | map[string]`any` | :heavy_check_mark: | N/A | +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | +| `CreatorID` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `PresetID` | `string` | :heavy_check_mark: | N/A | +| `SystemPrompt` | `*string` | :heavy_check_mark: | N/A | +| `UpdatedAt` | `string` | :heavy_check_mark: | N/A | +| `Version` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/presetwithdesignatedversion.mdx b/docs/models/components/presetwithdesignatedversion.mdx index cd2639fbe..bec3d33fb 100644 --- a/docs/models/components/presetwithdesignatedversion.mdx +++ b/docs/models/components/presetwithdesignatedversion.mdx @@ -9,15 +9,15 @@ A preset with its currently designated version. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | N/A | | -| `CreatorUserID` | `*string` | ✅ | N/A | | -| `Description` | `*string` | ✅ | N/A | | -| `DesignatedVersionID` | `*string` | ✅ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Slug` | `string` | ✅ | N/A | | -| `Status` | [components.PresetStatus](../../models/components/presetstatus.mdx) | ✅ | The status of a preset. | active | -| `StatusUpdatedAt` | `*string` | ✅ | N/A | | -| `UpdatedAt` | `string` | ✅ | N/A | | -| `WorkspaceID` | `*string` | ✅ | N/A | | -| `DesignatedVersion` | [*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | ✅ | A specific version of a preset, containing config and optional system prompt. | \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
} | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | | +| `CreatorUserID` | `*string` | :heavy_check_mark: | N/A | | +| `Description` | `*string` | :heavy_check_mark: | N/A | | +| `DesignatedVersionID` | `*string` | :heavy_check_mark: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Slug` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.PresetStatus](../../models/components/presetstatus.mdx) | :heavy_check_mark: | The status of a preset. | active | +| `StatusUpdatedAt` | `*string` | :heavy_check_mark: | N/A | | +| `UpdatedAt` | `string` | :heavy_check_mark: | N/A | | +| `WorkspaceID` | `*string` | :heavy_check_mark: | N/A | | +| `DesignatedVersion` | [*components.PresetDesignatedVersion](../../models/components/presetdesignatedversion.mdx) | :heavy_check_mark: | A specific version of a preset, containing config and optional system prompt. | \{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
} | \ No newline at end of file diff --git a/docs/models/components/preview20250311websearchservertool.mdx b/docs/models/components/preview20250311websearchservertool.mdx index 77d7253e4..a8fd1011b 100644 --- a/docs/models/components/preview20250311websearchservertool.mdx +++ b/docs/models/components/preview20250311websearchservertool.mdx @@ -9,12 +9,12 @@ Web search preview tool configuration (2025-03-11 version) | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | ➖ | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | ➖ | Size of the search context for web search tools | medium | -| `Type` | [components.Preview20250311WebSearchServerToolType](../../models/components/preview20250311websearchservertooltype.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.PreviewWebSearchUserLocation](../../models/components/previewwebsearchuserlocation.mdx)] | ➖ | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | +| `Type` | [components.Preview20250311WebSearchServerToolType](../../models/components/preview20250311websearchservertooltype.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.PreviewWebSearchUserLocation](../../models/components/previewwebsearchuserlocation.mdx)] | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/previewwebsearchservertool.mdx b/docs/models/components/previewwebsearchservertool.mdx index 9c3418229..6f35d82fd 100644 --- a/docs/models/components/previewwebsearchservertool.mdx +++ b/docs/models/components/previewwebsearchservertool.mdx @@ -9,12 +9,12 @@ Web search preview tool configuration | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | ➖ | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | ➖ | Size of the search context for web search tools | medium | -| `Type` | [components.PreviewWebSearchServerToolType](../../models/components/previewwebsearchservertooltype.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.PreviewWebSearchUserLocation](../../models/components/previewwebsearchuserlocation.mdx)] | ➖ | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | +| `Type` | [components.PreviewWebSearchServerToolType](../../models/components/previewwebsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.PreviewWebSearchUserLocation](../../models/components/previewwebsearchuserlocation.mdx)] | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/previewwebsearchuserlocation.mdx b/docs/models/components/previewwebsearchuserlocation.mdx index 8c41c3cb7..e0ffc5a49 100644 --- a/docs/models/components/previewwebsearchuserlocation.mdx +++ b/docs/models/components/previewwebsearchuserlocation.mdx @@ -6,8 +6,8 @@ title: "PreviewWebSearchUserLocation" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `City` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Country` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Region` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Timezone` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.PreviewWebSearchUserLocationType](../../models/components/previewwebsearchuserlocationtype.mdx) | ✅ | N/A | \ No newline at end of file +| `City` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Country` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Region` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Timezone` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.PreviewWebSearchUserLocationType](../../models/components/previewwebsearchuserlocationtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/pricing.mdx b/docs/models/components/pricing.mdx index 4d14c44f7..9f14372a8 100644 --- a/docs/models/components/pricing.mdx +++ b/docs/models/components/pricing.mdx @@ -6,19 +6,19 @@ title: "Pricing" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Audio` | `*string` | ➖ | Price in USD per audio input token | -| `AudioOutput` | `*string` | ➖ | Price in USD per audio output token | -| `Completion` | `string` | ✅ | Price in USD per token for completion (output) generation | -| `Discount` | `*float64` | ➖ | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) | -| `Image` | `*string` | ➖ | Price in USD per input image | -| `ImageOutput` | `*string` | ➖ | Price in USD per output image | -| `ImageToken` | `*string` | ➖ | Price in USD per image token | -| `InputAudioCache` | `*string` | ➖ | Price in USD per cached audio input token | -| `InputCacheRead` | `*string` | ➖ | Price in USD per cached input token (read) | -| `InputCacheWrite` | `*string` | ➖ | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. | -| `InputCacheWrite1h` | `*string` | ➖ | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. | -| `InternalReasoning` | `*string` | ➖ | Price in USD per internal reasoning token | -| `Overrides` | [][components.PricingOverride](../../models/components/pricingoverride.mdx) | ➖ | Conditional overrides of the base pricing (e.g. long-context or time-based pricing). An entry applies when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per key; price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies under default conditions. | -| `Prompt` | `string` | ✅ | Price in USD per token for prompt (input) processing | -| `Request` | `*string` | ➖ | Price in USD per request | -| `WebSearch` | `*string` | ➖ | Price in USD per web search | \ No newline at end of file +| `Audio` | `*string` | :heavy_minus_sign: | Price in USD per audio input token | +| `AudioOutput` | `*string` | :heavy_minus_sign: | Price in USD per audio output token | +| `Completion` | `string` | :heavy_check_mark: | Price in USD per token for completion (output) generation | +| `Discount` | `*float64` | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) | +| `Image` | `*string` | :heavy_minus_sign: | Price in USD per input image | +| `ImageOutput` | `*string` | :heavy_minus_sign: | Price in USD per output image | +| `ImageToken` | `*string` | :heavy_minus_sign: | Price in USD per image token | +| `InputAudioCache` | `*string` | :heavy_minus_sign: | Price in USD per cached audio input token | +| `InputCacheRead` | `*string` | :heavy_minus_sign: | Price in USD per cached input token (read) | +| `InputCacheWrite` | `*string` | :heavy_minus_sign: | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. | +| `InputCacheWrite1h` | `*string` | :heavy_minus_sign: | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. | +| `InternalReasoning` | `*string` | :heavy_minus_sign: | Price in USD per internal reasoning token | +| `Overrides` | [][components.PricingOverride](../../models/components/pricingoverride.mdx) | :heavy_minus_sign: | Conditional overrides of the base pricing (e.g. long-context or time-based pricing). An entry applies when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per key; price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies under default conditions. | +| `Prompt` | `string` | :heavy_check_mark: | Price in USD per token for prompt (input) processing | +| `Request` | `*string` | :heavy_minus_sign: | Price in USD per request | +| `WebSearch` | `*string` | :heavy_minus_sign: | Price in USD per web search | \ No newline at end of file diff --git a/docs/models/components/pricingoverride.mdx b/docs/models/components/pricingoverride.mdx index 41af63402..081646d35 100644 --- a/docs/models/components/pricingoverride.mdx +++ b/docs/models/components/pricingoverride.mdx @@ -9,14 +9,14 @@ A conditional override of the base pricing. An entry applies only when all of it | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Audio` | `*string` | ➖ | Overridden price in USD per audio input token | -| `Completion` | `*string` | ➖ | Overridden price in USD per token for completion (output) generation | -| `InputAudioCache` | `*string` | ➖ | Overridden price in USD per cached audio input token | -| `InputCacheRead` | `*string` | ➖ | Overridden price in USD per cached input token (read) | -| `InputCacheWrite` | `*string` | ➖ | Overridden price in USD per cache-write token | -| `InputCacheWrite1h` | `*string` | ➖ | Overridden price in USD per 1-hour cache-write token | -| `MinPromptTokens` | `*float64` | ➖ | Condition: the entry applies when the total prompt tokens of a request are strictly greater than this threshold | -| `Prompt` | `*string` | ➖ | Overridden price in USD per token for prompt (input) processing | -| `UtcDays` | [][components.UtcDay](../../models/components/utcday.mdx) | ➖ | Condition: UTC weekdays the entry applies on, evaluated at the request instant. Scopes the utc_start/utc_end window (or, without a window, the whole UTC day) to the listed days. Absent means every day. | -| `UtcEnd` | `*float64` | ➖ | Condition: exclusive end of a daily UTC time window as an HHMM clock number (e.g. 400 = 04:00) | -| `UtcStart` | `*float64` | ➖ | Condition: inclusive start of a daily UTC time window as an HHMM clock number (e.g. 100 = 01:00, 1030 = 10:30). The entry applies while the current UTC time is inside the half-open window [utc_start, utc_end), which may wrap past midnight (utc_start > utc_end). | \ No newline at end of file +| `Audio` | `*string` | :heavy_minus_sign: | Overridden price in USD per audio input token | +| `Completion` | `*string` | :heavy_minus_sign: | Overridden price in USD per token for completion (output) generation | +| `InputAudioCache` | `*string` | :heavy_minus_sign: | Overridden price in USD per cached audio input token | +| `InputCacheRead` | `*string` | :heavy_minus_sign: | Overridden price in USD per cached input token (read) | +| `InputCacheWrite` | `*string` | :heavy_minus_sign: | Overridden price in USD per cache-write token | +| `InputCacheWrite1h` | `*string` | :heavy_minus_sign: | Overridden price in USD per 1-hour cache-write token | +| `MinPromptTokens` | `*float64` | :heavy_minus_sign: | Condition: the entry applies when the total prompt tokens of a request are strictly greater than this threshold | +| `Prompt` | `*string` | :heavy_minus_sign: | Overridden price in USD per token for prompt (input) processing | +| `UtcDays` | [][components.UtcDay](../../models/components/utcday.mdx) | :heavy_minus_sign: | Condition: UTC weekdays the entry applies on, evaluated at the request instant. Scopes the utc_start/utc_end window (or, without a window, the whole UTC day) to the listed days. Absent means every day. | +| `UtcEnd` | `*float64` | :heavy_minus_sign: | Condition: exclusive end of a daily UTC time window as an HHMM clock number (e.g. 400 = 04:00) | +| `UtcStart` | `*float64` | :heavy_minus_sign: | Condition: inclusive start of a daily UTC time window as an HHMM clock number (e.g. 100 = 01:00, 1030 = 10:30). The entry applies while the current UTC time is inside the half-open window [utc_start, utc_end), which may wrap past midnight (utc_start > utc_end). | \ No newline at end of file diff --git a/docs/models/components/privateendpoint.mdx b/docs/models/components/privateendpoint.mdx index bf428260f..898b06540 100644 --- a/docs/models/components/privateendpoint.mdx +++ b/docs/models/components/privateendpoint.mdx @@ -6,15 +6,15 @@ title: "PrivateEndpoint" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BaseURL` | `*string` | ✅ | HTTPS base URL of your deployment, or `null` for providers whose URL is derived from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | -| `DeclaredRegion` | [*components.PrivateEndpointDeclaredRegion](../../models/components/privateendpointdeclaredregion.mdx) | ✅ | Where you attest this deployment processes data. `global` means not regional; `null` means undeclared. | us | -| `DeclaredZdr` | `*bool` | ✅ | Whether you attest this deployment retains no prompt or completion data. `null` means undeclared. | true | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `ModelName` | `*string` | ✅ | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | -| `ModelPermaslug` | `string` | ✅ | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | -| `ModelSlug` | `*string` | ✅ | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | -| `Pricing` | [components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | ✅ | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | -| `ProviderName` | `string` | ✅ | Display name of the upstream provider. | Azure | -| `ProviderSlug` | `*string` | ✅ | Slug of the upstream provider, or `null` when the provider is no longer listed. | azure | -| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | ✅ | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | -| `UpstreamModelID` | `string` | ✅ | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file +| `BaseURL` | `*string` | :heavy_check_mark: | HTTPS base URL of your deployment, or `null` for providers whose URL is derived from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | +| `DeclaredRegion` | [*components.PrivateEndpointDeclaredRegion](../../models/components/privateendpointdeclaredregion.mdx) | :heavy_check_mark: | Where you attest this deployment processes data. `global` means not regional; `null` means undeclared. | us | +| `DeclaredZdr` | `*bool` | :heavy_check_mark: | Whether you attest this deployment retains no prompt or completion data. `null` means undeclared. | true | +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `ModelName` | `*string` | :heavy_check_mark: | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | +| `ModelSlug` | `*string` | :heavy_check_mark: | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | +| `Pricing` | [components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | :heavy_check_mark: | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | +| `ProviderName` | `string` | :heavy_check_mark: | Display name of the upstream provider. | Azure | +| `ProviderSlug` | `*string` | :heavy_check_mark: | Slug of the upstream provider, or `null` when the provider is no longer listed. | azure | +| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | :heavy_check_mark: | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | +| `UpstreamModelID` | `string` | :heavy_check_mark: | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file diff --git a/docs/models/components/privateendpointactivation.mdx b/docs/models/components/privateendpointactivation.mdx index 7f4328a43..49915baf3 100644 --- a/docs/models/components/privateendpointactivation.mdx +++ b/docs/models/components/privateendpointactivation.mdx @@ -9,4 +9,4 @@ Validate and activate in the same call. On a failed validation the draft is kept | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `WorkspaceID` | `string` | ✅ | Workspace whose BYOK credential is used for the live validation call. The workspace must belong to your account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `WorkspaceID` | `string` | :heavy_check_mark: | Workspace whose BYOK credential is used for the live validation call. The workspace must belong to your account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/privateendpointcheck.mdx b/docs/models/components/privateendpointcheck.mdx index 81d19f15a..d7cf98a6e 100644 --- a/docs/models/components/privateendpointcheck.mdx +++ b/docs/models/components/privateendpointcheck.mdx @@ -6,9 +6,9 @@ title: "PrivateEndpointCheck" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `ActualModel` | optionalnullable.OptionalNullable[`string`] | ➖ | Model the upstream reported serving, when it differs from the request. | | -| `Name` | `string` | ✅ | Check name. | auth_ok | -| `Passed` | `bool` | ✅ | N/A | | -| `Reason` | [*components.PrivateEndpointCheckReason](../../models/components/privateendpointcheckreason.mdx) | ➖ | Why the check failed. | no_byok_key | -| `UpstreamMessage` | optionalnullable.OptionalNullable[`string`] | ➖ | Error message returned by your deployment when the call failed. | | -| `UpstreamStatus` | `*int64` | ➖ | HTTP status returned by your deployment when the call failed. | | \ No newline at end of file +| `ActualModel` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Model the upstream reported serving, when it differs from the request. | | +| `Name` | `string` | :heavy_check_mark: | Check name. | auth_ok | +| `Passed` | `bool` | :heavy_check_mark: | N/A | | +| `Reason` | [*components.PrivateEndpointCheckReason](../../models/components/privateendpointcheckreason.mdx) | :heavy_minus_sign: | Why the check failed. | no_byok_key | +| `UpstreamMessage` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Error message returned by your deployment when the call failed. | | +| `UpstreamStatus` | `*int64` | :heavy_minus_sign: | HTTP status returned by your deployment when the call failed. | | \ No newline at end of file diff --git a/docs/models/components/privateendpointpricing.mdx b/docs/models/components/privateendpointpricing.mdx index 87b4c43e5..5d70b647b 100644 --- a/docs/models/components/privateendpointpricing.mdx +++ b/docs/models/components/privateendpointpricing.mdx @@ -9,7 +9,7 @@ Negotiated per-token rates reported for requests routed to this endpoint. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CacheRead` | `*string` | ➖ | USD per cache-read prompt token, as a decimal string. When omitted, inherited from the public endpoint of the same model and provider: scaled by its cache-read to prompt ratio, or left at the pricing strategy default when it publishes no cache-read rate. Required when there is no such endpoint and the provider bills cache reads. | 0.00000025 | -| `CacheWrite` | `*string` | ➖ | USD per cache-write prompt token, as a decimal string. When omitted, inherited from the public endpoint of the same model and provider: scaled by its cache-write to prompt ratio, or left at the pricing strategy default when it publishes no cache-write rate. Required when there is no such endpoint and the provider bills cache writes. | 0.000003125 | -| `Completion` | `string` | ✅ | USD per completion token, as a decimal string. | 0.00001 | -| `Prompt` | `string` | ✅ | USD per prompt token, as a decimal string. | 0.0000025 | \ No newline at end of file +| `CacheRead` | `*string` | :heavy_minus_sign: | USD per cache-read prompt token, as a decimal string. When omitted, inherited from the public endpoint of the same model and provider: scaled by its cache-read to prompt ratio, or left at the pricing strategy default when it publishes no cache-read rate. Required when there is no such endpoint and the provider bills cache reads. | 0.00000025 | +| `CacheWrite` | `*string` | :heavy_minus_sign: | USD per cache-write prompt token, as a decimal string. When omitted, inherited from the public endpoint of the same model and provider: scaled by its cache-write to prompt ratio, or left at the pricing strategy default when it publishes no cache-write rate. Required when there is no such endpoint and the provider bills cache writes. | 0.000003125 | +| `Completion` | `string` | :heavy_check_mark: | USD per completion token, as a decimal string. | 0.00001 | +| `Prompt` | `string` | :heavy_check_mark: | USD per prompt token, as a decimal string. | 0.0000025 | \ No newline at end of file diff --git a/docs/models/components/privateendpointresponse.mdx b/docs/models/components/privateendpointresponse.mdx index 29c7ea512..e2c4af098 100644 --- a/docs/models/components/privateendpointresponse.mdx +++ b/docs/models/components/privateendpointresponse.mdx @@ -6,4 +6,4 @@ title: "PrivateEndpointResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.PrivateEndpoint](../../models/components/privateendpoint.mdx) | ✅ | N/A | \{
"base_url": "https://contoso.openai.azure.com",
"declared_region": "us",
"declared_zdr": true,
"id": "5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11",
"model_name": "OpenAI: GPT-4o",
"model_permaslug": "openai/gpt-4o-2024-08-06",
"model_slug": "openai/gpt-4o",
"pricing": \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
},
"provider_name": "Azure",
"provider_slug": "azure",
"status": "active",
"upstream_model_id": "gpt-4o-prod"
} | \ No newline at end of file +| `Data` | [components.PrivateEndpoint](../../models/components/privateendpoint.mdx) | :heavy_check_mark: | N/A | \{
"base_url": "https://contoso.openai.azure.com",
"declared_region": "us",
"declared_zdr": true,
"id": "5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11",
"model_name": "OpenAI: GPT-4o",
"model_permaslug": "openai/gpt-4o-2024-08-06",
"model_slug": "openai/gpt-4o",
"pricing": \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
},
"provider_name": "Azure",
"provider_slug": "azure",
"status": "active",
"upstream_model_id": "gpt-4o-prod"
} | \ No newline at end of file diff --git a/docs/models/components/privateendpointsummary.mdx b/docs/models/components/privateendpointsummary.mdx index 026b6e31b..9b2b9bc9a 100644 --- a/docs/models/components/privateendpointsummary.mdx +++ b/docs/models/components/privateendpointsummary.mdx @@ -6,10 +6,10 @@ title: "PrivateEndpointSummary" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | ISO timestamp of when the endpoint was created. | 2026-09-24T10:30:00Z | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `ModelName` | `*string` | ✅ | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | -| `ModelPermaslug` | `string` | ✅ | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | -| `ModelSlug` | `*string` | ✅ | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | -| `ProviderName` | `string` | ✅ | Display name of the upstream provider. | Azure | -| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | ✅ | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | ISO timestamp of when the endpoint was created. | 2026-09-24T10:30:00Z | +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `ModelName` | `*string` | :heavy_check_mark: | Display name of the model, or `null` when the model is no longer listed. | OpenAI: GPT-4o | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Permanent slug of the model this endpoint serves. | openai/gpt-4o-2024-08-06 | +| `ModelSlug` | `*string` | :heavy_check_mark: | Public model slug, or `null` when the model is no longer listed. | openai/gpt-4o | +| `ProviderName` | `string` | :heavy_check_mark: | Display name of the upstream provider. | Azure | +| `Status` | [components.PrivateEndpointStatus](../../models/components/privateendpointstatus.mdx) | :heavy_check_mark: | Lifecycle state. `draft` endpoints are not routable until validated and activated; `disabled` endpoints are activated but temporarily not routable. | active | \ No newline at end of file diff --git a/docs/models/components/privateendpointvalidation.mdx b/docs/models/components/privateendpointvalidation.mdx index 31cd81f72..275a5325d 100644 --- a/docs/models/components/privateendpointvalidation.mdx +++ b/docs/models/components/privateendpointvalidation.mdx @@ -6,5 +6,5 @@ title: "PrivateEndpointValidation" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Checks` | [][components.PrivateEndpointCheck](../../models/components/privateendpointcheck.mdx) | ✅ | N/A | | -| `Passed` | `bool` | ✅ | Whether every check passed. | true | \ No newline at end of file +| `Checks` | [][components.PrivateEndpointCheck](../../models/components/privateendpointcheck.mdx) | :heavy_check_mark: | N/A | | +| `Passed` | `bool` | :heavy_check_mark: | Whether every check passed. | true | \ No newline at end of file diff --git a/docs/models/components/privateendpointvalidationnullable.mdx b/docs/models/components/privateendpointvalidationnullable.mdx index 2516ce73c..2874980d4 100644 --- a/docs/models/components/privateendpointvalidationnullable.mdx +++ b/docs/models/components/privateendpointvalidationnullable.mdx @@ -6,5 +6,5 @@ title: "PrivateEndpointValidationNullable" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Checks` | [][components.PrivateEndpointCheck](../../models/components/privateendpointcheck.mdx) | ✅ | N/A | | -| `Passed` | `bool` | ✅ | Whether every check passed. | true | \ No newline at end of file +| `Checks` | [][components.PrivateEndpointCheck](../../models/components/privateendpointcheck.mdx) | :heavy_check_mark: | N/A | | +| `Passed` | `bool` | :heavy_check_mark: | Whether every check passed. | true | \ No newline at end of file diff --git a/docs/models/components/privateendpointvalidationresponse.mdx b/docs/models/components/privateendpointvalidationresponse.mdx index d070dffa2..61b858d36 100644 --- a/docs/models/components/privateendpointvalidationresponse.mdx +++ b/docs/models/components/privateendpointvalidationresponse.mdx @@ -6,4 +6,4 @@ title: "PrivateEndpointValidationResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Data` | [components.PrivateEndpointValidation](../../models/components/privateendpointvalidation.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.PrivateEndpointValidation](../../models/components/privateendpointvalidation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/progress.mdx b/docs/models/components/progress.mdx deleted file mode 100644 index 4b01a7a38..000000000 --- a/docs/models/components/progress.mdx +++ /dev/null @@ -1,14 +0,0 @@ ---- -title: "Progress" ---- - -Active provisioning step, or null once provisioning has settled. - - -## Fields - -| Field | Type | Required | Description | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `StepLabel` | `string` | ✅ | Human-readable label of the active provisioning step. | -| `StepNumber` | `int64` | ✅ | One-based index of the active step. | -| `TotalSteps` | `int64` | ✅ | Number of provisioning steps. | \ No newline at end of file diff --git a/docs/models/components/promptcachebreakpoint.mdx b/docs/models/components/promptcachebreakpoint.mdx index c3527c852..14e894a21 100644 --- a/docs/models/components/promptcachebreakpoint.mdx +++ b/docs/models/components/promptcachebreakpoint.mdx @@ -9,5 +9,5 @@ Marks an explicit prompt-cache boundary on this content block (OpenAI-style). Ev | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Mode` | [components.PromptCacheBreakpointMode](../../models/components/promptcachebreakpointmode.mdx) | ✅ | N/A | -| `TTL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `Mode` | [components.PromptCacheBreakpointMode](../../models/components/promptcachebreakpointmode.mdx) | :heavy_check_mark: | N/A | +| `TTL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/promptcacheoptions.mdx b/docs/models/components/promptcacheoptions.mdx index 283e02b52..cef0d41de 100644 --- a/docs/models/components/promptcacheoptions.mdx +++ b/docs/models/components/promptcacheoptions.mdx @@ -9,5 +9,5 @@ Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Mode` | [components.PromptCacheOptionsMode](../../models/components/promptcacheoptionsmode.mdx) | ✅ | N/A | -| `TTL` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | \ No newline at end of file +| `Mode` | [components.PromptCacheOptionsMode](../../models/components/promptcacheoptionsmode.mdx) | :heavy_check_mark: | N/A | +| `TTL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/provideroptions.mdx b/docs/models/components/provideroptions.mdx index 2102a3482..7f7a3bbc4 100644 --- a/docs/models/components/provideroptions.mdx +++ b/docs/models/components/provideroptions.mdx @@ -9,151 +9,151 @@ Provider-specific options keyed by provider slug. Only options for the matched p | Field | Type | Required | Description | | -------------------------- | -------------------------- | -------------------------- | -------------------------- | -| `Oneai` | map[string]`any` | ➖ | N/A | -| `Ai21` | map[string]`any` | ➖ | N/A | -| `AionLabs` | map[string]`any` | ➖ | N/A | -| `Akashml` | map[string]`any` | ➖ | N/A | -| `Alibaba` | map[string]`any` | ➖ | N/A | -| `AmazonBedrock` | map[string]`any` | ➖ | N/A | -| `AmazonBedrockClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `AmazonNova` | map[string]`any` | ➖ | N/A | -| `Ambient` | map[string]`any` | ➖ | N/A | -| `Anthropic` | map[string]`any` | ➖ | N/A | -| `Anthropic2` | map[string]`any` | ➖ | N/A | -| `Anyscale` | map[string]`any` | ➖ | N/A | -| `ArceeAi` | map[string]`any` | ➖ | N/A | -| `Assemblyai` | map[string]`any` | ➖ | N/A | -| `AtlasCloud` | map[string]`any` | ➖ | N/A | -| `Atoma` | map[string]`any` | ➖ | N/A | -| `Avian` | map[string]`any` | ➖ | N/A | -| `Azure` | map[string]`any` | ➖ | N/A | -| `Baidu` | map[string]`any` | ➖ | N/A | -| `Baseten` | map[string]`any` | ➖ | N/A | -| `BlackForestLabs` | map[string]`any` | ➖ | N/A | -| `Byteplus` | map[string]`any` | ➖ | N/A | -| `Centml` | map[string]`any` | ➖ | N/A | -| `Cerebras` | map[string]`any` | ➖ | N/A | -| `Chutes` | map[string]`any` | ➖ | N/A | -| `Cirrascale` | map[string]`any` | ➖ | N/A | -| `Clarifai` | map[string]`any` | ➖ | N/A | -| `ClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `Cloudflare` | map[string]`any` | ➖ | N/A | -| `Cohere` | map[string]`any` | ➖ | N/A | -| `Coreweave` | map[string]`any` | ➖ | N/A | -| `Cosine` | map[string]`any` | ➖ | N/A | -| `Crofai` | map[string]`any` | ➖ | N/A | -| `Crucible` | map[string]`any` | ➖ | N/A | -| `Crusoe` | map[string]`any` | ➖ | N/A | -| `Darkbloom` | map[string]`any` | ➖ | N/A | -| `Databricks` | map[string]`any` | ➖ | N/A | -| `Decart` | map[string]`any` | ➖ | N/A | -| `Deepgram` | map[string]`any` | ➖ | N/A | -| `Deepinfra` | map[string]`any` | ➖ | N/A | -| `Deepseek` | map[string]`any` | ➖ | N/A | -| `Dekallm` | map[string]`any` | ➖ | N/A | -| `Digitalocean` | map[string]`any` | ➖ | N/A | -| `Elevenlabs` | map[string]`any` | ➖ | N/A | -| `Enfer` | map[string]`any` | ➖ | N/A | -| `FakeProvider` | map[string]`any` | ➖ | N/A | -| `Featherless` | map[string]`any` | ➖ | N/A | -| `Fireworks` | map[string]`any` | ➖ | N/A | -| `FishAudio` | map[string]`any` | ➖ | N/A | -| `Friendli` | map[string]`any` | ➖ | N/A | -| `Gmicloud` | map[string]`any` | ➖ | N/A | -| `GoogleAiStudio` | map[string]`any` | ➖ | N/A | -| `GoogleVertex` | map[string]`any` | ➖ | N/A | -| `Gopomelo` | map[string]`any` | ➖ | N/A | -| `Groq` | map[string]`any` | ➖ | N/A | -| `Heygen` | map[string]`any` | ➖ | N/A | -| `Huggingface` | map[string]`any` | ➖ | N/A | -| `Hyperbolic` | map[string]`any` | ➖ | N/A | -| `HyperbolicQuantized` | map[string]`any` | ➖ | N/A | -| `Inception` | map[string]`any` | ➖ | N/A | -| `Inceptron` | map[string]`any` | ➖ | N/A | -| `InferactVllm` | map[string]`any` | ➖ | N/A | -| `InferenceNet` | map[string]`any` | ➖ | N/A | -| `Infermatic` | map[string]`any` | ➖ | N/A | -| `Inflection` | map[string]`any` | ➖ | N/A | -| `Inocloud` | map[string]`any` | ➖ | N/A | -| `IoNet` | map[string]`any` | ➖ | N/A | -| `Ionstream` | map[string]`any` | ➖ | N/A | -| `Klusterai` | map[string]`any` | ➖ | N/A | -| `Krea` | map[string]`any` | ➖ | N/A | -| `Lambda` | map[string]`any` | ➖ | N/A | -| `Lepton` | map[string]`any` | ➖ | N/A | -| `Liquid` | map[string]`any` | ➖ | N/A | -| `Lynn` | map[string]`any` | ➖ | N/A | -| `LynnPrivate` | map[string]`any` | ➖ | N/A | -| `Makora` | map[string]`any` | ➖ | N/A | -| `Mancer` | map[string]`any` | ➖ | N/A | -| `MancerOld` | map[string]`any` | ➖ | N/A | -| `Mara` | map[string]`any` | ➖ | N/A | -| `Meta` | map[string]`any` | ➖ | N/A | -| `Minimax` | map[string]`any` | ➖ | N/A | -| `Mistral` | map[string]`any` | ➖ | N/A | -| `Modal` | map[string]`any` | ➖ | N/A | -| `Modelrun` | map[string]`any` | ➖ | N/A | -| `Modular` | map[string]`any` | ➖ | N/A | -| `Moonshotai` | map[string]`any` | ➖ | N/A | -| `Morph` | map[string]`any` | ➖ | N/A | -| `Ncompass` | map[string]`any` | ➖ | N/A | -| `NearAi` | map[string]`any` | ➖ | N/A | -| `Nebius` | map[string]`any` | ➖ | N/A | -| `NexAgi` | map[string]`any` | ➖ | N/A | -| `Nextbit` | map[string]`any` | ➖ | N/A | -| `Nineteen` | map[string]`any` | ➖ | N/A | -| `Novita` | map[string]`any` | ➖ | N/A | -| `Nvidia` | map[string]`any` | ➖ | N/A | -| `Octoai` | map[string]`any` | ➖ | N/A | -| `Ollama` | map[string]`any` | ➖ | N/A | -| `OpenInference` | map[string]`any` | ➖ | N/A | -| `Openai` | map[string]`any` | ➖ | N/A | -| `Parasail` | map[string]`any` | ➖ | N/A | -| `ParetoAlpha` | map[string]`any` | ➖ | N/A | -| `Perceptron` | map[string]`any` | ➖ | N/A | -| `Perplexity` | map[string]`any` | ➖ | N/A | -| `Phala` | map[string]`any` | ➖ | N/A | -| `Poolside` | map[string]`any` | ➖ | N/A | -| `Primeintellect` | map[string]`any` | ➖ | N/A | -| `Quiver` | map[string]`any` | ➖ | N/A | -| `Recraft` | map[string]`any` | ➖ | N/A | -| `Recursal` | map[string]`any` | ➖ | N/A | -| `Recursive` | map[string]`any` | ➖ | N/A | -| `Reflection` | map[string]`any` | ➖ | N/A | -| `Reka` | map[string]`any` | ➖ | N/A | -| `Relace` | map[string]`any` | ➖ | N/A | -| `Replicate` | map[string]`any` | ➖ | N/A | -| `Respan` | map[string]`any` | ➖ | N/A | -| `Runway` | map[string]`any` | ➖ | N/A | -| `SailResearch` | map[string]`any` | ➖ | N/A | -| `Sakana` | map[string]`any` | ➖ | N/A | -| `SakanaAi` | map[string]`any` | ➖ | N/A | -| `Sambanova` | map[string]`any` | ➖ | N/A | -| `SambanovaCloaked` | map[string]`any` | ➖ | N/A | -| `Scaledown` | map[string]`any` | ➖ | N/A | -| `Seed` | map[string]`any` | ➖ | N/A | -| `SfCompute` | map[string]`any` | ➖ | N/A | -| `Siliconflow` | map[string]`any` | ➖ | N/A | -| `Sourceful` | map[string]`any` | ➖ | N/A | -| `Stealth` | map[string]`any` | ➖ | N/A | -| `Stepfun` | map[string]`any` | ➖ | N/A | -| `Streamlake` | map[string]`any` | ➖ | N/A | -| `Switchpoint` | map[string]`any` | ➖ | N/A | -| `Targon` | map[string]`any` | ➖ | N/A | -| `Tencent` | map[string]`any` | ➖ | N/A | -| `Tenstorrent` | map[string]`any` | ➖ | N/A | -| `Thinkingmachines` | map[string]`any` | ➖ | N/A | -| `Together` | map[string]`any` | ➖ | N/A | -| `TogetherLite` | map[string]`any` | ➖ | N/A | -| `Typesafe` | map[string]`any` | ➖ | N/A | -| `Ubicloud` | map[string]`any` | ➖ | N/A | -| `Unbiased` | map[string]`any` | ➖ | N/A | -| `Upstage` | map[string]`any` | ➖ | N/A | -| `Venice` | map[string]`any` | ➖ | N/A | -| `Voyageai` | map[string]`any` | ➖ | N/A | -| `Wafer` | map[string]`any` | ➖ | N/A | -| `Wandb` | map[string]`any` | ➖ | N/A | -| `WandbLegacy` | map[string]`any` | ➖ | N/A | -| `Xai` | map[string]`any` | ➖ | N/A | -| `Xiaomi` | map[string]`any` | ➖ | N/A | -| `ZAi` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Oneai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ai21` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AionLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Akashml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Alibaba` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrock` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrockClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonNova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ambient` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic2` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anyscale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ArceeAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Assemblyai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AtlasCloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Atoma` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Avian` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Azure` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baidu` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baseten` | map[string]`any` | :heavy_minus_sign: | N/A | +| `BlackForestLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Byteplus` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Centml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cerebras` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Chutes` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cirrascale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Clarifai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cloudflare` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cohere` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Coreweave` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cosine` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crofai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crucible` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crusoe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Darkbloom` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Databricks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Decart` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepgram` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepinfra` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepseek` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Dekallm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Digitalocean` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Elevenlabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Enfer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FakeProvider` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Featherless` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Fireworks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FishAudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Friendli` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gmicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleAiStudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleVertex` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gopomelo` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Groq` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Heygen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Huggingface` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Hyperbolic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `HyperbolicQuantized` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inception` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferactVllm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferenceNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Infermatic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inocloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `IoNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ionstream` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Klusterai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Krea` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lambda` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lepton` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Liquid` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lynn` | map[string]`any` | :heavy_minus_sign: | N/A | +| `LynnPrivate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Makora` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mancer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `MancerOld` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mara` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Meta` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Minimax` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mistral` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modelrun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modular` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Moonshotai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Morph` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ncompass` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NearAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nebius` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NexAgi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nextbit` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nineteen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Novita` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nvidia` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Octoai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ollama` | map[string]`any` | :heavy_minus_sign: | N/A | +| `OpenInference` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Openai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Parasail` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ParetoAlpha` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perplexity` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Phala` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Poolside` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Primeintellect` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Quiver` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recraft` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursive` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reka` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Relace` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Replicate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Respan` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Runway` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SailResearch` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sakana` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SakanaAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sambanova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SambanovaCloaked` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Scaledown` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Seed` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SfCompute` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Siliconflow` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sourceful` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stealth` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stepfun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Streamlake` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Switchpoint` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Targon` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tencent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tenstorrent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Thinkingmachines` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Together` | map[string]`any` | :heavy_minus_sign: | N/A | +| `TogetherLite` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Typesafe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ubicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Unbiased` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Upstage` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Venice` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Voyageai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wafer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wandb` | map[string]`any` | :heavy_minus_sign: | N/A | +| `WandbLegacy` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xiaomi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ZAi` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/provideroverloadedresponseerrordata.mdx b/docs/models/components/provideroverloadedresponseerrordata.mdx index 4b65aaacb..5646fd73b 100644 --- a/docs/models/components/provideroverloadedresponseerrordata.mdx +++ b/docs/models/components/provideroverloadedresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for ProviderOverloadedResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/providerpreferences.mdx b/docs/models/components/providerpreferences.mdx index e09dbc2d3..09dcd175f 100644 --- a/docs/models/components/providerpreferences.mdx +++ b/docs/models/components/providerpreferences.mdx @@ -9,17 +9,17 @@ Provider routing preferences for the request. | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | -| `DataCollection` | optionalnullable.OptionalNullable[[components.DataCollection](../../models/components/datacollection.mdx)] | ➖ | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | -| `EnforceDistillableText` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to restrict routing to only models that allow text distillation. When true, only models where the author has allowed distillation will be used. | true | -| `Ignore` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesIgnore](../../models/components/providerpreferencesignore.mdx)] | ➖ | List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request. | [
"openai",
"anthropic"
] | -| `MaxPrice` | [*components.MaxPrice](../../models/components/maxprice.mdx) | ➖ | The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion. | | -| `Only` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesOnly](../../models/components/providerpreferencesonly.mdx)] | ➖ | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | -| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | ➖ | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | -| `Order` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesOrder](../../models/components/providerpreferencesorder.mdx)] | ➖ | An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message. | [
"openai",
"anthropic"
] | -| `PreferredMaxLatency` | optionalnullable.OptionalNullable[[components.PreferredMaxLatency](../../models/components/preferredmaxlatency.mdx)] | ➖ | Preferred maximum latency (in seconds). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints above the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold. | 5 | -| `PreferredMinThroughput` | optionalnullable.OptionalNullable[[components.PreferredMinThroughput](../../models/components/preferredminthroughput.mdx)] | ➖ | Preferred minimum throughput (in tokens per second). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints below the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold. | 100 | -| `Quantizations` | optionalnullable.OptionalNullable[[][components.Quantization](../../models/components/quantization.mdx)] | ➖ | A list of quantization levels to filter the provider by. | | -| `RequireParameters` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest. | | -| `Sort` | optionalnullable.OptionalNullable[[components.ProviderPreferencesSort](../../models/components/providerpreferencessort.mdx)] | ➖ | The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed. | price | -| `Zdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file +| `AllowFallbacks` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to allow backup providers to serve requests
- true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.
- false: use only the primary/custom provider, and return the upstream error if it's unavailable.
| | +| `DataCollection` | optionalnullable.OptionalNullable[[components.DataCollection](../../models/components/datacollection.mdx)] | :heavy_minus_sign: | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | +| `EnforceDistillableText` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to restrict routing to only models that allow text distillation. When true, only models where the author has allowed distillation will be used. | true | +| `Ignore` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesIgnore](../../models/components/providerpreferencesignore.mdx)] | :heavy_minus_sign: | List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request. | [
"openai",
"anthropic"
] | +| `MaxPrice` | [*components.MaxPrice](../../models/components/maxprice.mdx) | :heavy_minus_sign: | The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion. | | +| `Only` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesOnly](../../models/components/providerpreferencesonly.mdx)] | :heavy_minus_sign: | List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request. | [
"openai",
"anthropic"
] | +| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | :heavy_minus_sign: | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | +| `Order` | optionalnullable.OptionalNullable[[][components.ProviderPreferencesOrder](../../models/components/providerpreferencesorder.mdx)] | :heavy_minus_sign: | An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message. | [
"openai",
"anthropic"
] | +| `PreferredMaxLatency` | optionalnullable.OptionalNullable[[components.PreferredMaxLatency](../../models/components/preferredmaxlatency.mdx)] | :heavy_minus_sign: | Preferred maximum latency (in seconds). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints above the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold. | 5 | +| `PreferredMinThroughput` | optionalnullable.OptionalNullable[[components.PreferredMinThroughput](../../models/components/preferredminthroughput.mdx)] | :heavy_minus_sign: | Preferred minimum throughput (in tokens per second). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints below the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold. | 100 | +| `Quantizations` | optionalnullable.OptionalNullable[[][components.Quantization](../../models/components/quantization.mdx)] | :heavy_minus_sign: | A list of quantization levels to filter the provider by. | | +| `RequireParameters` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest. | | +| `Sort` | optionalnullable.OptionalNullable[[components.ProviderPreferencesSort](../../models/components/providerpreferencessort.mdx)] | :heavy_minus_sign: | The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed. | price | +| `Zdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file diff --git a/docs/models/components/providerresponse.mdx b/docs/models/components/providerresponse.mdx index e2a04e148..3b9019d03 100644 --- a/docs/models/components/providerresponse.mdx +++ b/docs/models/components/providerresponse.mdx @@ -9,11 +9,11 @@ Details of a provider response for a generation attempt | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `EndpointID` | `*string` | ➖ | Internal endpoint identifier | ep_abc123 | -| `ID` | `*string` | ➖ | Upstream provider response identifier | chatcmpl-abc123 | -| `IsBYOK` | `*bool` | ➖ | Whether the request used a bring-your-own-key | false | -| `Latency` | `*float64` | ➖ | Response latency in milliseconds | 1200 | -| `ModelPermaslug` | `*string` | ➖ | Canonical model slug | openai/gpt-4 | -| `ProviderName` | [*components.ProviderResponseProviderName](../../models/components/providerresponseprovidername.mdx) | ➖ | Name of the provider | OpenAI | -| `RoutedServiceTier` | [*components.RoutedServiceTier](../../models/components/routedservicetier.mdx) | ➖ | The service tier this request was routed to (e.g. flex, priority). The tier actually applied and billed is determined by the provider response and may differ. | priority | -| `Status` | `*int64` | ✅ | HTTP status code from the provider | 200 | \ No newline at end of file +| `EndpointID` | `*string` | :heavy_minus_sign: | Internal endpoint identifier | ep_abc123 | +| `ID` | `*string` | :heavy_minus_sign: | Upstream provider response identifier | chatcmpl-abc123 | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether the request used a bring-your-own-key | false | +| `Latency` | `*float64` | :heavy_minus_sign: | Response latency in milliseconds | 1200 | +| `ModelPermaslug` | `*string` | :heavy_minus_sign: | Canonical model slug | openai/gpt-4 | +| `ProviderName` | [*components.ProviderResponseProviderName](../../models/components/providerresponseprovidername.mdx) | :heavy_minus_sign: | Name of the provider | OpenAI | +| `RoutedServiceTier` | [*components.RoutedServiceTier](../../models/components/routedservicetier.mdx) | :heavy_minus_sign: | The service tier this request was routed to (e.g. flex, priority). The tier actually applied and billed is determined by the provider response and may differ. | priority | +| `Status` | `*int64` | :heavy_check_mark: | HTTP status code from the provider | 200 | \ No newline at end of file diff --git a/docs/models/components/providersortconfig.mdx b/docs/models/components/providersortconfig.mdx index 886518613..aa7bef7f4 100644 --- a/docs/models/components/providersortconfig.mdx +++ b/docs/models/components/providersortconfig.mdx @@ -9,5 +9,5 @@ The provider sorting strategy (price, throughput, latency) | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `By` | optionalnullable.OptionalNullable[[components.By](../../models/components/by.mdx)] | ➖ | The provider sorting strategy (price, throughput, latency) | price | -| `Partition` | optionalnullable.OptionalNullable[[components.Partition](../../models/components/partition.mdx)] | ➖ | Partitioning strategy for sorting: "model" (default) groups endpoints by model before sorting (fallback models remain fallbacks), "none" sorts all endpoints together regardless of model. | model | \ No newline at end of file +| `By` | optionalnullable.OptionalNullable[[components.By](../../models/components/by.mdx)] | :heavy_minus_sign: | The provider sorting strategy (price, throughput, latency) | price | +| `Partition` | optionalnullable.OptionalNullable[[components.Partition](../../models/components/partition.mdx)] | :heavy_minus_sign: | Partitioning strategy for sorting: "model" (default) groups endpoints by model before sorting (fallback models remain fallbacks), "none" sorts all endpoints together regardless of model. | model | \ No newline at end of file diff --git a/docs/models/components/provisioninternresponse.mdx b/docs/models/components/provisioninternresponse.mdx deleted file mode 100644 index b66e8f3c4..000000000 --- a/docs/models/components/provisioninternresponse.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "ProvisionInternResponse" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Provisioning` | `bool` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/publicendpoint.mdx b/docs/models/components/publicendpoint.mdx index e96ace16e..5697a19d5 100644 --- a/docs/models/components/publicendpoint.mdx +++ b/docs/models/components/publicendpoint.mdx @@ -9,29 +9,29 @@ Information about a specific model endpoint | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContextLength` | `int64` | ✅ | N/A | | -| `LatencyLast30m` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | Latency percentiles in milliseconds over the last 30 minutes. Latency measures time to first token. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests. | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `MaxCompletionTokens` | `*int64` | ✅ | Maximum completion tokens for this endpoint. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens. | | -| `MaxPromptTokens` | `*int64` | ✅ | N/A | | -| `ModelID` | `string` | ✅ | The unique identifier for the model (permaslug) | openai/gpt-4 | -| `ModelName` | `string` | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `NativeTools` | map[string][components.NativeTools](../../models/components/nativetools.mdx) | ✅ | The server tools this endpoint accepts as the provider's own built-in tool (`engine: "native"`) instead of an OpenRouter engine, keyed by canonical `openrouter:*` name. Each value names the provider tool type the request is translated to. Where that tool runs (provider-side, or returned to the client as with Anthropic bash) is documented per tool. Empty when the provider has none. | \{
"openrouter:web_search": \{
"type": "web_search_20260209"
}
} | -| `PerfLast30mByWorkload` | [*components.PerfLast30mByWorkload](../../models/components/perflast30mbyworkload.mdx) | ➖ | Endpoint performance over the last 30 minutes, keyed by the kind of request served (e.g. `text_generation`, `image_generation`). Additive to the legacy singular latency and throughput fields; image and video generation report end-to-end latency. Only visible when authenticated with an API key or cookie. | | -| `Pricing` | [components.Pricing](../../models/components/pricing.mdx) | ✅ | N/A | | -| `ProviderName` | [components.ProviderName](../../models/components/providername.mdx) | ✅ | N/A | OpenAI | -| `Quantization` | [*components.Quantization](../../models/components/quantization.mdx) | ✅ | N/A | fp16 | -| `ServiceTier` | [*components.PublicServiceTier](../../models/components/publicservicetier.mdx) | ✅ | The service tier this endpoint sells, or null for a standard endpoint. The same value whether the provider selects the tier with a request parameter or with a dedicated model id. Always the canonical tier: priority covers the fast request alias and the turbo, highspeed, and prime provider model-id spellings, none of which this field reports. | priority | -| `Status` | [*components.EndpointStatus](../../models/components/endpointstatus.mdx) | ➖ | N/A | 0 | -| `SupportedParameters` | [][components.Parameter](../../models/components/parameter.mdx) | ✅ | N/A | | -| `SupportsDiarization` | `bool` | ✅ | Whether this STT endpoint can label each transcript segment with a speaker (speaker diarization). False when the endpoint has not declared support. | | -| `SupportsImageReference` | `*bool` | ➖ | Whether this TTS endpoint accepts an `image_url` reference describing the desired voice. Requests carrying an image reference are only routed to endpoints where this is true. | | -| `SupportsImplicitCaching` | `bool` | ✅ | N/A | | -| `SupportsMultipleAudioReferences` | `*bool` | ➖ | Whether this TTS endpoint accepts more than one `input_audio` reference clip per request. Requests carrying several clips are only routed to endpoints where this is true. | | -| `SupportsToolChoice` | [components.ToolChoiceSupport](../../models/components/toolchoicesupport.mdx) | ✅ | Per-variant `tool_choice` support. `tool_choice` in `supported_parameters` only says the parameter is accepted; these flags say which of its values passed testing. | \{
"auto": true,
"function": true,
"none": true,
"required": true
} | -| `SupportsVoiceCloning` | `*bool` | ➖ | Whether this TTS endpoint accepts inline reference audio (`input_references`) for stateless voice cloning. Requests carrying reference audio are only routed to endpoints where this is true. | | -| `Tag` | `string` | ✅ | N/A | | -| `ThroughputLast30m` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `UptimeLast1d` | `*float64` | ✅ | Uptime percentage over the last day: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic. | | -| `UptimeLast30m` | `*float64` | ✅ | N/A | | -| `UptimeLast5m` | `*float64` | ✅ | Uptime percentage over the last 5 minutes: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic. | | \ No newline at end of file +| `ContextLength` | `int64` | :heavy_check_mark: | N/A | | +| `LatencyLast30m` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | Latency percentiles in milliseconds over the last 30 minutes. Latency measures time to first token. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests. | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `MaxCompletionTokens` | `*int64` | :heavy_check_mark: | Maximum completion tokens for this endpoint. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens. | | +| `MaxPromptTokens` | `*int64` | :heavy_check_mark: | N/A | | +| `ModelID` | `string` | :heavy_check_mark: | The unique identifier for the model (permaslug) | openai/gpt-4 | +| `ModelName` | `string` | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `NativeTools` | map[string][components.NativeTools](../../models/components/nativetools.mdx) | :heavy_check_mark: | The server tools this endpoint accepts as the provider's own built-in tool (`engine: "native"`) instead of an OpenRouter engine, keyed by canonical `openrouter:*` name. Each value names the provider tool type the request is translated to. Where that tool runs (provider-side, or returned to the client as with Anthropic bash) is documented per tool. Empty when the provider has none. | \{
"openrouter:web_search": \{
"type": "web_search_20260209"
}
} | +| `PerfLast30mByWorkload` | [*components.PerfLast30mByWorkload](../../models/components/perflast30mbyworkload.mdx) | :heavy_minus_sign: | Endpoint performance over the last 30 minutes, keyed by the kind of request served (e.g. `text_generation`, `image_generation`). Additive to the legacy singular latency and throughput fields; image and video generation report end-to-end latency. Only visible when authenticated with an API key or cookie. | | +| `Pricing` | [components.Pricing](../../models/components/pricing.mdx) | :heavy_check_mark: | N/A | | +| `ProviderName` | [components.ProviderName](../../models/components/providername.mdx) | :heavy_check_mark: | N/A | OpenAI | +| `Quantization` | [*components.Quantization](../../models/components/quantization.mdx) | :heavy_check_mark: | N/A | fp16 | +| `ServiceTier` | [*components.PublicServiceTier](../../models/components/publicservicetier.mdx) | :heavy_check_mark: | The service tier this endpoint sells, or null for a standard endpoint. The same value whether the provider selects the tier with a request parameter or with a dedicated model id. Always the canonical tier: priority covers the fast request alias and the turbo, highspeed, and prime provider model-id spellings, none of which this field reports. | priority | +| `Status` | [*components.EndpointStatus](../../models/components/endpointstatus.mdx) | :heavy_minus_sign: | N/A | 0 | +| `SupportedParameters` | [][components.Parameter](../../models/components/parameter.mdx) | :heavy_check_mark: | N/A | | +| `SupportsDiarization` | `bool` | :heavy_check_mark: | Whether this STT endpoint can label each transcript segment with a speaker (speaker diarization). False when the endpoint has not declared support. | | +| `SupportsImageReference` | `*bool` | :heavy_minus_sign: | Whether this TTS endpoint accepts an `image_url` reference describing the desired voice. Requests carrying an image reference are only routed to endpoints where this is true. | | +| `SupportsImplicitCaching` | `bool` | :heavy_check_mark: | N/A | | +| `SupportsMultipleAudioReferences` | `*bool` | :heavy_minus_sign: | Whether this TTS endpoint accepts more than one `input_audio` reference clip per request. Requests carrying several clips are only routed to endpoints where this is true. | | +| `SupportsToolChoice` | [components.ToolChoiceSupport](../../models/components/toolchoicesupport.mdx) | :heavy_check_mark: | Per-variant `tool_choice` support. `tool_choice` in `supported_parameters` only says the parameter is accepted; these flags say which of its values passed testing. | \{
"auto": true,
"function": true,
"none": true,
"required": true
} | +| `SupportsVoiceCloning` | `*bool` | :heavy_minus_sign: | Whether this TTS endpoint accepts inline reference audio (`input_references`) for stateless voice cloning. Requests carrying reference audio are only routed to endpoints where this is true. | | +| `Tag` | `string` | :heavy_check_mark: | N/A | | +| `ThroughputLast30m` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `UptimeLast1d` | `*float64` | :heavy_check_mark: | Uptime percentage over the last day: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic. | | +| `UptimeLast30m` | `*float64` | :heavy_check_mark: | N/A | | +| `UptimeLast5m` | `*float64` | :heavy_check_mark: | Uptime percentage over the last 5 minutes: the share of minutes in which at least 80% of provider attempts succeeded, counting only minutes with 10 or more attempts. Rate-limited and caller-caused failures are excluded. Null when no minute had enough traffic. | | \ No newline at end of file diff --git a/docs/models/components/publicpricing.mdx b/docs/models/components/publicpricing.mdx index 79b50e554..68789233c 100644 --- a/docs/models/components/publicpricing.mdx +++ b/docs/models/components/publicpricing.mdx @@ -9,19 +9,19 @@ Pricing information for the model | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Audio` | `*string` | ➖ | Price in USD per audio input token | -| `AudioOutput` | `*string` | ➖ | Price in USD per audio output token | -| `Completion` | `string` | ✅ | Price in USD per token for completion (output) generation | -| `Discount` | `*float64` | ➖ | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) | -| `Image` | `*string` | ➖ | Price in USD per input image | -| `ImageOutput` | `*string` | ➖ | Price in USD per output image | -| `ImageToken` | `*string` | ➖ | Price in USD per image token | -| `InputAudioCache` | `*string` | ➖ | Price in USD per cached audio input token | -| `InputCacheRead` | `*string` | ➖ | Price in USD per cached input token (read) | -| `InputCacheWrite` | `*string` | ➖ | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. | -| `InputCacheWrite1h` | `*string` | ➖ | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. | -| `InternalReasoning` | `*string` | ➖ | Price in USD per internal reasoning token | -| `Overrides` | [][components.PricingOverride](../../models/components/pricingoverride.mdx) | ➖ | Conditional overrides of the base pricing (e.g. long-context or time-based pricing). An entry applies when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per key; price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies under default conditions. | -| `Prompt` | `string` | ✅ | Price in USD per token for prompt (input) processing | -| `Request` | `*string` | ➖ | Price in USD per request | -| `WebSearch` | `*string` | ➖ | Price in USD per web search | \ No newline at end of file +| `Audio` | `*string` | :heavy_minus_sign: | Price in USD per audio input token | +| `AudioOutput` | `*string` | :heavy_minus_sign: | Price in USD per audio output token | +| `Completion` | `string` | :heavy_check_mark: | Price in USD per token for completion (output) generation | +| `Discount` | `*float64` | :heavy_minus_sign: | Fractional discount applied to this endpoint's pricing; the price is multiplied by (1 - discount) (0 = no discount, 1 = free) | +| `Image` | `*string` | :heavy_minus_sign: | Price in USD per input image | +| `ImageOutput` | `*string` | :heavy_minus_sign: | Price in USD per output image | +| `ImageToken` | `*string` | :heavy_minus_sign: | Price in USD per image token | +| `InputAudioCache` | `*string` | :heavy_minus_sign: | Price in USD per cached audio input token | +| `InputCacheRead` | `*string` | :heavy_minus_sign: | Price in USD per cached input token (read) | +| `InputCacheWrite` | `*string` | :heavy_minus_sign: | Price per cache-write token, in USD per token. For providers with multiple cache TTLs (e.g. Anthropic), this is the default (5-minute) cache-write rate. | +| `InputCacheWrite1h` | `*string` | :heavy_minus_sign: | Price per 1-hour cache-write token, in USD per token. Only present for providers that price an extended (1-hour) cache TTL separately, such as Anthropic. | +| `InternalReasoning` | `*string` | :heavy_minus_sign: | Price in USD per internal reasoning token | +| `Overrides` | [][components.PricingOverride](../../models/components/pricingoverride.mdx) | :heavy_minus_sign: | Conditional overrides of the base pricing (e.g. long-context or time-based pricing). An entry applies when all of its condition fields (e.g. min_prompt_tokens, or the utc_start/utc_end time window) match the request; among applicable entries, later entries win per key; price keys absent from an entry inherit the base price. The top-level pricing keys always reflect the price that applies under default conditions. | +| `Prompt` | `string` | :heavy_check_mark: | Price in USD per token for prompt (input) processing | +| `Request` | `*string` | :heavy_minus_sign: | Price in USD per request | +| `WebSearch` | `*string` | :heavy_minus_sign: | Price in USD per web search | \ No newline at end of file diff --git a/docs/models/components/rangecapability.mdx b/docs/models/components/rangecapability.mdx index 041f8cca8..14bda3435 100644 --- a/docs/models/components/rangecapability.mdx +++ b/docs/models/components/rangecapability.mdx @@ -9,6 +9,6 @@ A parameter that accepts any value within an inclusive numeric range. | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Max` | `float64` | ✅ | N/A | -| `Min` | `float64` | ✅ | N/A | -| `Type` | [components.RangeCapabilityType](../../models/components/rangecapabilitytype.mdx) | ✅ | N/A | \ No newline at end of file +| `Max` | `float64` | :heavy_check_mark: | N/A | +| `Min` | `float64` | :heavy_check_mark: | N/A | +| `Type` | [components.RangeCapabilityType](../../models/components/rangecapabilitytype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/rankingoptions.mdx b/docs/models/components/rankingoptions.mdx index 0acf112f1..0ae1d4473 100644 --- a/docs/models/components/rankingoptions.mdx +++ b/docs/models/components/rankingoptions.mdx @@ -6,5 +6,5 @@ title: "RankingOptions" | Field | Type | Required | Description | | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `Ranker` | [*components.Ranker](../../models/components/ranker.mdx) | ➖ | N/A | -| `ScoreThreshold` | `*float64` | ➖ | N/A | \ No newline at end of file +| `Ranker` | [*components.Ranker](../../models/components/ranker.mdx) | :heavy_minus_sign: | N/A | +| `ScoreThreshold` | `*float64` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/rankingsdailyitem.mdx b/docs/models/components/rankingsdailyitem.mdx index 706723e51..6c3196e4d 100644 --- a/docs/models/components/rankingsdailyitem.mdx +++ b/docs/models/components/rankingsdailyitem.mdx @@ -6,6 +6,6 @@ title: "RankingsDailyItem" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Date` | `string` | ✅ | UTC calendar date the row is aggregated over (YYYY-MM-DD). | 2026-05-11 | -| `ModelPermaslug` | `string` | ✅ | Model variant permaslug (e.g. `openai/gpt-4o-2024-05-13`, `openai/gpt-4o-2024-05-13:free`). Non-default variants include a `:variant` suffix and are ranked as their own entry. The reserved value `other` denotes the aggregated row covering every model outside the daily top 50 for that date — always sorted last within its date. | openai/gpt-4o-2024-05-13 | -| `TotalTokens` | `string` | ✅ | Sum of `prompt_tokens + completion_tokens` for the day, returned as a decimal string so 64-bit values are not truncated. | 12345678 | \ No newline at end of file +| `Date` | `string` | :heavy_check_mark: | UTC calendar date the row is aggregated over (YYYY-MM-DD). | 2026-05-11 | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Model variant permaslug (e.g. `openai/gpt-4o-2024-05-13`, `openai/gpt-4o-2024-05-13:free`). Non-default variants include a `:variant` suffix and are ranked as their own entry. The reserved value `other` denotes the aggregated row covering every model outside the daily top 50 for that date — always sorted last within its date. | openai/gpt-4o-2024-05-13 | +| `TotalTokens` | `string` | :heavy_check_mark: | Sum of `prompt_tokens + completion_tokens` for the day, returned as a decimal string so 64-bit values are not truncated. | 12345678 | \ No newline at end of file diff --git a/docs/models/components/rankingsdailymeta.mdx b/docs/models/components/rankingsdailymeta.mdx index f5445091b..969521c40 100644 --- a/docs/models/components/rankingsdailymeta.mdx +++ b/docs/models/components/rankingsdailymeta.mdx @@ -6,7 +6,7 @@ title: "RankingsDailyMeta" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AsOf` | `string` | ✅ | ISO-8601 timestamp of when the response was generated. Reflects data-freshness because the underlying materialized view continuously ingests upstream events. | 2026-05-12T02:00:00.000Z | -| `EndDate` | `string` | ✅ | Resolved end of the date window (UTC, inclusive). | 2026-05-11 | -| `StartDate` | `string` | ✅ | Resolved start of the date window (UTC, inclusive). | 2026-04-12 | -| `Version` | [components.RankingsDailyMetaVersion](../../models/components/rankingsdailymetaversion.mdx) | ✅ | Dataset version. Field names and grain are stable for the life of `v1`. | | \ No newline at end of file +| `AsOf` | `string` | :heavy_check_mark: | ISO-8601 timestamp of when the response was generated. Reflects data-freshness because the underlying materialized view continuously ingests upstream events. | 2026-05-12T02:00:00.000Z | +| `EndDate` | `string` | :heavy_check_mark: | Resolved end of the date window (UTC, inclusive). | 2026-05-11 | +| `StartDate` | `string` | :heavy_check_mark: | Resolved start of the date window (UTC, inclusive). | 2026-04-12 | +| `Version` | [components.RankingsDailyMetaVersion](../../models/components/rankingsdailymetaversion.mdx) | :heavy_check_mark: | Dataset version. Field names and grain are stable for the life of `v1`. | | \ No newline at end of file diff --git a/docs/models/components/rankingsdailyresponse.mdx b/docs/models/components/rankingsdailyresponse.mdx index cd53d9add..69b871773 100644 --- a/docs/models/components/rankingsdailyresponse.mdx +++ b/docs/models/components/rankingsdailyresponse.mdx @@ -6,5 +6,5 @@ title: "RankingsDailyResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.RankingsDailyItem](../../models/components/rankingsdailyitem.mdx) | ✅ | Up to 51 rows per day — the top 50 public models by `total_tokens` for each UTC calendar date in the window, plus one aggregated `other` row summing every model outside that top 50 (omitted when the long tail is empty). Rows are sorted by `date` ascending, then by `total_tokens` descending, with `other` pinned last within its date. Ties between real models break alphabetically on `model_permaslug` so the order is stable across requests. | | -| `Meta` | [components.RankingsDailyMeta](../../models/components/rankingsdailymeta.mdx) | ✅ | N/A | \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
} | \ No newline at end of file +| `Data` | [][components.RankingsDailyItem](../../models/components/rankingsdailyitem.mdx) | :heavy_check_mark: | Up to 51 rows per day — the top 50 public models by `total_tokens` for each UTC calendar date in the window, plus one aggregated `other` row summing every model outside that top 50 (omitted when the long tail is empty). Rows are sorted by `date` ascending, then by `total_tokens` descending, with `other` pinned last within its date. Ties between real models break alphabetically on `model_permaslug` so the order is stable across requests. | | +| `Meta` | [components.RankingsDailyMeta](../../models/components/rankingsdailymeta.mdx) | :heavy_check_mark: | N/A | \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
} | \ No newline at end of file diff --git a/docs/models/components/reasoningconfig.mdx b/docs/models/components/reasoningconfig.mdx index 5841935d4..be18c63d1 100644 --- a/docs/models/components/reasoningconfig.mdx +++ b/docs/models/components/reasoningconfig.mdx @@ -6,9 +6,9 @@ title: "ReasoningConfig" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Context` | optionalnullable.OptionalNullable[[components.ReasoningContext](../../models/components/reasoningcontext.mdx)] | ➖ | Controls which reasoning is available to the model. `auto` uses the model default (same as omitting); `all_turns` includes reasoning from earlier turns passed in input; `current_turn` limits to the current turn only. Only supported by OpenAI GPT-5.6 and newer. | all_turns | -| `Effort` | optionalnullable.OptionalNullable[[components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | ➖ | N/A | medium | -| `Mode` | optionalnullable.OptionalNullable[[components.ReasoningMode](../../models/components/reasoningmode.mdx)] | ➖ | Selects the reasoning mode. `standard` is the default; `pro` engages deeper reasoning on models that support it, billed at standard token rates. Only supported by OpenAI GPT-5.6 and newer. | standard | -| `Summary` | optionalnullable.OptionalNullable[[components.ReasoningSummaryVerbosity](../../models/components/reasoningsummaryverbosity.mdx)] | ➖ | N/A | auto | -| `Enabled` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `MaxTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | \ No newline at end of file +| `Context` | optionalnullable.OptionalNullable[[components.ReasoningContext](../../models/components/reasoningcontext.mdx)] | :heavy_minus_sign: | Controls which reasoning is available to the model. `auto` uses the model default (same as omitting); `all_turns` includes reasoning from earlier turns passed in input; `current_turn` limits to the current turn only. Only supported by OpenAI GPT-5.6 and newer. | all_turns | +| `Effort` | optionalnullable.OptionalNullable[[components.ReasoningEffort](../../models/components/reasoningeffort.mdx)] | :heavy_minus_sign: | N/A | medium | +| `Mode` | optionalnullable.OptionalNullable[[components.ReasoningMode](../../models/components/reasoningmode.mdx)] | :heavy_minus_sign: | Selects the reasoning mode. `standard` is the default; `pro` engages deeper reasoning on models that support it, billed at standard token rates. Only supported by OpenAI GPT-5.6 and newer. | standard | +| `Summary` | optionalnullable.OptionalNullable[[components.ReasoningSummaryVerbosity](../../models/components/reasoningsummaryverbosity.mdx)] | :heavy_minus_sign: | N/A | auto | +| `Enabled` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `MaxTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningdeltaevent.mdx b/docs/models/components/reasoningdeltaevent.mdx index b873f0a17..6d30d8903 100644 --- a/docs/models/components/reasoningdeltaevent.mdx +++ b/docs/models/components/reasoningdeltaevent.mdx @@ -9,9 +9,9 @@ Event emitted when reasoning text delta is streamed | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ContentIndex` | `int64` | ✅ | N/A | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.ReasoningDeltaEventType](../../models/components/reasoningdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningDeltaEventType](../../models/components/reasoningdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/reasoningdetailencrypted.mdx b/docs/models/components/reasoningdetailencrypted.mdx index 1bc3f1123..29b6a2c11 100644 --- a/docs/models/components/reasoningdetailencrypted.mdx +++ b/docs/models/components/reasoningdetailencrypted.mdx @@ -9,8 +9,8 @@ Reasoning detail encrypted schema | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `Data` | `string` | ✅ | N/A | | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Index` | `*int64` | ➖ | N/A | | -| `Type` | [components.ReasoningDetailEncryptedType](../../models/components/reasoningdetailencryptedtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | N/A | | +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Index` | `*int64` | :heavy_minus_sign: | N/A | | +| `Type` | [components.ReasoningDetailEncryptedType](../../models/components/reasoningdetailencryptedtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningdetailservertoolcall.mdx b/docs/models/components/reasoningdetailservertoolcall.mdx index b170367b3..fbfa24ee1 100644 --- a/docs/models/components/reasoningdetailservertoolcall.mdx +++ b/docs/models/components/reasoningdetailservertoolcall.mdx @@ -9,11 +9,11 @@ Record of an OpenRouter server-tool invocation (e.g. openrouter:fusion), carried | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Arguments` | `string` | ✅ | N/A | | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Index` | `*int64` | ➖ | N/A | | -| `Result` | `string` | ✅ | N/A | | -| `ToolCallID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ToolName` | `string` | ✅ | N/A | | -| `Type` | [components.ReasoningDetailServerToolCallType](../../models/components/reasoningdetailservertoolcalltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Arguments` | `string` | :heavy_check_mark: | N/A | | +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Index` | `*int64` | :heavy_minus_sign: | N/A | | +| `Result` | `string` | :heavy_check_mark: | N/A | | +| `ToolCallID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ToolName` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.ReasoningDetailServerToolCallType](../../models/components/reasoningdetailservertoolcalltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningdetailsummary.mdx b/docs/models/components/reasoningdetailsummary.mdx index fbc66d186..27d2e923d 100644 --- a/docs/models/components/reasoningdetailsummary.mdx +++ b/docs/models/components/reasoningdetailsummary.mdx @@ -9,8 +9,8 @@ Reasoning detail summary schema | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Index` | `*int64` | ➖ | N/A | | -| `Summary` | `string` | ✅ | N/A | | -| `Type` | [components.ReasoningDetailSummaryType](../../models/components/reasoningdetailsummarytype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Index` | `*int64` | :heavy_minus_sign: | N/A | | +| `Summary` | `string` | :heavy_check_mark: | N/A | | +| `Type` | [components.ReasoningDetailSummaryType](../../models/components/reasoningdetailsummarytype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningdetailtext.mdx b/docs/models/components/reasoningdetailtext.mdx index 3d0608cce..2a8540c9f 100644 --- a/docs/models/components/reasoningdetailtext.mdx +++ b/docs/models/components/reasoningdetailtext.mdx @@ -9,9 +9,9 @@ Reasoning detail text schema | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Index` | `*int64` | ➖ | N/A | | -| `Signature` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Text` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Type` | [components.ReasoningDetailTextType](../../models/components/reasoningdetailtexttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Index` | `*int64` | :heavy_minus_sign: | N/A | | +| `Signature` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Text` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.ReasoningDetailTextType](../../models/components/reasoningdetailtexttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningdoneevent.mdx b/docs/models/components/reasoningdoneevent.mdx index c1a990496..154d52c52 100644 --- a/docs/models/components/reasoningdoneevent.mdx +++ b/docs/models/components/reasoningdoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when reasoning text streaming is complete | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ContentIndex` | `int64` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.ReasoningDoneEventType](../../models/components/reasoningdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningDoneEventType](../../models/components/reasoningdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/reasoningitem.mdx b/docs/models/components/reasoningitem.mdx index c96f38314..436dee9e7 100644 --- a/docs/models/components/reasoningitem.mdx +++ b/docs/models/components/reasoningitem.mdx @@ -9,11 +9,11 @@ Reasoning output item with signature and format extensions | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | ➖ | N/A | | -| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `ID` | `string` | ✅ | N/A | | -| `Status` | [*components.ReasoningItemStatusUnion](../../models/components/reasoningitemstatusunion.mdx) | ➖ | N/A | | -| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | | -| `Type` | [components.ReasoningItemType](../../models/components/reasoningitemtype.mdx) | ✅ | N/A | | -| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | ➖ | N/A | unknown | -| `Signature` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | \ No newline at end of file +| `Content` | optionalnullable.OptionalNullable[[][components.ReasoningTextContent](../../models/components/reasoningtextcontent.mdx)] | :heavy_minus_sign: | N/A | | +| `EncryptedContent` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [*components.ReasoningItemStatusUnion](../../models/components/reasoningitemstatusunion.mdx) | :heavy_minus_sign: | N/A | | +| `Summary` | [][components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.ReasoningItemType](../../models/components/reasoningitemtype.mdx) | :heavy_check_mark: | N/A | | +| `Format` | optionalnullable.OptionalNullable[[components.ReasoningFormat](../../models/components/reasoningformat.mdx)] | :heavy_minus_sign: | N/A | unknown | +| `Signature` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningsummarypartaddedevent.mdx b/docs/models/components/reasoningsummarypartaddedevent.mdx index 88e58daae..6b89dae44 100644 --- a/docs/models/components/reasoningsummarypartaddedevent.mdx +++ b/docs/models/components/reasoningsummarypartaddedevent.mdx @@ -9,9 +9,9 @@ Event emitted when a reasoning summary part is added | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `Part` | [components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | \{
"text": "Analyzed the problem using first principles",
"type": "summary_text"
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `SummaryIndex` | `int64` | ✅ | N/A | | -| `Type` | [components.ReasoningSummaryPartAddedEventType](../../models/components/reasoningsummarypartaddedeventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `Part` | [components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | \{
"text": "Analyzed the problem using first principles",
"type": "summary_text"
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `SummaryIndex` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.ReasoningSummaryPartAddedEventType](../../models/components/reasoningsummarypartaddedeventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningsummarypartdoneevent.mdx b/docs/models/components/reasoningsummarypartdoneevent.mdx index a1c758b8a..ef0f09aae 100644 --- a/docs/models/components/reasoningsummarypartdoneevent.mdx +++ b/docs/models/components/reasoningsummarypartdoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when a reasoning summary part is complete | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ItemID` | `string` | ✅ | N/A | | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `Part` | [components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | ✅ | N/A | \{
"text": "Analyzed the problem using first principles",
"type": "summary_text"
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `SummaryIndex` | `int64` | ✅ | N/A | | -| `Type` | [components.ReasoningSummaryPartDoneEventType](../../models/components/reasoningsummarypartdoneeventtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `Part` | [components.ReasoningSummaryText](../../models/components/reasoningsummarytext.mdx) | :heavy_check_mark: | N/A | \{
"text": "Analyzed the problem using first principles",
"type": "summary_text"
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `SummaryIndex` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.ReasoningSummaryPartDoneEventType](../../models/components/reasoningsummarypartdoneeventtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/reasoningsummarytext.mdx b/docs/models/components/reasoningsummarytext.mdx index c5551c16e..209174746 100644 --- a/docs/models/components/reasoningsummarytext.mdx +++ b/docs/models/components/reasoningsummarytext.mdx @@ -6,5 +6,5 @@ title: "ReasoningSummaryText" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.ReasoningSummaryTextType](../../models/components/reasoningsummarytexttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningSummaryTextType](../../models/components/reasoningsummarytexttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/reasoningsummarytextdeltaevent.mdx b/docs/models/components/reasoningsummarytextdeltaevent.mdx index 79da2425a..f79a9e10c 100644 --- a/docs/models/components/reasoningsummarytextdeltaevent.mdx +++ b/docs/models/components/reasoningsummarytextdeltaevent.mdx @@ -9,9 +9,9 @@ Event emitted when reasoning summary text delta is streamed | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `SummaryIndex` | `int64` | ✅ | N/A | -| `Type` | [components.ReasoningSummaryTextDeltaEventType](../../models/components/reasoningsummarytextdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `SummaryIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningSummaryTextDeltaEventType](../../models/components/reasoningsummarytextdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/reasoningsummarytextdoneevent.mdx b/docs/models/components/reasoningsummarytextdoneevent.mdx index 1b85d9efc..9692b4b60 100644 --- a/docs/models/components/reasoningsummarytextdoneevent.mdx +++ b/docs/models/components/reasoningsummarytextdoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when reasoning summary text streaming is complete | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `SummaryIndex` | `int64` | ✅ | N/A | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.ReasoningSummaryTextDoneEventType](../../models/components/reasoningsummarytextdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `SummaryIndex` | `int64` | :heavy_check_mark: | N/A | +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningSummaryTextDoneEventType](../../models/components/reasoningsummarytextdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/reasoningtextcontent.mdx b/docs/models/components/reasoningtextcontent.mdx index 1037d3ad6..cce8e4aa7 100644 --- a/docs/models/components/reasoningtextcontent.mdx +++ b/docs/models/components/reasoningtextcontent.mdx @@ -6,5 +6,5 @@ title: "ReasoningTextContent" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.ReasoningTextContentType](../../models/components/reasoningtextcontenttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ReasoningTextContentType](../../models/components/reasoningtextcontenttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/refusal.mdx b/docs/models/components/refusal.mdx index 1aac47f68..fc4089d59 100644 --- a/docs/models/components/refusal.mdx +++ b/docs/models/components/refusal.mdx @@ -6,7 +6,7 @@ title: "Refusal" | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | -| `TopLogprobs` | [][components.RefusalTopLogprob](../../models/components/refusaltoplogprob.mdx) | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | +| `TopLogprobs` | [][components.RefusalTopLogprob](../../models/components/refusaltoplogprob.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/refusaldeltaevent.mdx b/docs/models/components/refusaldeltaevent.mdx index 8c9c2f30f..1a2213c7c 100644 --- a/docs/models/components/refusaldeltaevent.mdx +++ b/docs/models/components/refusaldeltaevent.mdx @@ -9,9 +9,9 @@ Event emitted when a refusal delta is streamed | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ContentIndex` | `int64` | ✅ | N/A | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.RefusalDeltaEventType](../../models/components/refusaldeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.RefusalDeltaEventType](../../models/components/refusaldeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/refusaldoneevent.mdx b/docs/models/components/refusaldoneevent.mdx index 7c6ab6526..d4eaeff06 100644 --- a/docs/models/components/refusaldoneevent.mdx +++ b/docs/models/components/refusaldoneevent.mdx @@ -9,9 +9,9 @@ Event emitted when refusal streaming is complete | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ContentIndex` | `int64` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `Refusal` | `string` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.RefusalDoneEventType](../../models/components/refusaldoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `Refusal` | `string` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.RefusalDoneEventType](../../models/components/refusaldoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/refusaltoplogprob.mdx b/docs/models/components/refusaltoplogprob.mdx index 3436f87c5..fe97c5092 100644 --- a/docs/models/components/refusaltoplogprob.mdx +++ b/docs/models/components/refusaltoplogprob.mdx @@ -6,6 +6,6 @@ title: "RefusalTopLogprob" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/request.mdx b/docs/models/components/request.mdx index 66c917fba..db171aef5 100644 --- a/docs/models/components/request.mdx +++ b/docs/models/components/request.mdx @@ -6,5 +6,5 @@ title: "Request" | Field | Type | Required | Description | | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | -| `Body` | map[string]`any` | ✅ | Request payload for the batch `endpoint`. | -| `CustomID` | `string` | ✅ | N/A | \ No newline at end of file +| `Body` | map[string]`any` | :heavy_check_mark: | Request payload for the batch `endpoint`. | +| `CustomID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/requesttimeoutresponseerrordata.mdx b/docs/models/components/requesttimeoutresponseerrordata.mdx index 2939b6fa3..d49e08c06 100644 --- a/docs/models/components/requesttimeoutresponseerrordata.mdx +++ b/docs/models/components/requesttimeoutresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for RequestTimeoutResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/requireapproval.mdx b/docs/models/components/requireapproval.mdx index f926d7023..da9605a26 100644 --- a/docs/models/components/requireapproval.mdx +++ b/docs/models/components/requireapproval.mdx @@ -6,5 +6,5 @@ title: "RequireApproval" | Field | Type | Required | Description | | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `Always` | [*components.Always](../../models/components/always.mdx) | ➖ | N/A | -| `Never` | [*components.Never](../../models/components/never.mdx) | ➖ | N/A | \ No newline at end of file +| `Always` | [*components.Always](../../models/components/always.mdx) | :heavy_minus_sign: | N/A | +| `Never` | [*components.Never](../../models/components/never.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/rerank.mdx b/docs/models/components/rerank.mdx index 86b063287..bea622f31 100644 --- a/docs/models/components/rerank.mdx +++ b/docs/models/components/rerank.mdx @@ -6,6 +6,6 @@ title: "Rerank" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/responsehealingplugin.mdx b/docs/models/components/responsehealingplugin.mdx index b32c47cf5..6ca7b323d 100644 --- a/docs/models/components/responsehealingplugin.mdx +++ b/docs/models/components/responsehealingplugin.mdx @@ -6,5 +6,5 @@ title: "ResponseHealingPlugin" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Enabled` | `*bool` | ➖ | Set to false to disable the response-healing plugin for this request. Defaults to true. | -| `ID` | [components.ResponseHealingPluginID](../../models/components/responsehealingpluginid.mdx) | ✅ | N/A | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the response-healing plugin for this request. Defaults to true. | +| `ID` | [components.ResponseHealingPluginID](../../models/components/responsehealingpluginid.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/responseoutputtext.mdx b/docs/models/components/responseoutputtext.mdx index 06ad559e2..41a039c71 100644 --- a/docs/models/components/responseoutputtext.mdx +++ b/docs/models/components/responseoutputtext.mdx @@ -6,7 +6,7 @@ title: "ResponseOutputText" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Annotations` | [][components.OpenAIResponsesAnnotation](../../models/components/openairesponsesannotation.mdx) | ➖ | N/A | -| `Logprobs` | [][components.Logprob](../../models/components/logprob.mdx) | ➖ | N/A | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.ResponseOutputTextType](../../models/components/responseoutputtexttype.mdx) | ✅ | N/A | \ No newline at end of file +| `Annotations` | [][components.OpenAIResponsesAnnotation](../../models/components/openairesponsesannotation.mdx) | :heavy_minus_sign: | N/A | +| `Logprobs` | [][components.Logprob](../../models/components/logprob.mdx) | :heavy_minus_sign: | N/A | +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.ResponseOutputTextType](../../models/components/responseoutputtexttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/responseoutputtexttoplogprob.mdx b/docs/models/components/responseoutputtexttoplogprob.mdx index 70fbe7cad..ccf5cb7ce 100644 --- a/docs/models/components/responseoutputtexttoplogprob.mdx +++ b/docs/models/components/responseoutputtexttoplogprob.mdx @@ -6,6 +6,6 @@ title: "ResponseOutputTextTopLogprob" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bytes` | []`int64` | ✅ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_check_mark: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/responsesrequest.mdx b/docs/models/components/responsesrequest.mdx index 461650289..c338a1a08 100644 --- a/docs/models/components/responsesrequest.mdx +++ b/docs/models/components/responsesrequest.mdx @@ -9,44 +9,44 @@ Request schema for Responses endpoint | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Background` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Debug` | [*components.ChatDebugOptions](../../models/components/chatdebugoptions.mdx) | ➖ | Debug options for inspecting request transformations (streaming only) | \{
"echo_upstream_body": true
} | -| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | ➖ | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | -| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | | -| `ImageConfig` | map[string][components.ImageConfig](../../models/components/imageconfig.mdx) | ➖ | Provider-specific image configuration options. Keys and values vary by model/provider. See https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details. | \{
"aspect_ratio": "16:9",
"quality": "high"
} | -| `Include` | optionalnullable.OptionalNullable[[][components.ResponseIncludesEnum](../../models/components/responseincludesenum.mdx)] | ➖ | N/A | | -| `Input` | [*components.InputsUnion](../../models/components/inputsunion.mdx) | ➖ | Input for a response request - can be a string or array of items | [
\{
"content": "What is the weather today?",
"role": "user"
}
] | -| `Instructions` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `MaxOutputTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `MaxToolCalls` | optionalnullable.OptionalNullable[`int64`] | ➖ | Maximum number of server-tool (e.g. `openrouter:web_search`) agent steps the model may take during a request. Defaults to 30, which is also the maximum. Ignored when `stop_server_tools_when` is set. | 30 | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`string`] | ➖ | Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed. | \{
"session_id": "abc-def-ghi",
"user_id": "123"
} | -| `Modalities` | [][components.OutputModalityEnum](../../models/components/outputmodalityenum.mdx) | ➖ | Output modalities for the response. Supported values are "text" and "image". | [
"text",
"image"
] | -| `Model` | `*string` | ➖ | N/A | | -| `Models` | []`string` | ➖ | N/A | | -| `ParallelToolCalls` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Plugins` | [][components.ResponsesRequestPlugin](../../models/components/responsesrequestplugin.mdx) | ➖ | Plugins you want to enable for this request, including their settings. | | -| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | | -| `PreviousResponseID` | `any` | ➖ | Not supported on this proxy. Each response request is independent: no responses are stored, so a previous response cannot be referenced. Requests with a non-null value are rejected with a 400 error. Send the full conversation history in `input` instead. | | -| `Prompt` | optionalnullable.OptionalNullable[[components.StoredPromptTemplate](../../models/components/storedprompttemplate.mdx)] | ➖ | N/A | \{
"id": "prompt-abc123",
"variables": \{
"name": "John"
}
} | -| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | ➖ | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | -| `Reasoning` | optionalnullable.OptionalNullable[[components.ReasoningConfig](../../models/components/reasoningconfig.mdx)] | ➖ | Configuration for reasoning mode in the response | \{
"enabled": true,
"summary": "auto"
} | -| `SafetyIdentifier` | optionalnullable.OptionalNullable[`string`] | ➖ | Recommended per-end-user identifier for abuse isolation. Use a stable ID, hash, or pseudonym. When a provider requires a user identity, OpenRouter folds it into the hashed identity sent upstream and never forwards it raw. If omitted, requests use an account-level identity, so provider policy blocks can affect the whole account. | user-123 | -| `ServiceTier` | optionalnullable.OptionalNullable[[components.ResponsesRequestServiceTier](../../models/components/responsesrequestservicetier.mdx)] | ➖ | The service tier to use for processing this request. `fast` is accepted as an alias for `priority`. `ultrafast` prefers ultrafast endpoints and falls back to `priority`, then default endpoints. | | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | -| `Stop` | optionalnullable.OptionalNullable[[components.ResponsesRequestStop](../../models/components/responsesrequeststop.mdx)] | ➖ | Stop sequences (up to 4) | [
"\n"
] | -| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | ➖ | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | -| `Store` | `*bool` | ➖ | N/A | | -| `Stream` | `*bool` | ➖ | N/A | | -| `Temperature` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | | -| `Text` | [*components.TextExtendedConfig](../../models/components/textextendedconfig.mdx) | ➖ | Text output configuration including format and verbosity | \{
"format": \{
"type": "text"
}
} | -| `ToolChoice` | [*components.OpenAIResponsesToolChoiceUnion](../../models/components/openairesponsestoolchoiceunion.mdx) | ➖ | N/A | auto | -| `Tools` | [][components.ResponsesRequestToolUnion](../../models/components/responsesrequesttoolunion.mdx) | ➖ | N/A | | -| `TopK` | `*int64` | ➖ | N/A | | -| `TopLogprobs` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `TopP` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `Truncation` | optionalnullable.OptionalNullable[[components.OpenAIResponsesTruncation](../../models/components/openairesponsestruncation.mdx)] | ➖ | N/A | auto | -| `User` | `*string` | ➖ | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters. | | \ No newline at end of file +| `Background` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Debug` | [*components.ChatDebugOptions](../../models/components/chatdebugoptions.mdx) | :heavy_minus_sign: | Debug options for inspecting request transformations (streaming only) | \{
"echo_upstream_body": true
} | +| `DeferredTools` | [*components.DeferredToolsControl](../../models/components/deferredtoolscontrol.mdx) | :heavy_minus_sign: | Opt-in versioned router-level deferred-tool protocol. Replay assistant reasoning unchanged on continuation; keep the catalog unchanged. | \{
"profile": "portable",
"protocol": "v1",
"search": \{
"max_results": 5,
"type": "bm25"
},
"validation": "runtime"
} | +| `FrequencyPenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | | +| `ImageConfig` | map[string][components.ImageConfig](../../models/components/imageconfig.mdx) | :heavy_minus_sign: | Provider-specific image configuration options. Keys and values vary by model/provider. See https://openrouter.ai/docs/guides/overview/multimodal/image-generation for more details. | \{
"aspect_ratio": "16:9",
"quality": "high"
} | +| `Include` | optionalnullable.OptionalNullable[[][components.ResponseIncludesEnum](../../models/components/responseincludesenum.mdx)] | :heavy_minus_sign: | N/A | | +| `Input` | [*components.InputsUnion](../../models/components/inputsunion.mdx) | :heavy_minus_sign: | Input for a response request - can be a string or array of items | [
\{
"content": "What is the weather today?",
"role": "user"
}
] | +| `Instructions` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `MaxOutputTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `MaxToolCalls` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Maximum number of server-tool (e.g. `openrouter:web_search`) agent steps the model may take during a request. Defaults to 30, which is also the maximum. Ignored when `stop_server_tools_when` is set. | 30 | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`string`] | :heavy_minus_sign: | Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed. | \{
"session_id": "abc-def-ghi",
"user_id": "123"
} | +| `Modalities` | [][components.OutputModalityEnum](../../models/components/outputmodalityenum.mdx) | :heavy_minus_sign: | Output modalities for the response. Supported values are "text" and "image". | [
"text",
"image"
] | +| `Model` | `*string` | :heavy_minus_sign: | N/A | | +| `Models` | []`string` | :heavy_minus_sign: | N/A | | +| `ParallelToolCalls` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Plugins` | [][components.ResponsesRequestPlugin](../../models/components/responsesrequestplugin.mdx) | :heavy_minus_sign: | Plugins you want to enable for this request, including their settings. | | +| `PresencePenalty` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | | +| `PreviousResponseID` | `any` | :heavy_minus_sign: | Not supported on this proxy. Each response request is independent: no responses are stored, so a previous response cannot be referenced. Requests with a non-null value are rejected with a 400 error. Send the full conversation history in `input` instead. | | +| `Prompt` | optionalnullable.OptionalNullable[[components.StoredPromptTemplate](../../models/components/storedprompttemplate.mdx)] | :heavy_minus_sign: | N/A | \{
"id": "prompt-abc123",
"variables": \{
"name": "John"
}
} | +| `PromptCacheKey` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `PromptCacheOptions` | optionalnullable.OptionalNullable[[components.PromptCacheOptions](../../models/components/promptcacheoptions.mdx)] | :heavy_minus_sign: | Request-level prompt-cache controls. `mode: "explicit"` disables OpenAI-managed breakpoints so only blocks marked with `prompt_cache_breakpoint` are cached. `ttl` sets the minimum cache lifetime for every breakpoint the request writes: "30m" (default) or "12h" (billed at the higher 12h cache-write rate). Only supported by OpenAI GPT-5.6 and newer. | \{
"mode": "explicit",
"ttl": "30m"
} | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | When multiple model providers are available, optionally indicate your routing preference. | \{
"allow_fallbacks": true
} | +| `Reasoning` | optionalnullable.OptionalNullable[[components.ReasoningConfig](../../models/components/reasoningconfig.mdx)] | :heavy_minus_sign: | Configuration for reasoning mode in the response | \{
"enabled": true,
"summary": "auto"
} | +| `SafetyIdentifier` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Recommended per-end-user identifier for abuse isolation. Use a stable ID, hash, or pseudonym. When a provider requires a user identity, OpenRouter folds it into the hashed identity sent upstream and never forwards it raw. If omitted, requests use an account-level identity, so provider policy blocks can affect the whole account. | user-123 | +| `ServiceTier` | optionalnullable.OptionalNullable[[components.ResponsesRequestServiceTier](../../models/components/responsesrequestservicetier.mdx)] | :heavy_minus_sign: | The service tier to use for processing this request. `fast` is accepted as an alias for `priority`. `ultrafast` prefers ultrafast endpoints and falls back to `priority`, then default endpoints. | | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). When provided, OpenRouter uses it as the sticky routing key, routing all requests in the session to the same provider to maximize prompt cache hits. Also used for observability grouping. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | | +| `Stop` | optionalnullable.OptionalNullable[[components.ResponsesRequestStop](../../models/components/responsesrequeststop.mdx)] | :heavy_minus_sign: | Stop sequences (up to 4) | [
"\n"
] | +| `StopServerToolsWhen` | [][components.StopServerToolsWhenCondition](../../models/components/stopservertoolswhencondition.mdx) | :heavy_minus_sign: | Stop conditions for the server-tool agent loop. Any condition firing halts the loop (OR logic). When set, this overrides `max_tool_calls`. When a condition fires while the model is still emitting tool calls, the pending tool calls are executed and one final turn is made with tool calls disabled so the response ends with a natural-language answer instead of an unfinished tool call. | [
\{
"step_count": 5,
"type": "step_count_is"
},
\{
"max_cost_in_dollars": 0.5,
"type": "max_cost"
}
] | +| `Store` | `*bool` | :heavy_minus_sign: | N/A | | +| `Stream` | `*bool` | :heavy_minus_sign: | N/A | | +| `Temperature` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | | +| `Text` | [*components.TextExtendedConfig](../../models/components/textextendedconfig.mdx) | :heavy_minus_sign: | Text output configuration including format and verbosity | \{
"format": \{
"type": "text"
}
} | +| `ToolChoice` | [*components.OpenAIResponsesToolChoiceUnion](../../models/components/openairesponsestoolchoiceunion.mdx) | :heavy_minus_sign: | N/A | auto | +| `Tools` | [][components.ResponsesRequestToolUnion](../../models/components/responsesrequesttoolunion.mdx) | :heavy_minus_sign: | N/A | | +| `TopK` | `*int64` | :heavy_minus_sign: | N/A | | +| `TopLogprobs` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `TopP` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `Truncation` | optionalnullable.OptionalNullable[[components.OpenAIResponsesTruncation](../../models/components/openairesponsestruncation.mdx)] | :heavy_minus_sign: | N/A | auto | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 256 characters. | | \ No newline at end of file diff --git a/docs/models/components/responsesrequesttoolfunction.mdx b/docs/models/components/responsesrequesttoolfunction.mdx index f7862e546..be2555c3b 100644 --- a/docs/models/components/responsesrequesttoolfunction.mdx +++ b/docs/models/components/responsesrequesttoolfunction.mdx @@ -9,12 +9,12 @@ Function tool definition | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Parameters` | map[string]`any` | ✅ | N/A | | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Type` | [components.ResponsesRequestType](../../models/components/responsesrequesttype.mdx) | ✅ | N/A | | -| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.ResponsesRequestAllowedCaller](../../models/components/responsesrequestallowedcaller.mdx)] | ➖ | N/A | | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | -| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | \ No newline at end of file +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Parameters` | map[string]`any` | :heavy_check_mark: | N/A | | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.ResponsesRequestType](../../models/components/responsesrequesttype.mdx) | :heavy_check_mark: | N/A | | +| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.ResponsesRequestAllowedCaller](../../models/components/responsesrequestallowedcaller.mdx)] | :heavy_minus_sign: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | +| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/responsesstreamingresponse.mdx b/docs/models/components/responsesstreamingresponse.mdx index 938e32451..19b424ff7 100644 --- a/docs/models/components/responsesstreamingresponse.mdx +++ b/docs/models/components/responsesstreamingresponse.mdx @@ -6,4 +6,4 @@ title: "ResponsesStreamingResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Data` | [components.StreamEvents](../../models/components/streamevents.mdx) | ✅ | Union of all possible event types emitted during response streaming | \{
"response": \{
"completed_at": null,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "in_progress",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null
},
"sequence_number": 0,
"type": "response.created"
} | \ No newline at end of file +| `Data` | [components.StreamEvents](../../models/components/streamevents.mdx) | :heavy_check_mark: | Union of all possible event types emitted during response streaming | \{
"response": \{
"completed_at": null,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "in_progress",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null
},
"sequence_number": 0,
"type": "response.created"
} | \ No newline at end of file diff --git a/docs/models/components/result.mdx b/docs/models/components/result.mdx index 81e3cb179..53310a7bd 100644 --- a/docs/models/components/result.mdx +++ b/docs/models/components/result.mdx @@ -6,7 +6,7 @@ title: "Result" | Field | Type | Required | Description | | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | --------------------------------------------------------------------------------- | -| `CustomID` | `string` | ✅ | N/A | -| `Error` | [*components.ResultError](../../models/components/resulterror.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Response` | [*components.BatchObjectResponse](../../models/components/batchobjectresponse.mdx) | ✅ | N/A | \ No newline at end of file +| `CustomID` | `string` | :heavy_check_mark: | N/A | +| `Error` | [*components.ResultError](../../models/components/resulterror.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Response` | [*components.BatchObjectResponse](../../models/components/batchobjectresponse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/resulterror.mdx b/docs/models/components/resulterror.mdx index 869c3b692..73afd94b6 100644 --- a/docs/models/components/resulterror.mdx +++ b/docs/models/components/resulterror.mdx @@ -6,7 +6,7 @@ title: "ResultError" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------- | -| `ErrorType` | [*components.APIErrorType](../../models/components/apierrortype.mdx) | ➖ | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | -| `Message` | `string` | ✅ | N/A | | -| `Param` | `*string` | ✅ | N/A | | -| `Type` | `string` | ✅ | N/A | | \ No newline at end of file +| `ErrorType` | [*components.APIErrorType](../../models/components/apierrortype.mdx) | :heavy_minus_sign: | Canonical OpenRouter error type, stable across all API formats | rate_limit_exceeded | +| `Message` | `string` | :heavy_check_mark: | N/A | | +| `Param` | `*string` | :heavy_check_mark: | N/A | | +| `Type` | `string` | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/route.mdx b/docs/models/components/route.mdx deleted file mode 100644 index c5ebf7043..000000000 --- a/docs/models/components/route.mdx +++ /dev/null @@ -1,13 +0,0 @@ ---- -title: "Route" ---- - -The daemon request the proof is for. When present the response also carries the single-use, route-bound proof (`x-ori-invoke-signature-v2`, `x-ori-invoke-nonce`). - - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `Method` | [components.SignInternDaemonRequestMethod](../../models/components/signinterndaemonrequestmethod.mdx) | ✅ | The HTTP method of the daemon request. | | -| `Path` | `string` | ✅ | The daemon request path, percent-encoded as sent, without origin or query. The route-bound proof admits only this path. | /api/invoke | \ No newline at end of file diff --git a/docs/models/components/routerattempt.mdx b/docs/models/components/routerattempt.mdx index d2cff8aa2..0335b6ccf 100644 --- a/docs/models/components/routerattempt.mdx +++ b/docs/models/components/routerattempt.mdx @@ -6,6 +6,6 @@ title: "RouterAttempt" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Model` | `string` | ✅ | N/A | -| `Provider` | `string` | ✅ | N/A | -| `Status` | `int64` | ✅ | N/A | \ No newline at end of file +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Provider` | `string` | :heavy_check_mark: | N/A | +| `Status` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/routerparams.mdx b/docs/models/components/routerparams.mdx index 45e2a55dc..538d4b72d 100644 --- a/docs/models/components/routerparams.mdx +++ b/docs/models/components/routerparams.mdx @@ -6,7 +6,7 @@ title: "RouterParams" | Field | Type | Required | Description | Example | | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | -| `QualityFloor` | `*float64` | ➖ | N/A | | -| `ThroughputFloor` | `*float64` | ➖ | N/A | | -| `VersionGroup` | `*string` | ➖ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"version_group": "anthropic/claude-sonnet-4"
} | \ No newline at end of file +| `QualityFloor` | `*float64` | :heavy_minus_sign: | N/A | | +| `ThroughputFloor` | `*float64` | :heavy_minus_sign: | N/A | | +| `VersionGroup` | `*string` | :heavy_minus_sign: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"version_group": "anthropic/claude-sonnet-4"
} | \ No newline at end of file diff --git a/docs/models/components/rule.mdx b/docs/models/components/rule.mdx index 60fcf3324..5f0969ebf 100644 --- a/docs/models/components/rule.mdx +++ b/docs/models/components/rule.mdx @@ -6,6 +6,6 @@ title: "Rule" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `Field` | [components.Field](../../models/components/field.mdx) | ✅ | N/A | -| `Operator` | [components.Operator](../../models/components/operator.mdx) | ✅ | N/A | -| `Value` | [*components.ObservabilityFilterRuleGroupValue](../../models/components/observabilityfilterrulegroupvalue.mdx) | ➖ | N/A | \ No newline at end of file +| `Field` | [components.Field](../../models/components/field.mdx) | :heavy_check_mark: | N/A | +| `Operator` | [components.Operator](../../models/components/operator.mdx) | :heavy_check_mark: | N/A | +| `Value` | [*components.ObservabilityFilterRuleGroupValue](../../models/components/observabilityfilterrulegroupvalue.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/scimgroup.mdx b/docs/models/components/scimgroup.mdx index b20ed17b5..5d9ced078 100644 --- a/docs/models/components/scimgroup.mdx +++ b/docs/models/components/scimgroup.mdx @@ -6,9 +6,9 @@ title: "ScimGroup" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `CreatedAt` | `string` | ✅ | N/A | -| `DisplayName` | `string` | ✅ | N/A | -| `ExternalID` | `*string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `OrganizationID` | `string` | ✅ | N/A | -| `UpdatedAt` | `string` | ✅ | N/A | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | +| `DisplayName` | `string` | :heavy_check_mark: | N/A | +| `ExternalID` | `*string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `OrganizationID` | `string` | :heavy_check_mark: | N/A | +| `UpdatedAt` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/scimgroupmapping.mdx b/docs/models/components/scimgroupmapping.mdx index 5e8846fb2..3d314dd09 100644 --- a/docs/models/components/scimgroupmapping.mdx +++ b/docs/models/components/scimgroupmapping.mdx @@ -6,10 +6,10 @@ title: "ScimGroupMapping" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `OrganizationID` | `string` | ✅ | N/A | -| `Role` | [components.ScimGroupMappingRole](../../models/components/scimgroupmappingrole.mdx) | ✅ | N/A | -| `ScimGroupID` | `string` | ✅ | N/A | -| `UpdatedAt` | `string` | ✅ | N/A | -| `WorkspaceID` | `string` | ✅ | N/A | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `OrganizationID` | `string` | :heavy_check_mark: | N/A | +| `Role` | [components.ScimGroupMappingRole](../../models/components/scimgroupmappingrole.mdx) | :heavy_check_mark: | N/A | +| `ScimGroupID` | `string` | :heavy_check_mark: | N/A | +| `UpdatedAt` | `string` | :heavy_check_mark: | N/A | +| `WorkspaceID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/scimsyncjob.mdx b/docs/models/components/scimsyncjob.mdx index 1578d9ab2..4815f0cc9 100644 --- a/docs/models/components/scimsyncjob.mdx +++ b/docs/models/components/scimsyncjob.mdx @@ -6,11 +6,11 @@ title: "ScimSyncJob" | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | Time when the sync job was created. | -| `DeletedGroups` | `*int64` | ✅ | Number of groups deleted, when the job completed successfully. | -| `ErrorMessage` | `*string` | ✅ | Stable error message when the job failed. | -| `FinishedAt` | `*string` | ✅ | Time when synchronization finished. | -| `ID` | `string` | ✅ | Unique identifier for the sync job. | -| `StartedAt` | `*string` | ✅ | Time when synchronization started. | -| `Status` | [components.ScimSyncJobStatus](../../models/components/scimsyncjobstatus.mdx) | ✅ | Current status of the sync job: queued, running, succeeded, or failed. | -| `SyncedGroups` | `*int64` | ✅ | Number of groups synchronized, when the job completed successfully. | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | Time when the sync job was created. | +| `DeletedGroups` | `*int64` | :heavy_check_mark: | Number of groups deleted, when the job completed successfully. | +| `ErrorMessage` | `*string` | :heavy_check_mark: | Stable error message when the job failed. | +| `FinishedAt` | `*string` | :heavy_check_mark: | Time when synchronization finished. | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the sync job. | +| `StartedAt` | `*string` | :heavy_check_mark: | Time when synchronization started. | +| `Status` | [components.ScimSyncJobStatus](../../models/components/scimsyncjobstatus.mdx) | :heavy_check_mark: | Current status of the sync job: queued, running, succeeded, or failed. | +| `SyncedGroups` | `*int64` | :heavy_check_mark: | Number of groups synchronized, when the job completed successfully. | \ No newline at end of file diff --git a/docs/models/components/searchmodelsservertoolconfig.mdx b/docs/models/components/searchmodelsservertoolconfig.mdx index 7e3f9d02a..cbde7e888 100644 --- a/docs/models/components/searchmodelsservertoolconfig.mdx +++ b/docs/models/components/searchmodelsservertoolconfig.mdx @@ -9,4 +9,4 @@ Configuration for the openrouter:experimental__search_models server tool | Field | Type | Required | Description | Example | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `MaxResults` | `*int64` | ➖ | Maximum number of models to return. Defaults to 5, max 20. | 5 | \ No newline at end of file +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of models to return. Defaults to 5, max 20. | 5 | \ No newline at end of file diff --git a/docs/models/components/searchmodelsservertoolopenrouter.mdx b/docs/models/components/searchmodelsservertoolopenrouter.mdx index 304390773..29bb89eba 100644 --- a/docs/models/components/searchmodelsservertoolopenrouter.mdx +++ b/docs/models/components/searchmodelsservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: searches and filters AI models available on Ope | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | ➖ | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | -| `Type` | [components.SearchModelsServerToolOpenRouterType](../../models/components/searchmodelsservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.SearchModelsServerToolConfig](../../models/components/searchmodelsservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:experimental__search_models server tool | \{
"max_results": 5
} | +| `Type` | [components.SearchModelsServerToolOpenRouterType](../../models/components/searchmodelsservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/security.mdx b/docs/models/components/security.mdx index 8801243a1..8015ad3c4 100644 --- a/docs/models/components/security.mdx +++ b/docs/models/components/security.mdx @@ -6,4 +6,4 @@ title: "Security" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `APIKey` | `*string` | ➖ | N/A | \ No newline at end of file +| `APIKey` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/server.mdx b/docs/models/components/server.mdx deleted file mode 100644 index 3f2d9754b..000000000 --- a/docs/models/components/server.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "Server" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Host` | `*string` | ✅ | N/A | -| `Surface` | `string` | ✅ | N/A | -| `Transport` | `string` | ✅ | N/A | -| `URL` | `*string` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/servertool.mdx b/docs/models/components/servertool.mdx index b3997b2df..1728fb988 100644 --- a/docs/models/components/servertool.mdx +++ b/docs/models/components/servertool.mdx @@ -6,18 +6,18 @@ title: "ServerTool" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Aliases` | [][components.ServerToolInputName](../../models/components/servertoolinputname.mdx) | ✅ | Every spelling accepted in `tools[].type` for this tool, including the canonical `id`, and what the call surfaces as under each | | -| `DefaultEngine` | `*string` | ✅ | The engine a request without `parameters.engine` (or with `engine: "auto"`) runs on; `native` applies where the endpoint runs the tool itself, otherwise `fallback_engine`. A request pinned to a data region skips either engine when its `data_regions` does not list that region. Null for a tool without an engine parameter | native | -| `DocsURL` | `string` | ✅ | N/A | | -| `Engines` | [][components.ServerToolEngine](../../models/components/servertoolengine.mdx) | ✅ | N/A | | -| `FallbackEngine` | `*string` | ✅ | The engine an unpinned request runs on when `default_engine` is `native` and the endpoint does not run the tool itself; null when there is no fallback | exa | -| `ID` | `string` | ✅ | Canonical `openrouter:*` name; the stable `tools[].type` on every API format in `supported_api_formats` | openrouter:web_search | -| `InputSchema` | map[string]`any` | ✅ | JSON Schema of the arguments the model emits when calling the tool | \{
"properties": \{},
"type": "object"
} | -| `Name` | `string` | ✅ | N/A | Web search | -| `NativeSupport` | [components.ServerToolNativeSupport](../../models/components/servertoolnativesupport.mdx) | ✅ | Endpoints whose provider runs this tool itself during inference. Zero for tools no provider runs natively. | \{
"endpoint_count": 18,
"model_count": 12
} | -| `OutputSchema` | map[string]`any` | ✅ | JSON Schema of the result returned to the model; null when undeclared | \{
"properties": \{},
"type": "object"
} | -| `ParametersSchema` | map[string]`any` | ✅ | JSON Schema for the caller-side `tools[].parameters` object | \{
"properties": \{},
"type": "object"
} | -| `Status` | [components.ServerToolStatus](../../models/components/servertoolstatus.mdx) | ✅ | N/A | active | -| `Summary` | `string` | ✅ | One sentence for cards and search results; never sent to a model | | -| `SupportedAPIFormats` | [][components.ServerToolSupportedAPIFormat](../../models/components/servertoolsupportedapiformat.mdx) | ✅ | N/A | | -| `ToolDescription` | `string` | ✅ | The description sent upstream as the function tool description | | \ No newline at end of file +| `Aliases` | [][components.ServerToolInputName](../../models/components/servertoolinputname.mdx) | :heavy_check_mark: | Every spelling accepted in `tools[].type` for this tool, including the canonical `id`, and what the call surfaces as under each | | +| `DefaultEngine` | `*string` | :heavy_check_mark: | The engine a request without `parameters.engine` (or with `engine: "auto"`) runs on; `native` applies where the endpoint runs the tool itself, otherwise `fallback_engine`. A request pinned to a data region skips either engine when its `data_regions` does not list that region. Null for a tool without an engine parameter | native | +| `DocsURL` | `string` | :heavy_check_mark: | N/A | | +| `Engines` | [][components.ServerToolEngine](../../models/components/servertoolengine.mdx) | :heavy_check_mark: | N/A | | +| `FallbackEngine` | `*string` | :heavy_check_mark: | The engine an unpinned request runs on when `default_engine` is `native` and the endpoint does not run the tool itself; null when there is no fallback | exa | +| `ID` | `string` | :heavy_check_mark: | Canonical `openrouter:*` name; the stable `tools[].type` on every API format in `supported_api_formats` | openrouter:web_search | +| `InputSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema of the arguments the model emits when calling the tool | \{
"properties": \{},
"type": "object"
} | +| `Name` | `string` | :heavy_check_mark: | N/A | Web search | +| `NativeSupport` | [components.ServerToolNativeSupport](../../models/components/servertoolnativesupport.mdx) | :heavy_check_mark: | Endpoints whose provider runs this tool itself during inference. Zero for tools no provider runs natively. | \{
"endpoint_count": 18,
"model_count": 12
} | +| `OutputSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema of the result returned to the model; null when undeclared | \{
"properties": \{},
"type": "object"
} | +| `ParametersSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema for the caller-side `tools[].parameters` object | \{
"properties": \{},
"type": "object"
} | +| `Status` | [components.ServerToolStatus](../../models/components/servertoolstatus.mdx) | :heavy_check_mark: | N/A | active | +| `Summary` | `string` | :heavy_check_mark: | One sentence for cards and search results; never sent to a model | | +| `SupportedAPIFormats` | [][components.ServerToolSupportedAPIFormat](../../models/components/servertoolsupportedapiformat.mdx) | :heavy_check_mark: | N/A | | +| `ToolDescription` | `string` | :heavy_check_mark: | The description sent upstream as the function tool description | | \ No newline at end of file diff --git a/docs/models/components/servertooldetails.mdx b/docs/models/components/servertooldetails.mdx index 2881f17dd..57eccdd99 100644 --- a/docs/models/components/servertooldetails.mdx +++ b/docs/models/components/servertooldetails.mdx @@ -6,18 +6,18 @@ title: "ServerToolDetails" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Aliases` | [][components.ServerToolInputName](../../models/components/servertoolinputname.mdx) | ✅ | Every spelling accepted in `tools[].type` for this tool, including the canonical `id`, and what the call surfaces as under each | | -| `DefaultEngine` | `*string` | ✅ | The engine a request without `parameters.engine` (or with `engine: "auto"`) runs on; `native` applies where the endpoint runs the tool itself, otherwise `fallback_engine`. A request pinned to a data region skips either engine when its `data_regions` does not list that region. Null for a tool without an engine parameter | native | -| `DocsURL` | `string` | ✅ | N/A | | -| `Engines` | [][components.ServerToolEngine](../../models/components/servertoolengine.mdx) | ✅ | N/A | | -| `FallbackEngine` | `*string` | ✅ | The engine an unpinned request runs on when `default_engine` is `native` and the endpoint does not run the tool itself; null when there is no fallback | exa | -| `ID` | `string` | ✅ | Canonical `openrouter:*` name; the stable `tools[].type` on every API format in `supported_api_formats` | openrouter:web_search | -| `InputSchema` | map[string]`any` | ✅ | JSON Schema of the arguments the model emits when calling the tool | \{
"properties": \{},
"type": "object"
} | -| `Name` | `string` | ✅ | N/A | Web search | -| `NativeSupport` | [components.NativeSupport](../../models/components/nativesupport.mdx) | ✅ | Endpoints whose provider runs this tool itself during inference. Zero for tools no provider runs natively. | \{
"endpoint_count": 18,
"model_count": 12
} | -| `OutputSchema` | map[string]`any` | ✅ | JSON Schema of the result returned to the model; null when undeclared | \{
"properties": \{},
"type": "object"
} | -| `ParametersSchema` | map[string]`any` | ✅ | JSON Schema for the caller-side `tools[].parameters` object | \{
"properties": \{},
"type": "object"
} | -| `Status` | [components.ServerToolDetailsStatus](../../models/components/servertooldetailsstatus.mdx) | ✅ | N/A | active | -| `Summary` | `string` | ✅ | One sentence for cards and search results; never sent to a model | | -| `SupportedAPIFormats` | [][components.ServerToolDetailsSupportedAPIFormat](../../models/components/servertooldetailssupportedapiformat.mdx) | ✅ | N/A | | -| `ToolDescription` | `string` | ✅ | The description sent upstream as the function tool description | | \ No newline at end of file +| `Aliases` | [][components.ServerToolInputName](../../models/components/servertoolinputname.mdx) | :heavy_check_mark: | Every spelling accepted in `tools[].type` for this tool, including the canonical `id`, and what the call surfaces as under each | | +| `DefaultEngine` | `*string` | :heavy_check_mark: | The engine a request without `parameters.engine` (or with `engine: "auto"`) runs on; `native` applies where the endpoint runs the tool itself, otherwise `fallback_engine`. A request pinned to a data region skips either engine when its `data_regions` does not list that region. Null for a tool without an engine parameter | native | +| `DocsURL` | `string` | :heavy_check_mark: | N/A | | +| `Engines` | [][components.ServerToolEngine](../../models/components/servertoolengine.mdx) | :heavy_check_mark: | N/A | | +| `FallbackEngine` | `*string` | :heavy_check_mark: | The engine an unpinned request runs on when `default_engine` is `native` and the endpoint does not run the tool itself; null when there is no fallback | exa | +| `ID` | `string` | :heavy_check_mark: | Canonical `openrouter:*` name; the stable `tools[].type` on every API format in `supported_api_formats` | openrouter:web_search | +| `InputSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema of the arguments the model emits when calling the tool | \{
"properties": \{},
"type": "object"
} | +| `Name` | `string` | :heavy_check_mark: | N/A | Web search | +| `NativeSupport` | [components.NativeSupport](../../models/components/nativesupport.mdx) | :heavy_check_mark: | Endpoints whose provider runs this tool itself during inference. Zero for tools no provider runs natively. | \{
"endpoint_count": 18,
"model_count": 12
} | +| `OutputSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema of the result returned to the model; null when undeclared | \{
"properties": \{},
"type": "object"
} | +| `ParametersSchema` | map[string]`any` | :heavy_check_mark: | JSON Schema for the caller-side `tools[].parameters` object | \{
"properties": \{},
"type": "object"
} | +| `Status` | [components.ServerToolDetailsStatus](../../models/components/servertooldetailsstatus.mdx) | :heavy_check_mark: | N/A | active | +| `Summary` | `string` | :heavy_check_mark: | One sentence for cards and search results; never sent to a model | | +| `SupportedAPIFormats` | [][components.ServerToolDetailsSupportedAPIFormat](../../models/components/servertooldetailssupportedapiformat.mdx) | :heavy_check_mark: | N/A | | +| `ToolDescription` | `string` | :heavy_check_mark: | The description sent upstream as the function tool description | | \ No newline at end of file diff --git a/docs/models/components/servertoolengine.mdx b/docs/models/components/servertoolengine.mdx index 1c5931a5b..153d0301a 100644 --- a/docs/models/components/servertoolengine.mdx +++ b/docs/models/components/servertoolengine.mdx @@ -6,12 +6,12 @@ title: "ServerToolEngine" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOK` | [components.BYOK](../../models/components/byok.mdx) | ✅ | Whether the engine needs the caller's own key, saved in plugin settings: `required` (OpenRouter holds none), `optional` (OpenRouter's key is used unless the caller saved one), or `none` | none | -| `DataRegions` | [][components.ServerToolEngineDataRegion](../../models/components/servertoolenginedataregion.mdx) | ✅ | The data regions whose requests this engine serves without leaving the region. A request pinned to a region can only use engines that list it; `global` is always listed. | [
"global",
"us"
] | -| `DefaultMode` | `*string` | ✅ | The `parameters.mode` a request without one runs and bills as; null for engines without modes. The `pricing[]` row with this `mode` is what an unmoded request bills | auto | -| `ExecutedBy` | [components.ServerToolExecutedBy](../../models/components/servertoolexecutedby.mdx) | ✅ | Who runs the tool call: the model provider during inference (`provider`), OpenRouter (`openrouter`), or the caller's application after the call is returned (`client`). | openrouter | -| `ID` | `*string` | ✅ | The `parameters.engine` value that selects this engine; null for the single engine of a tool without an engine parameter | exa | -| `Name` | `string` | ✅ | N/A | Exa | -| `Pricing` | [][components.ServerToolPrice](../../models/components/servertoolprice.mdx) | ✅ | The rows OpenRouter bills; non-empty exactly when `pricing_source` is `openrouter` | | -| `PricingDocURL` | `*string` | ✅ | Where the rates are documented when `pricing_source` is `provider` or `byok`; null otherwise | null | -| `PricingSource` | [components.PricingSource](../../models/components/pricingsource.mdx) | ✅ | Who bills the engine's calls beyond the model's tokens: `openrouter` (the `pricing` rows, from the caller's credits), `provider` (a per-call tool fee from the model's provider on the inference call, at its own rates), `byok` (the engine's vendor, against the caller's own key), or `none` (no charge) | openrouter | \ No newline at end of file +| `BYOK` | [components.BYOK](../../models/components/byok.mdx) | :heavy_check_mark: | Whether the engine needs the caller's own key, saved in plugin settings: `required` (OpenRouter holds none), `optional` (OpenRouter's key is used unless the caller saved one), or `none` | none | +| `DataRegions` | [][components.ServerToolEngineDataRegion](../../models/components/servertoolenginedataregion.mdx) | :heavy_check_mark: | The data regions whose requests this engine serves without leaving the region. A request pinned to a region can only use engines that list it; `global` is always listed. | [
"global",
"us"
] | +| `DefaultMode` | `*string` | :heavy_check_mark: | The `parameters.mode` a request without one runs and bills as; null for engines without modes. The `pricing[]` row with this `mode` is what an unmoded request bills | auto | +| `ExecutedBy` | [components.ServerToolExecutedBy](../../models/components/servertoolexecutedby.mdx) | :heavy_check_mark: | Who runs the tool call: the model provider during inference (`provider`), OpenRouter (`openrouter`), or the caller's application after the call is returned (`client`). | openrouter | +| `ID` | `*string` | :heavy_check_mark: | The `parameters.engine` value that selects this engine; null for the single engine of a tool without an engine parameter | exa | +| `Name` | `string` | :heavy_check_mark: | N/A | Exa | +| `Pricing` | [][components.ServerToolPrice](../../models/components/servertoolprice.mdx) | :heavy_check_mark: | The rows OpenRouter bills; non-empty exactly when `pricing_source` is `openrouter` | | +| `PricingDocURL` | `*string` | :heavy_check_mark: | Where the rates are documented when `pricing_source` is `provider` or `byok`; null otherwise | null | +| `PricingSource` | [components.PricingSource](../../models/components/pricingsource.mdx) | :heavy_check_mark: | Who bills the engine's calls beyond the model's tokens: `openrouter` (the `pricing` rows, from the caller's credits), `provider` (a per-call tool fee from the model's provider on the inference call, at its own rates), `byok` (the engine's vendor, against the caller's own key), or `none` (no charge) | openrouter | \ No newline at end of file diff --git a/docs/models/components/servertoolinputname.mdx b/docs/models/components/servertoolinputname.mdx index 72b810202..0092ef47e 100644 --- a/docs/models/components/servertoolinputname.mdx +++ b/docs/models/components/servertoolinputname.mdx @@ -6,6 +6,6 @@ title: "ServerToolInputName" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIFormats` | [][components.ServerToolInputNameAPIFormat](../../models/components/servertoolinputnameapiformat.mdx) | ✅ | API formats that accept this spelling in `tools[].type` | | -| `OutputNames` | [][components.ServerToolOutputName](../../models/components/servertooloutputname.mdx) | ✅ | What the call surfaces as on each accepting API format when requested under this spelling; a format is absent when the call is not visible to the caller | | -| `Type` | `string` | ✅ | N/A | web_search_20250305 | \ No newline at end of file +| `APIFormats` | [][components.ServerToolInputNameAPIFormat](../../models/components/servertoolinputnameapiformat.mdx) | :heavy_check_mark: | API formats that accept this spelling in `tools[].type` | | +| `OutputNames` | [][components.ServerToolOutputName](../../models/components/servertooloutputname.mdx) | :heavy_check_mark: | What the call surfaces as on each accepting API format when requested under this spelling; a format is absent when the call is not visible to the caller | | +| `Type` | `string` | :heavy_check_mark: | N/A | web_search_20250305 | \ No newline at end of file diff --git a/docs/models/components/servertoolnativemodel.mdx b/docs/models/components/servertoolnativemodel.mdx index 32ad2ac70..d1184a9ae 100644 --- a/docs/models/components/servertoolnativemodel.mdx +++ b/docs/models/components/servertoolnativemodel.mdx @@ -6,5 +6,5 @@ title: "ServerToolNativeModel" | Field | Type | Required | Description | Example | | --------------------------- | --------------------------- | --------------------------- | --------------------------- | --------------------------- | -| `Providers` | []`string` | ✅ | N/A | [
"Anthropic",
"Google"
] | -| `Slug` | `string` | ✅ | N/A | anthropic/claude-4.5-sonnet | \ No newline at end of file +| `Providers` | []`string` | :heavy_check_mark: | N/A | [
"Anthropic",
"Google"
] | +| `Slug` | `string` | :heavy_check_mark: | N/A | anthropic/claude-4.5-sonnet | \ No newline at end of file diff --git a/docs/models/components/servertoolnativesupport.mdx b/docs/models/components/servertoolnativesupport.mdx index c47ef8e64..a99eb2c60 100644 --- a/docs/models/components/servertoolnativesupport.mdx +++ b/docs/models/components/servertoolnativesupport.mdx @@ -9,5 +9,5 @@ Endpoints whose provider runs this tool itself during inference. Zero for tools | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `EndpointCount` | `int64` | ✅ | N/A | 18 | -| `ModelCount` | `int64` | ✅ | N/A | 12 | \ No newline at end of file +| `EndpointCount` | `int64` | :heavy_check_mark: | N/A | 18 | +| `ModelCount` | `int64` | :heavy_check_mark: | N/A | 12 | \ No newline at end of file diff --git a/docs/models/components/servertooloutputname.mdx b/docs/models/components/servertooloutputname.mdx index d6dd649e7..91081a7ef 100644 --- a/docs/models/components/servertooloutputname.mdx +++ b/docs/models/components/servertooloutputname.mdx @@ -6,6 +6,6 @@ title: "ServerToolOutputName" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- | -| `APIFormat` | [components.ServerToolOutputNameAPIFormat](../../models/components/servertooloutputnameapiformat.mdx) | ✅ | N/A | | -| `Name` | `*string` | ➖ | Anthropic Messages `server_tool_use` block `name`, when the call surfaces as one | web_search | -| `Type` | `string` | ✅ | Output item `type` on Responses, content block `type` on Anthropic Messages, `reasoning_details[].type` on Chat Completions | web_search_call | \ No newline at end of file +| `APIFormat` | [components.ServerToolOutputNameAPIFormat](../../models/components/servertooloutputnameapiformat.mdx) | :heavy_check_mark: | N/A | | +| `Name` | `*string` | :heavy_minus_sign: | Anthropic Messages `server_tool_use` block `name`, when the call surfaces as one | web_search | +| `Type` | `string` | :heavy_check_mark: | Output item `type` on Responses, content block `type` on Anthropic Messages, `reasoning_details[].type` on Chat Completions | web_search_call | \ No newline at end of file diff --git a/docs/models/components/servertoolprice.mdx b/docs/models/components/servertoolprice.mdx index 5557c1b23..1a81fcea2 100644 --- a/docs/models/components/servertoolprice.mdx +++ b/docs/models/components/servertoolprice.mdx @@ -6,7 +6,7 @@ title: "ServerToolPrice" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -| `MaxUnitsPerCall` | `int64` | ✅ | N/A | | -| `Mode` | `*string` | ✅ | The `parameters.mode` this price applies to; null for prices that do not depend on the mode. A request bills exactly one `request` row | auto | -| `Price` | `string` | ✅ | USD per unit, as a decimal string | 0.007 | -| `Unit` | `string` | ✅ | N/A | request | \ No newline at end of file +| `MaxUnitsPerCall` | `int64` | :heavy_check_mark: | N/A | | +| `Mode` | `*string` | :heavy_check_mark: | The `parameters.mode` this price applies to; null for prices that do not depend on the mode. A request bills exactly one `request` row | auto | +| `Price` | `string` | :heavy_check_mark: | USD per unit, as a decimal string | 0.007 | +| `Unit` | `string` | :heavy_check_mark: | N/A | request | \ No newline at end of file diff --git a/docs/models/components/servertoolusedetails.mdx b/docs/models/components/servertoolusedetails.mdx index e8da62873..3d5736d6c 100644 --- a/docs/models/components/servertoolusedetails.mdx +++ b/docs/models/components/servertoolusedetails.mdx @@ -9,6 +9,6 @@ Usage for server-side tool execution (e.g., web search) | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of OpenRouter server tool calls that executed and produced a result. | -| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | ➖ | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | -| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file +| `ToolCallsExecuted` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of OpenRouter server tool calls that executed and produced a result. | +| `ToolCallsRequested` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Total number of OpenRouter server-orchestrated tool calls the model requested, across all tool types. Provider-native tools (e.g. native web search) are not counted here. | +| `WebSearchRequests` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of web searches performed by server-side tools. For server-orchestrated tool calls a web search is also counted in tool_calls_requested; provider-native web search may report web_search_requests only. Do not sum the two. | \ No newline at end of file diff --git a/docs/models/components/serviceunavailableresponseerrordata.mdx b/docs/models/components/serviceunavailableresponseerrordata.mdx index 38f12700d..84bfea1cd 100644 --- a/docs/models/components/serviceunavailableresponseerrordata.mdx +++ b/docs/models/components/serviceunavailableresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for ServiceUnavailableResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/sessioncostitem.mdx b/docs/models/components/sessioncostitem.mdx index b255e16b9..473fd6fc6 100644 --- a/docs/models/components/sessioncostitem.mdx +++ b/docs/models/components/sessioncostitem.mdx @@ -6,8 +6,8 @@ title: "SessionCostItem" | Field | Type | Required | Description | Example | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `AppName` | `string` | ✅ | Published harness display label. | Hermes Agent | -| `AppSlug` | `string` | ✅ | Stable public slug of the harness. | hermes-agent | -| `MedianSessionCostUsd` | `float64` | ✅ | Median USD spend per sampled session. | 1.74 | -| `ModelPermaslug` | `string` | ✅ | Exact model permaslug. | anthropic/claude-4.8-opus | -| `TurnRange` | [components.TurnRange](../../models/components/turnrange.mdx) | ✅ | Inclusive session turn-count range. | 10-49-turns | \ No newline at end of file +| `AppName` | `string` | :heavy_check_mark: | Published harness display label. | Hermes Agent | +| `AppSlug` | `string` | :heavy_check_mark: | Stable public slug of the harness. | hermes-agent | +| `MedianSessionCostUsd` | `float64` | :heavy_check_mark: | Median USD spend per sampled session. | 1.74 | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Exact model permaslug. | anthropic/claude-4.8-opus | +| `TurnRange` | [components.TurnRange](../../models/components/turnrange.mdx) | :heavy_check_mark: | Inclusive session turn-count range. | 10-49-turns | \ No newline at end of file diff --git a/docs/models/components/sessioncostmeta.mdx b/docs/models/components/sessioncostmeta.mdx index 8c8480e48..2d3e356d2 100644 --- a/docs/models/components/sessioncostmeta.mdx +++ b/docs/models/components/sessioncostmeta.mdx @@ -6,7 +6,7 @@ title: "SessionCostMeta" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `AsOf` | `string` | ✅ | ISO-8601 timestamp when the response was generated. | 2026-05-12T02:00:00.000Z | -| `Version` | [components.SessionCostMetaVersion](../../models/components/sessioncostmetaversion.mdx) | ✅ | Dataset version. | | -| `WindowDays` | `*int64` | ✅ | Number of days in the weekly session sample window, or null when no snapshot is published. | 30 | -| `WindowEndDate` | `*string` | ✅ | UTC date of the final day in the session sample window, or null when no snapshot is published. | 2026-05-11 | \ No newline at end of file +| `AsOf` | `string` | :heavy_check_mark: | ISO-8601 timestamp when the response was generated. | 2026-05-12T02:00:00.000Z | +| `Version` | [components.SessionCostMetaVersion](../../models/components/sessioncostmetaversion.mdx) | :heavy_check_mark: | Dataset version. | | +| `WindowDays` | `*int64` | :heavy_check_mark: | Number of days in the weekly session sample window, or null when no snapshot is published. | 30 | +| `WindowEndDate` | `*string` | :heavy_check_mark: | UTC date of the final day in the session sample window, or null when no snapshot is published. | 2026-05-11 | \ No newline at end of file diff --git a/docs/models/components/sessioncostresponse.mdx b/docs/models/components/sessioncostresponse.mdx index 71a436e3e..20cc06fe3 100644 --- a/docs/models/components/sessioncostresponse.mdx +++ b/docs/models/components/sessioncostresponse.mdx @@ -6,5 +6,5 @@ title: "SessionCostResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Data` | [][components.SessionCostItem](../../models/components/sessioncostitem.mdx) | ✅ | N/A | -| `Meta` | [components.SessionCostMeta](../../models/components/sessioncostmeta.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.SessionCostItem](../../models/components/sessioncostitem.mdx) | :heavy_check_mark: | N/A | +| `Meta` | [components.SessionCostMeta](../../models/components/sessioncostmeta.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/shellcallitem.mdx b/docs/models/components/shellcallitem.mdx index f4266f6e5..8d477bc35 100644 --- a/docs/models/components/shellcallitem.mdx +++ b/docs/models/components/shellcallitem.mdx @@ -9,10 +9,10 @@ A shell command execution call (newer variant) | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Action` | [components.ShellCallItemAction](../../models/components/shellcallitemaction.mdx) | ✅ | N/A | | -| `Arguments` | optionalnullable.OptionalNullable[`string`] | ➖ | The raw tool-call arguments string as emitted by the model. Echo back unchanged when replaying history; used verbatim to preserve provider prompt-cache prefixes. | | -| `CallID` | `string` | ✅ | N/A | | -| `Environment` | `any` | ➖ | N/A | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.ShellCallItemType](../../models/components/shellcallitemtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Action` | [components.ShellCallItemAction](../../models/components/shellcallitemaction.mdx) | :heavy_check_mark: | N/A | | +| `Arguments` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | The raw tool-call arguments string as emitted by the model. Echo back unchanged when replaying history; used verbatim to preserve provider prompt-cache prefixes. | | +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `Environment` | `any` | :heavy_minus_sign: | N/A | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.ShellCallItemType](../../models/components/shellcallitemtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/shellcallitemaction.mdx b/docs/models/components/shellcallitemaction.mdx index 8bdbd9834..d982453e6 100644 --- a/docs/models/components/shellcallitemaction.mdx +++ b/docs/models/components/shellcallitemaction.mdx @@ -6,6 +6,6 @@ title: "ShellCallItemAction" | Field | Type | Required | Description | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `Commands` | []`string` | ✅ | N/A | -| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | \ No newline at end of file +| `Commands` | []`string` | :heavy_check_mark: | N/A | +| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `TimeoutMs` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/shellcalloutputcontent.mdx b/docs/models/components/shellcalloutputcontent.mdx index 605e929b2..db2108e40 100644 --- a/docs/models/components/shellcalloutputcontent.mdx +++ b/docs/models/components/shellcalloutputcontent.mdx @@ -9,7 +9,7 @@ Captured stdout and stderr for one command of a shell call, with its exit or tim | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Outcome` | [components.Outcome](../../models/components/outcome.mdx) | ✅ | N/A | | -| `Stderr` | `string` | ✅ | N/A | | -| `Stdout` | `string` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"outcome": \{
"exit_code": 0,
"type": "exit"
},
"stderr": "",
"stdout": "total 0\n"
} | \ No newline at end of file +| `Outcome` | [components.Outcome](../../models/components/outcome.mdx) | :heavy_check_mark: | N/A | | +| `Stderr` | `string` | :heavy_check_mark: | N/A | | +| `Stdout` | `string` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"outcome": \{
"exit_code": 0,
"type": "exit"
},
"stderr": "",
"stdout": "total 0\n"
} | \ No newline at end of file diff --git a/docs/models/components/shellcalloutputitem.mdx b/docs/models/components/shellcalloutputitem.mdx index 729a14711..be6a3f99f 100644 --- a/docs/models/components/shellcalloutputitem.mdx +++ b/docs/models/components/shellcalloutputitem.mdx @@ -9,12 +9,12 @@ Output from a shell command execution (newer variant) | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | | -| `ContainerID` | `*string` | ➖ | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | -| `Error` | `*string` | ➖ | The error message when the sandbox call failed before producing a result, as echoed from a failed `shell_call_output` emission. | | -| `Files` | [][components.ShellCallOutputItemFile](../../models/components/shellcalloutputitemfile.mdx) | ➖ | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | ✅ | N/A | | -| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | ➖ | N/A | completed | -| `Type` | [components.ShellCallOutputItemTypeShellCallOutput](../../models/components/shellcalloutputitemtypeshellcalloutput.mdx) | ✅ | N/A | | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | | +| `ContainerID` | `*string` | :heavy_minus_sign: | The canonical container id the command ran under — the `{container_id}` for the Container Files API, reusable as a `container_reference` in later requests. Present on every sandbox-executed call, even when no files changed. | | +| `Error` | `*string` | :heavy_minus_sign: | The error message when the sandbox call failed before producing a result, as echoed from a failed `shell_call_output` emission. | | +| `Files` | [][components.ShellCallOutputItemFile](../../models/components/shellcalloutputitemfile.mdx) | :heavy_minus_sign: | Citations for the files the sandbox command created or modified, most-recently-touched first (at most 10). Retrieve them via the Container Files API. | | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `MaxOutputLength` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `Output` | [][components.ShellCallOutputContent](../../models/components/shellcalloutputcontent.mdx) | :heavy_check_mark: | N/A | | +| `Status` | optionalnullable.OptionalNullable[[components.ToolCallStatus](../../models/components/toolcallstatus.mdx)] | :heavy_minus_sign: | N/A | completed | +| `Type` | [components.ShellCallOutputItemTypeShellCallOutput](../../models/components/shellcalloutputitemtypeshellcalloutput.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/shellcalloutputitemfile.mdx b/docs/models/components/shellcalloutputitemfile.mdx index 13b9e14d6..36662824e 100644 --- a/docs/models/components/shellcalloutputitemfile.mdx +++ b/docs/models/components/shellcalloutputitemfile.mdx @@ -6,9 +6,9 @@ title: "ShellCallOutputItemFile" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `FileID` | `string` | ✅ | N/A | -| `Filename` | `string` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Type` | [components.ShellCallOutputItemTypeContainerFileCitation](../../models/components/shellcalloutputitemtypecontainerfilecitation.mdx) | ✅ | N/A | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `FileID` | `string` | :heavy_check_mark: | N/A | +| `Filename` | `string` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ShellCallOutputItemTypeContainerFileCitation](../../models/components/shellcalloutputitemtypecontainerfilecitation.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/shellservertool.mdx b/docs/models/components/shellservertool.mdx index c38b68ebb..951638529 100644 --- a/docs/models/components/shellservertool.mdx +++ b/docs/models/components/shellservertool.mdx @@ -9,4 +9,4 @@ Shell tool configuration | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Type` | [components.ShellServerToolType](../../models/components/shellservertooltype.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ShellServerToolType](../../models/components/shellservertooltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/shellservertoolconfig.mdx b/docs/models/components/shellservertoolconfig.mdx index c080ba848..9c2a6b2c1 100644 --- a/docs/models/components/shellservertoolconfig.mdx +++ b/docs/models/components/shellservertoolconfig.mdx @@ -9,5 +9,5 @@ Configuration for the openrouter:shell server tool | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.ShellServerToolEngine](../../models/components/shellservertoolengine.mdx) | ➖ | Which shell engine to use. "openrouter" runs commands server-side in the OpenRouter sandbox. "auto" (default) keeps the provider's native hosted shell when available (OpenAI); on other providers the call is routed to the OpenRouter sandbox. | openrouter | -| `Environment` | [*components.ShellServerToolEnvironment](../../models/components/shellservertoolenvironment.mdx) | ➖ | Server-side execution environment for the shell tool. Only container-backed environments are supported; "local" shells are not. | \{
"type": "container_auto"
} | \ No newline at end of file +| `Engine` | [*components.ShellServerToolEngine](../../models/components/shellservertoolengine.mdx) | :heavy_minus_sign: | Which shell engine to use. "openrouter" runs commands server-side in the OpenRouter sandbox. "auto" (default) keeps the provider's native hosted shell when available (OpenAI); on other providers the call is routed to the OpenRouter sandbox. | openrouter | +| `Environment` | [*components.ShellServerToolEnvironment](../../models/components/shellservertoolenvironment.mdx) | :heavy_minus_sign: | Server-side execution environment for the shell tool. Only container-backed environments are supported; "local" shells are not. | \{
"type": "container_auto"
} | \ No newline at end of file diff --git a/docs/models/components/shellservertoolopenrouter.mdx b/docs/models/components/shellservertoolopenrouter.mdx index d620c11b5..33674ea7a 100644 --- a/docs/models/components/shellservertoolopenrouter.mdx +++ b/docs/models/components/shellservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: runs shell commands server-side in a sandboxed | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.ShellServerToolConfig](../../models/components/shellservertoolconfig.mdx) | ➖ | Configuration for the openrouter:shell server tool | \{
"engine": "openrouter",
"environment": \{
"type": "container_auto"
}
} | -| `Type` | [components.ShellServerToolOpenRouterType](../../models/components/shellservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.ShellServerToolConfig](../../models/components/shellservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:shell server tool | \{
"engine": "openrouter",
"environment": \{
"type": "container_auto"
}
} | +| `Type` | [components.ShellServerToolOpenRouterType](../../models/components/shellservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/signinterndaemonrequest.mdx b/docs/models/components/signinterndaemonrequest.mdx deleted file mode 100644 index 05f98c082..000000000 --- a/docs/models/components/signinterndaemonrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "SignInternDaemonRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `BodySha256` | `string` | ✅ | Lower-case hex SHA-256 of the exact bytes the CLI will send as the daemon request body. | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 | -| `Route` | [*components.Route](../../models/components/route.mdx) | ➖ | The daemon request the proof is for. When present the response also carries the single-use, route-bound proof (`x-ori-invoke-signature-v2`, `x-ori-invoke-nonce`). | | \ No newline at end of file diff --git a/docs/models/components/signinterndaemonrequestmethod.mdx b/docs/models/components/signinterndaemonrequestmethod.mdx deleted file mode 100644 index b659a03d6..000000000 --- a/docs/models/components/signinterndaemonrequestmethod.mdx +++ /dev/null @@ -1,22 +0,0 @@ ---- -title: "SignInternDaemonRequestMethod" ---- - -The HTTP method of the daemon request. - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.SignInternDaemonRequestMethodPost -``` - - -## Values - -| Name | Value | -| ----------------------------------- | ----------------------------------- | -| `SignInternDaemonRequestMethodPost` | POST | \ No newline at end of file diff --git a/docs/models/components/signinterndaemonresponse.mdx b/docs/models/components/signinterndaemonresponse.mdx deleted file mode 100644 index bc29613f2..000000000 --- a/docs/models/components/signinterndaemonresponse.mdx +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "SignInternDaemonResponse" ---- - -Headers the CLI copies onto the daemon request so the sidecar can verify who is asking. - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `XOriInvokeNonce` | `*string` | ➖ | Present with `x-ori-invoke-signature-v2`: the single-use id that proof is bound to. | -| `XOriInvokeSignature` | `string` | ✅ | Base64 Ed25519 signature over the intern id, timestamp, user and body digest. | -| `XOriInvokeSignatureV2` | `*string` | ➖ | Present when the request named a `route`: Base64 Ed25519 signature over the intern id, timestamp, nonce, user, method, path and body digest. The intern accepts it once. | -| `XOriInvokeTimestamp` | `string` | ✅ | Unix seconds at signing; the daemon refuses proofs older than its window. | -| `XOriInvokeUser` | `string` | ✅ | The verified OAuth subject the proof names. Never taken from the request. | \ No newline at end of file diff --git a/docs/models/components/sourcecontent.mdx b/docs/models/components/sourcecontent.mdx index 80e60771e..d471d9606 100644 --- a/docs/models/components/sourcecontent.mdx +++ b/docs/models/components/sourcecontent.mdx @@ -6,5 +6,5 @@ title: "SourceContent" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Content` | [components.AnthropicDocumentBlockParamContent2](../../models/components/anthropicdocumentblockparamcontent2.mdx) | ✅ | N/A | -| `Type` | [components.SourceType](../../models/components/sourcetype.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [components.AnthropicDocumentBlockParamContent2](../../models/components/anthropicdocumentblockparamcontent2.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.SourceType](../../models/components/sourcetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/speechinputreferenceaudio.mdx b/docs/models/components/speechinputreferenceaudio.mdx index ddd8625bc..c2bbb82ba 100644 --- a/docs/models/components/speechinputreferenceaudio.mdx +++ b/docs/models/components/speechinputreferenceaudio.mdx @@ -9,5 +9,5 @@ Reference audio input for stateless voice cloning. Up to three parts per request | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `InputAudio` | [components.SpeechInputReferenceAudioInput](../../models/components/speechinputreferenceaudioinput.mdx) | ✅ | Reference audio input object | -| `Type` | [components.SpeechInputReferenceAudioType](../../models/components/speechinputreferenceaudiotype.mdx) | ✅ | N/A | \ No newline at end of file +| `InputAudio` | [components.SpeechInputReferenceAudioInput](../../models/components/speechinputreferenceaudioinput.mdx) | :heavy_check_mark: | Reference audio input object | +| `Type` | [components.SpeechInputReferenceAudioType](../../models/components/speechinputreferenceaudiotype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/speechinputreferenceaudioinput.mdx b/docs/models/components/speechinputreferenceaudioinput.mdx index 8ebc57809..1dcc1498a 100644 --- a/docs/models/components/speechinputreferenceaudioinput.mdx +++ b/docs/models/components/speechinputreferenceaudioinput.mdx @@ -9,6 +9,6 @@ Reference audio input object | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | `*string` | ➖ | Base64-encoded reference audio (optionally a data URI). Supported audio formats are provider-specific. Limited to 20 MiB of base64 (15 MiB of decoded audio). Exactly one of `data` or `url` is required. | data:audio/wav;base64,UklGRuQXDABXQVZF... | -| `Format` | `*string` | ➖ | Audio format of the reference audio (e.g., wav, mp3). Optional; most providers detect the format from the audio bytes. | wav | -| `URL` | `*string` | ➖ | Public http(s) URL of the reference audio. OpenRouter downloads it (15 MiB max) and forwards the bytes, never the URL. Exactly one of `data` or `url` is required. | https://example.com/reference.wav | \ No newline at end of file +| `Data` | `*string` | :heavy_minus_sign: | Base64-encoded reference audio (optionally a data URI). Supported audio formats are provider-specific. Limited to 20 MiB of base64 (15 MiB of decoded audio). Exactly one of `data` or `url` is required. | data:audio/wav;base64,UklGRuQXDABXQVZF... | +| `Format` | `*string` | :heavy_minus_sign: | Audio format of the reference audio (e.g., wav, mp3). Optional; most providers detect the format from the audio bytes. | wav | +| `URL` | `*string` | :heavy_minus_sign: | Public http(s) URL of the reference audio. OpenRouter downloads it (15 MiB max) and forwards the bytes, never the URL. Exactly one of `data` or `url` is required. | https://example.com/reference.wav | \ No newline at end of file diff --git a/docs/models/components/speechinputreferenceimage.mdx b/docs/models/components/speechinputreferenceimage.mdx index 57f3827fa..73fcd82fd 100644 --- a/docs/models/components/speechinputreferenceimage.mdx +++ b/docs/models/components/speechinputreferenceimage.mdx @@ -9,5 +9,5 @@ Reference image. On its own it describes the desired voice (voice design); along | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ImageURL` | [components.SpeechInputReferenceImageInput](../../models/components/speechinputreferenceimageinput.mdx) | ✅ | Reference image input object | -| `Type` | [components.SpeechInputReferenceImageType](../../models/components/speechinputreferenceimagetype.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [components.SpeechInputReferenceImageInput](../../models/components/speechinputreferenceimageinput.mdx) | :heavy_check_mark: | Reference image input object | +| `Type` | [components.SpeechInputReferenceImageType](../../models/components/speechinputreferenceimagetype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/speechinputreferenceimageinput.mdx b/docs/models/components/speechinputreferenceimageinput.mdx index e7e550874..5af0f2d24 100644 --- a/docs/models/components/speechinputreferenceimageinput.mdx +++ b/docs/models/components/speechinputreferenceimageinput.mdx @@ -9,4 +9,4 @@ Reference image input object | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `URL` | `string` | ✅ | JPEG, PNG, or WebP reference image as a base64 data URI or a public http(s) URL. Remote images are downloaded (15 MiB max) and forwarded as bytes, never as the URL. | data:image/png;base64,iVBORw0KGgo... | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | JPEG, PNG, or WebP reference image as a base64 data URI or a public http(s) URL. Remote images are downloaded (15 MiB max) and forwarded as bytes, never as the URL. | data:image/png;base64,iVBORw0KGgo... | \ No newline at end of file diff --git a/docs/models/components/speechinputreferencetext.mdx b/docs/models/components/speechinputreferencetext.mdx index f720dff74..c8ab60319 100644 --- a/docs/models/components/speechinputreferencetext.mdx +++ b/docs/models/components/speechinputreferencetext.mdx @@ -9,5 +9,5 @@ Transcript of an `input_audio` part | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Text` | `string` | ✅ | Transcript of an `input_audio` part. With a single clip it may appear before or after the clip; with multiple clips it must immediately follow the clip it transcribes. | I used to rule the world. | -| `Type` | [components.SpeechInputReferenceTextType](../../models/components/speechinputreferencetexttype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | Transcript of an `input_audio` part. With a single clip it may appear before or after the clip; with multiple clips it must immediately follow the clip it transcribes. | I used to rule the world. | +| `Type` | [components.SpeechInputReferenceTextType](../../models/components/speechinputreferencetexttype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/speechrequest.mdx b/docs/models/components/speechrequest.mdx index 54dc7a6ee..daf929718 100644 --- a/docs/models/components/speechrequest.mdx +++ b/docs/models/components/speechrequest.mdx @@ -9,14 +9,14 @@ Text-to-speech request input | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Input` | [components.SpeechInput](../../models/components/speechinput.mdx) | ✅ | Text to synthesize, or a list of turns for multi-speaker input. Each turn has its own text, voice, and instructions. Multi-speaker input is supported by Gemini TTS models and by Fish Audio models other than S1. | Hello world | -| `InputReferences` | [][components.SpeechInputReference](../../models/components/speechinputreference.mdx) | ➖ | Reference content for stateless voice cloning or voice design. Audio mode: one to three `input_audio` parts, each optionally paired with a `text` part carrying its transcript (a single clip accepts its transcript before or after it; with multiple clips each transcript immediately follows its clip), plus at most one `image_url` part as a scene image on providers that condition the cloned voice on its setting; only routed to endpoints that support voice cloning (and multiple references or image references when those parts are sent). Image mode: exactly one `image_url` part; only routed to endpoints that support image references. An empty array is treated as no reference. | [
\{
"input_audio": \{
"data": "data:audio/wav;base64,UklGRuQXDABXQVZF..."
},
"type": "input_audio"
},
\{
"text": "I used to rule the world.",
"type": "text"
}
] | -| `Instructions` | `*string` | ➖ | Delivery instructions for the whole request, such as tone, pacing, or emotion. Supported by OpenAI gpt-4o-mini-tts, Gemini TTS, and Fish Audio models. Ignored by other providers. | Speak in a warm and friendly tone. | -| `Model` | `string` | ✅ | TTS model identifier | mistralai/voxtral-mini-tts-2603 | -| `Provider` | [*components.SpeechRequestProvider](../../models/components/speechrequestprovider.mdx) | ➖ | Provider configuration: data policy routing preferences (`zdr`, `data_collection`) and provider-specific passthrough options | | -| `ResponseFormat` | [*components.SpeechRequestResponseFormat](../../models/components/speechrequestresponseformat.mdx) | ➖ | Audio output format | pcm | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `Speed` | `*float64` | ➖ | Playback speed multiplier. Honored by models that support it (e.g. OpenAI TTS). Other providers either ignore it or return a 400 for a non-default value when the model has no speed control. | 1 | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | -| `Voice` | `*string` | ➖ | Voice identifier (provider-specific). | en_paul_neutral | \ No newline at end of file +| `Input` | [components.SpeechInput](../../models/components/speechinput.mdx) | :heavy_check_mark: | Text to synthesize, or a list of turns for multi-speaker input. Each turn has its own text, voice, and instructions. Multi-speaker input is supported by Gemini TTS models and by Fish Audio models other than S1. | Hello world | +| `InputReferences` | [][components.SpeechInputReference](../../models/components/speechinputreference.mdx) | :heavy_minus_sign: | Reference content for stateless voice cloning or voice design. Audio mode: one to three `input_audio` parts, each optionally paired with a `text` part carrying its transcript (a single clip accepts its transcript before or after it; with multiple clips each transcript immediately follows its clip), plus at most one `image_url` part as a scene image on providers that condition the cloned voice on its setting; only routed to endpoints that support voice cloning (and multiple references or image references when those parts are sent). Image mode: exactly one `image_url` part; only routed to endpoints that support image references. An empty array is treated as no reference. | [
\{
"input_audio": \{
"data": "data:audio/wav;base64,UklGRuQXDABXQVZF..."
},
"type": "input_audio"
},
\{
"text": "I used to rule the world.",
"type": "text"
}
] | +| `Instructions` | `*string` | :heavy_minus_sign: | Delivery instructions for the whole request, such as tone, pacing, or emotion. Supported by OpenAI gpt-4o-mini-tts, Gemini TTS, and Fish Audio models. Ignored by other providers. | Speak in a warm and friendly tone. | +| `Model` | `string` | :heavy_check_mark: | TTS model identifier | mistralai/voxtral-mini-tts-2603 | +| `Provider` | [*components.SpeechRequestProvider](../../models/components/speechrequestprovider.mdx) | :heavy_minus_sign: | Provider configuration: data policy routing preferences (`zdr`, `data_collection`) and provider-specific passthrough options | | +| `ResponseFormat` | [*components.SpeechRequestResponseFormat](../../models/components/speechrequestresponseformat.mdx) | :heavy_minus_sign: | Audio output format | pcm | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `Speed` | `*float64` | :heavy_minus_sign: | Playback speed multiplier. Honored by models that support it (e.g. OpenAI TTS). Other providers either ignore it or return a 400 for a non-default value when the model has no speed control. | 1 | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | +| `Voice` | `*string` | :heavy_minus_sign: | Voice identifier (provider-specific). | en_paul_neutral | \ No newline at end of file diff --git a/docs/models/components/speechrequestprovider.mdx b/docs/models/components/speechrequestprovider.mdx index b7d5321b2..23f0bc0c4 100644 --- a/docs/models/components/speechrequestprovider.mdx +++ b/docs/models/components/speechrequestprovider.mdx @@ -9,6 +9,6 @@ Provider configuration: data policy routing preferences (`zdr`, `data_collection | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DataCollection` | optionalnullable.OptionalNullable[[components.SpeechRequestDataCollection](../../models/components/speechrequestdatacollection.mdx)] | ➖ | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | -| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | ➖ | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | -| `Zdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file +| `DataCollection` | optionalnullable.OptionalNullable[[components.SpeechRequestDataCollection](../../models/components/speechrequestdatacollection.mdx)] | :heavy_minus_sign: | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | +| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | :heavy_minus_sign: | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | +| `Zdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file diff --git a/docs/models/components/speechturn.mdx b/docs/models/components/speechturn.mdx index 80204ed1f..f2ef10bb6 100644 --- a/docs/models/components/speechturn.mdx +++ b/docs/models/components/speechturn.mdx @@ -6,6 +6,6 @@ title: "SpeechTurn" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `Instructions` | `*string` | ➖ | Delivery instructions for this turn, such as tone, pacing, or emotion. Overrides the top-level `instructions`. | whispering | -| `Text` | `string` | ✅ | Text to synthesize | Hi Jane. | -| `Voice` | `*string` | ➖ | Voice for this turn. Defaults to the top-level `voice`. | Kore | \ No newline at end of file +| `Instructions` | `*string` | :heavy_minus_sign: | Delivery instructions for this turn, such as tone, pacing, or emotion. Overrides the top-level `instructions`. | whispering | +| `Text` | `string` | :heavy_check_mark: | Text to synthesize | Hi Jane. | +| `Voice` | `*string` | :heavy_minus_sign: | Voice for this turn. Defaults to the top-level `voice`. | Kore | \ No newline at end of file diff --git a/docs/models/components/stance.mdx b/docs/models/components/stance.mdx index 676f0db01..daa1bc601 100644 --- a/docs/models/components/stance.mdx +++ b/docs/models/components/stance.mdx @@ -6,5 +6,5 @@ title: "Stance" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Model` | `string` | ✅ | N/A | -| `Stance` | `string` | ✅ | N/A | \ No newline at end of file +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Stance` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/stateenum.mdx b/docs/models/components/stateenum.mdx deleted file mode 100644 index e13beb451..000000000 --- a/docs/models/components/stateenum.mdx +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: "StateEnum" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -value := components.StateEnumConnected - -// Open enum: custom values can be created with a direct type cast -custom := components.StateEnum("custom_value") -``` - - -## Values - -| Name | Value | -| ------------------------- | ------------------------- | -| `StateEnumConnected` | connected | -| `StateEnumNeedsReconnect` | needs_reconnect | -| `StateEnumNotTested` | not_tested | -| `StateEnumError` | error | \ No newline at end of file diff --git a/docs/models/components/stopservertoolswhenfinishreasonis.mdx b/docs/models/components/stopservertoolswhenfinishreasonis.mdx index 7ad622e15..303e057b0 100644 --- a/docs/models/components/stopservertoolswhenfinishreasonis.mdx +++ b/docs/models/components/stopservertoolswhenfinishreasonis.mdx @@ -9,5 +9,5 @@ Stop when the upstream model emits this finish reason (e.g. `length`). | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `Reason` | `string` | ✅ | N/A | -| `Type` | [components.StopServerToolsWhenFinishReasonIsType](../../models/components/stopservertoolswhenfinishreasonistype.mdx) | ✅ | N/A | \ No newline at end of file +| `Reason` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.StopServerToolsWhenFinishReasonIsType](../../models/components/stopservertoolswhenfinishreasonistype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/stopservertoolswhenhastoolcall.mdx b/docs/models/components/stopservertoolswhenhastoolcall.mdx index 0c0647002..54c1d4096 100644 --- a/docs/models/components/stopservertoolswhenhastoolcall.mdx +++ b/docs/models/components/stopservertoolswhenhastoolcall.mdx @@ -9,5 +9,5 @@ Stop after a tool with this name has been called. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `ToolName` | `string` | ✅ | N/A | -| `Type` | [components.StopServerToolsWhenHasToolCallType](../../models/components/stopservertoolswhenhastoolcalltype.mdx) | ✅ | N/A | \ No newline at end of file +| `ToolName` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.StopServerToolsWhenHasToolCallType](../../models/components/stopservertoolswhenhastoolcalltype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/stopservertoolswhenmaxcost.mdx b/docs/models/components/stopservertoolswhenmaxcost.mdx index b0d033e24..addcbca5e 100644 --- a/docs/models/components/stopservertoolswhenmaxcost.mdx +++ b/docs/models/components/stopservertoolswhenmaxcost.mdx @@ -9,5 +9,5 @@ Stop once cumulative cost across the loop exceeds this dollar threshold. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `MaxCostInDollars` | `float64` | ✅ | N/A | -| `Type` | [components.StopServerToolsWhenMaxCostType](../../models/components/stopservertoolswhenmaxcosttype.mdx) | ✅ | N/A | \ No newline at end of file +| `MaxCostInDollars` | `float64` | :heavy_check_mark: | N/A | +| `Type` | [components.StopServerToolsWhenMaxCostType](../../models/components/stopservertoolswhenmaxcosttype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/stopservertoolswhenmaxtokensused.mdx b/docs/models/components/stopservertoolswhenmaxtokensused.mdx index bdc5b9cfe..c229dcbef 100644 --- a/docs/models/components/stopservertoolswhenmaxtokensused.mdx +++ b/docs/models/components/stopservertoolswhenmaxtokensused.mdx @@ -9,5 +9,5 @@ Stop once cumulative token usage across the loop exceeds this threshold. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `MaxTokens` | `int64` | ✅ | N/A | -| `Type` | [components.StopServerToolsWhenMaxTokensUsedType](../../models/components/stopservertoolswhenmaxtokensusedtype.mdx) | ✅ | N/A | \ No newline at end of file +| `MaxTokens` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.StopServerToolsWhenMaxTokensUsedType](../../models/components/stopservertoolswhenmaxtokensusedtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/stopservertoolswhenstepcountis.mdx b/docs/models/components/stopservertoolswhenstepcountis.mdx index d14252fc2..4c7ca7c2b 100644 --- a/docs/models/components/stopservertoolswhenstepcountis.mdx +++ b/docs/models/components/stopservertoolswhenstepcountis.mdx @@ -9,5 +9,5 @@ Stop after the agent loop has executed this many steps. | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `StepCount` | `int64` | ✅ | N/A | -| `Type` | [components.StopServerToolsWhenStepCountIsType](../../models/components/stopservertoolswhenstepcountistype.mdx) | ✅ | N/A | \ No newline at end of file +| `StepCount` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.StopServerToolsWhenStepCountIsType](../../models/components/stopservertoolswhenstepcountistype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/storedprompttemplate.mdx b/docs/models/components/storedprompttemplate.mdx index f184cc301..9a13ae6cd 100644 --- a/docs/models/components/storedprompttemplate.mdx +++ b/docs/models/components/storedprompttemplate.mdx @@ -6,5 +6,5 @@ title: "StoredPromptTemplate" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | -| `Variables` | optionalnullable.OptionalNullable[map[string][components.Variables](../../models/components/variables.mdx)] | ➖ | N/A | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Variables` | optionalnullable.OptionalNullable[map[string][components.Variables](../../models/components/variables.mdx)] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/streameventsresponsecompleted.mdx b/docs/models/components/streameventsresponsecompleted.mdx index 4bf269abc..954b61fb2 100644 --- a/docs/models/components/streameventsresponsecompleted.mdx +++ b/docs/models/components/streameventsresponsecompleted.mdx @@ -9,6 +9,6 @@ Event emitted when a response has completed successfully | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | ✅ | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.StreamEventsResponseCompletedType](../../models/components/streameventsresponsecompletedtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | :heavy_check_mark: | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.StreamEventsResponseCompletedType](../../models/components/streameventsresponsecompletedtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/streameventsresponsefailed.mdx b/docs/models/components/streameventsresponsefailed.mdx index 852bb5e5c..bcc56b0dc 100644 --- a/docs/models/components/streameventsresponsefailed.mdx +++ b/docs/models/components/streameventsresponsefailed.mdx @@ -9,6 +9,6 @@ Event emitted when a response has failed | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | ✅ | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.StreamEventsResponseFailedType](../../models/components/streameventsresponsefailedtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | :heavy_check_mark: | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.StreamEventsResponseFailedType](../../models/components/streameventsresponsefailedtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/streameventsresponseincomplete.mdx b/docs/models/components/streameventsresponseincomplete.mdx index e6c3b3901..5f90aadd1 100644 --- a/docs/models/components/streameventsresponseincomplete.mdx +++ b/docs/models/components/streameventsresponseincomplete.mdx @@ -9,6 +9,6 @@ Event emitted when a response is incomplete | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | ✅ | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.StreamEventsResponseIncompleteType](../../models/components/streameventsresponseincompletetype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Response` | [components.OpenResponsesResult](../../models/components/openresponsesresult.mdx) | :heavy_check_mark: | Complete non-streaming response from the Responses API | \{
"completed_at": 1704067210,
"created_at": 1704067200,
"error": null,
"frequency_penalty": null,
"id": "resp-abc123",
"incomplete_details": null,
"instructions": null,
"max_output_tokens": null,
"metadata": null,
"model": "gpt-4",
"object": "response",
"output": [
\{
"content": [
\{
"annotations": [],
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
}
],
"parallel_tool_calls": true,
"presence_penalty": null,
"status": "completed",
"temperature": null,
"tool_choice": "auto",
"tools": [],
"top_p": null,
"usage": \{
"input_tokens": 10,
"input_tokens_details": \{
"cached_tokens": 0
},
"output_tokens": 25,
"output_tokens_details": \{
"reasoning_tokens": 0
},
"total_tokens": 35
}
} | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.StreamEventsResponseIncompleteType](../../models/components/streameventsresponseincompletetype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/streameventsresponseoutputitemadded.mdx b/docs/models/components/streameventsresponseoutputitemadded.mdx index 6357d74a5..17f170a7e 100644 --- a/docs/models/components/streameventsresponseoutputitemadded.mdx +++ b/docs/models/components/streameventsresponseoutputitemadded.mdx @@ -9,7 +9,7 @@ Event emitted when a new output item is added to the response | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Item` | [components.OutputItems](../../models/components/outputitems.mdx) | ✅ | An output item from the response | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.StreamEventsResponseOutputItemAddedType](../../models/components/streameventsresponseoutputitemaddedtype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Item` | [components.OutputItems](../../models/components/outputitems.mdx) | :heavy_check_mark: | An output item from the response | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.StreamEventsResponseOutputItemAddedType](../../models/components/streameventsresponseoutputitemaddedtype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/streameventsresponseoutputitemdone.mdx b/docs/models/components/streameventsresponseoutputitemdone.mdx index 6d1600574..78dd4200f 100644 --- a/docs/models/components/streameventsresponseoutputitemdone.mdx +++ b/docs/models/components/streameventsresponseoutputitemdone.mdx @@ -9,7 +9,7 @@ Event emitted when an output item is complete | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Item` | [components.OutputItems](../../models/components/outputitems.mdx) | ✅ | An output item from the response | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | -| `OutputIndex` | `int64` | ✅ | N/A | | -| `SequenceNumber` | `int64` | ✅ | N/A | | -| `Type` | [components.StreamEventsResponseOutputItemDoneType](../../models/components/streameventsresponseoutputitemdonetype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Item` | [components.OutputItems](../../models/components/outputitems.mdx) | :heavy_check_mark: | An output item from the response | \{
"content": [
\{
"text": "Hello! How can I help you today?",
"type": "output_text"
}
],
"id": "msg-abc123",
"role": "assistant",
"status": "completed",
"type": "message"
} | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | | +| `Type` | [components.StreamEventsResponseOutputItemDoneType](../../models/components/streameventsresponseoutputitemdonetype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/streamlogprob.mdx b/docs/models/components/streamlogprob.mdx index 1a8ee5a6b..4868841c9 100644 --- a/docs/models/components/streamlogprob.mdx +++ b/docs/models/components/streamlogprob.mdx @@ -9,7 +9,7 @@ Log probability information for a token | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `Bytes` | []`int64` | ➖ | N/A | -| `Logprob` | `float64` | ✅ | N/A | -| `Token` | `string` | ✅ | N/A | -| `TopLogprobs` | [][components.StreamLogprobTopLogprob](../../models/components/streamlogprobtoplogprob.mdx) | ➖ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_minus_sign: | N/A | +| `Logprob` | `float64` | :heavy_check_mark: | N/A | +| `Token` | `string` | :heavy_check_mark: | N/A | +| `TopLogprobs` | [][components.StreamLogprobTopLogprob](../../models/components/streamlogprobtoplogprob.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/streamlogprobtoplogprob.mdx b/docs/models/components/streamlogprobtoplogprob.mdx index 99943e74c..d0098a430 100644 --- a/docs/models/components/streamlogprobtoplogprob.mdx +++ b/docs/models/components/streamlogprobtoplogprob.mdx @@ -9,6 +9,6 @@ Alternative token with its log probability | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bytes` | []`int64` | ➖ | N/A | -| `Logprob` | `*float64` | ➖ | N/A | -| `Token` | `*string` | ➖ | N/A | \ No newline at end of file +| `Bytes` | []`int64` | :heavy_minus_sign: | N/A | +| `Logprob` | `*float64` | :heavy_minus_sign: | N/A | +| `Token` | `*string` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/stt.mdx b/docs/models/components/stt.mdx index a96a0a8b6..19d7f7524 100644 --- a/docs/models/components/stt.mdx +++ b/docs/models/components/stt.mdx @@ -6,6 +6,6 @@ title: "STT" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/sttentity.mdx b/docs/models/components/sttentity.mdx index 206962551..3b5fa9e3a 100644 --- a/docs/models/components/sttentity.mdx +++ b/docs/models/components/sttentity.mdx @@ -9,7 +9,7 @@ A detected entity, returned when the provider runs entity detection | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `EndChar` | `int64` | ✅ | Zero-based exclusive character offset of the entity end within the response-level text (not seconds) | 25 | -| `StartChar` | `int64` | ✅ | Zero-based character offset of the entity start within the response-level text (not seconds) | 15 | -| `Text` | `string` | ✅ | Entity text as it appears in the transcript | | -| `Type` | `string` | ✅ | Provider entity type label | name | \ No newline at end of file +| `EndChar` | `int64` | :heavy_check_mark: | Zero-based exclusive character offset of the entity end within the response-level text (not seconds) | 25 | +| `StartChar` | `int64` | :heavy_check_mark: | Zero-based character offset of the entity start within the response-level text (not seconds) | 15 | +| `Text` | `string` | :heavy_check_mark: | Entity text as it appears in the transcript | | +| `Type` | `string` | :heavy_check_mark: | Provider entity type label | name | \ No newline at end of file diff --git a/docs/models/components/sttinlineinputaudio.mdx b/docs/models/components/sttinlineinputaudio.mdx index f48fe33d9..900fddb90 100644 --- a/docs/models/components/sttinlineinputaudio.mdx +++ b/docs/models/components/sttinlineinputaudio.mdx @@ -9,5 +9,5 @@ Inline base64 audio input for speech-to-text | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | `string` | ✅ | Base64-encoded audio data (raw bytes, not a data URI) | -| `Format` | `string` | ✅ | Audio format (e.g., wav, mp3, flac, m4a, ogg, webm, aac). Supported formats vary by provider. "pcm" means headerless signed 16-bit little-endian mono audio at 16 kHz. | \ No newline at end of file +| `Data` | `string` | :heavy_check_mark: | Base64-encoded audio data (raw bytes, not a data URI) | +| `Format` | `string` | :heavy_check_mark: | Audio format (e.g., wav, mp3, flac, m4a, ogg, webm, aac). Supported formats vary by provider. "pcm" means headerless signed 16-bit little-endian mono audio at 16 kHz. | \ No newline at end of file diff --git a/docs/models/components/sttrequest.mdx b/docs/models/components/sttrequest.mdx index 27c49313f..3989cdd98 100644 --- a/docs/models/components/sttrequest.mdx +++ b/docs/models/components/sttrequest.mdx @@ -9,15 +9,15 @@ Speech-to-text request input. Accepts a JSON body with input_audio containing ba | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Diarize` | `*bool` | ➖ | Label each word with the speaker who said it. Speaker labels are returned on the words array (speaker, speaker_label), so response_format must be "verbose_json" (a "json" request is rejected with a 400) and word timestamps are included even when timestamp_granularities omits "word". Only supported by some providers; the request is rejected with a 400 when the selected model cannot diarize. Providers may charge extra. | true | -| `InputAudio` | [components.STTInputAudio](../../models/components/sttinputaudio.mdx) | ✅ | Audio to transcribe: inline base64 bytes, or a URL the provider downloads directly. | | -| `Keyterms` | []`string` | ➖ | Domain terms, names, or phrases to bias recognition toward. Only supported by some providers; the request is rejected with a 400 when the selected model cannot use keyterms. Providers may cap the number of terms or characters per term and may charge extra. | [
"OpenRouter",
"Scribe"
] | -| `Language` | `*string` | ➖ | ISO-639-1 language code (e.g., "en", "ja"). Auto-detected if omitted. | en | -| `Model` | `string` | ✅ | STT model identifier | openai/whisper-large-v3 | -| `Provider` | [*components.STTRequestProvider](../../models/components/sttrequestprovider.mdx) | ➖ | Provider configuration: data policy routing preferences (`zdr`, `data_collection`) and provider-specific passthrough options | | -| `ResponseFormat` | [*components.STTRequestResponseFormat](../../models/components/sttrequestresponseformat.mdx) | ➖ | Output format. "json" (default) returns \{ text, usage }. "verbose_json" additionally returns task, language, duration, and segment-level timestamps; only supported by OpenAI-compatible providers. | json | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `Temperature` | `*float64` | ➖ | Sampling temperature for transcription | 0 | -| `TimestampGranularities` | [][components.STTTimestampGranularity](../../models/components/stttimestampgranularity.mdx) | ➖ | Timestamp detail levels to include when response_format is "verbose_json". "segment" returns segment-level timestamps; "word" additionally returns word-level timestamps in the words array. Ignored unless response_format is "verbose_json". | [
"segment"
] | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file +| `Diarize` | `*bool` | :heavy_minus_sign: | Label each word with the speaker who said it. Speaker labels are returned on the words array (speaker, speaker_label), so response_format must be "verbose_json" (a "json" request is rejected with a 400) and word timestamps are included even when timestamp_granularities omits "word". Only supported by some providers; the request is rejected with a 400 when the selected model cannot diarize. Providers may charge extra. | true | +| `InputAudio` | [components.STTInputAudio](../../models/components/sttinputaudio.mdx) | :heavy_check_mark: | Audio to transcribe: inline base64 bytes, or a URL the provider downloads directly. | | +| `Keyterms` | []`string` | :heavy_minus_sign: | Domain terms, names, or phrases to bias recognition toward. Only supported by some providers; the request is rejected with a 400 when the selected model cannot use keyterms. Providers may cap the number of terms or characters per term and may charge extra. | [
"OpenRouter",
"Scribe"
] | +| `Language` | `*string` | :heavy_minus_sign: | ISO-639-1 language code (e.g., "en", "ja"). Auto-detected if omitted. | en | +| `Model` | `string` | :heavy_check_mark: | STT model identifier | openai/whisper-large-v3 | +| `Provider` | [*components.STTRequestProvider](../../models/components/sttrequestprovider.mdx) | :heavy_minus_sign: | Provider configuration: data policy routing preferences (`zdr`, `data_collection`) and provider-specific passthrough options | | +| `ResponseFormat` | [*components.STTRequestResponseFormat](../../models/components/sttrequestresponseformat.mdx) | :heavy_minus_sign: | Output format. "json" (default) returns \{ text, usage }. "verbose_json" additionally returns task, language, duration, and segment-level timestamps; only supported by OpenAI-compatible providers. | json | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `Temperature` | `*float64` | :heavy_minus_sign: | Sampling temperature for transcription | 0 | +| `TimestampGranularities` | [][components.STTTimestampGranularity](../../models/components/stttimestampgranularity.mdx) | :heavy_minus_sign: | Timestamp detail levels to include when response_format is "verbose_json". "segment" returns segment-level timestamps; "word" additionally returns word-level timestamps in the words array. Ignored unless response_format is "verbose_json". | [
"segment"
] | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file diff --git a/docs/models/components/sttrequestprovider.mdx b/docs/models/components/sttrequestprovider.mdx index ae51b3d99..6d5dd6175 100644 --- a/docs/models/components/sttrequestprovider.mdx +++ b/docs/models/components/sttrequestprovider.mdx @@ -9,6 +9,6 @@ Provider configuration: data policy routing preferences (`zdr`, `data_collection | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DataCollection` | optionalnullable.OptionalNullable[[components.STTRequestDataCollection](../../models/components/sttrequestdatacollection.mdx)] | ➖ | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | -| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | ➖ | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | -| `Zdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file +| `DataCollection` | optionalnullable.OptionalNullable[[components.STTRequestDataCollection](../../models/components/sttrequestdatacollection.mdx)] | :heavy_minus_sign: | Data collection setting. If no available model provider meets the requirement, your request will return an error.
- allow: (default) allow providers which store user data non-transiently and may train on it

- deny: use only providers which do not collect user data. | allow | +| `Options` | [*components.ProviderOptions](../../models/components/provideroptions.mdx) | :heavy_minus_sign: | Provider-specific options keyed by provider slug. Only options for the matched provider are forwarded; the rest are ignored. Unrecognized keys are silently dropped. | \{
"openai": \{
"max_tokens": 1000
}
} | +| `Zdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used. | true | \ No newline at end of file diff --git a/docs/models/components/sttresponse.mdx b/docs/models/components/sttresponse.mdx index 84268e251..c91201a9d 100644 --- a/docs/models/components/sttresponse.mdx +++ b/docs/models/components/sttresponse.mdx @@ -9,13 +9,13 @@ STT response containing transcribed text and optional usage statistics | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Confidence` | `*float64` | ➖ | Provider confidence for the whole transcript from 0 to 1, present when response_format is verbose_json and the provider scores the full transcript | 0.94 | -| `Duration` | `*float64` | ➖ | Duration of the input audio in seconds, present when response_format is verbose_json | 9.2 | -| `Entities` | [][components.STTEntity](../../models/components/sttentity.mdx) | ➖ | Detected entities with character offsets into text, present when the provider runs entity detection | | -| `Language` | `*string` | ➖ | Detected or forced language, present when response_format is verbose_json | english | -| `LanguageConfidence` | `*float64` | ➖ | Provider confidence in the detected language from 0 to 1, present when response_format is verbose_json and the provider scores language detection | 0.98 | -| `Segments` | [][components.STTSegment](../../models/components/sttsegment.mdx) | ➖ | Timestamped transcript segments, present when response_format is verbose_json | | -| `Task` | `*string` | ➖ | The task performed, present when response_format is verbose_json | transcribe | -| `Text` | `string` | ✅ | The transcribed text | Hello, this is a test of OpenAI speech-to-text transcription. The weather is sunny today and the temperature is around 72 degrees. | -| `Usage` | [*components.STTUsage](../../models/components/sttusage.mdx) | ➖ | Aggregated usage statistics for the request | \{
"cost": 0.000508,
"input_tokens": 83,
"output_tokens": 30,
"seconds": 9.2,
"total_tokens": 113
} | -| `Words` | [][components.STTWord](../../models/components/sttword.mdx) | ➖ | Timestamped words, present when the provider returns word-level timestamps | | \ No newline at end of file +| `Confidence` | `*float64` | :heavy_minus_sign: | Provider confidence for the whole transcript from 0 to 1, present when response_format is verbose_json and the provider scores the full transcript | 0.94 | +| `Duration` | `*float64` | :heavy_minus_sign: | Duration of the input audio in seconds, present when response_format is verbose_json | 9.2 | +| `Entities` | [][components.STTEntity](../../models/components/sttentity.mdx) | :heavy_minus_sign: | Detected entities with character offsets into text, present when the provider runs entity detection | | +| `Language` | `*string` | :heavy_minus_sign: | Detected or forced language, present when response_format is verbose_json | english | +| `LanguageConfidence` | `*float64` | :heavy_minus_sign: | Provider confidence in the detected language from 0 to 1, present when response_format is verbose_json and the provider scores language detection | 0.98 | +| `Segments` | [][components.STTSegment](../../models/components/sttsegment.mdx) | :heavy_minus_sign: | Timestamped transcript segments, present when response_format is verbose_json | | +| `Task` | `*string` | :heavy_minus_sign: | The task performed, present when response_format is verbose_json | transcribe | +| `Text` | `string` | :heavy_check_mark: | The transcribed text | Hello, this is a test of OpenAI speech-to-text transcription. The weather is sunny today and the temperature is around 72 degrees. | +| `Usage` | [*components.STTUsage](../../models/components/sttusage.mdx) | :heavy_minus_sign: | Aggregated usage statistics for the request | \{
"cost": 0.000508,
"input_tokens": 83,
"output_tokens": 30,
"seconds": 9.2,
"total_tokens": 113
} | +| `Words` | [][components.STTWord](../../models/components/sttword.mdx) | :heavy_minus_sign: | Timestamped words, present when the provider returns word-level timestamps | | \ No newline at end of file diff --git a/docs/models/components/sttsegment.mdx b/docs/models/components/sttsegment.mdx index e307f7034..5f3748e3d 100644 --- a/docs/models/components/sttsegment.mdx +++ b/docs/models/components/sttsegment.mdx @@ -9,16 +9,16 @@ A timestamped transcript segment, returned when response_format is verbose_json | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | -| `AvgLogprob` | `*float64` | ➖ | Average log probability of the segment | | -| `Channel` | `*int64` | ➖ | Zero-based audio channel index for the segment, present when the provider transcribes channels separately | 0 | -| `CompressionRatio` | `*float64` | ➖ | Compression ratio of the segment | | -| `End` | `float64` | ✅ | Segment end time in seconds | 3.2 | -| `ID` | `int64` | ✅ | Segment index within the transcript | 0 | -| `NoSpeechProb` | `*float64` | ➖ | Probability the segment contains no speech | | -| `Seek` | `*int64` | ➖ | Seek offset of the segment | 0 | -| `Speaker` | `*int64` | ➖ | Speaker index for the segment, present when the provider returns diarization data | 0 | -| `SpeakerLabel` | `*string` | ➖ | Provider speaker label for the segment, present when the provider labels speakers with a string | speaker_0 | -| `Start` | `float64` | ✅ | Segment start time in seconds | 0 | -| `Temperature` | `*float64` | ➖ | Temperature used for the segment | | -| `Text` | `string` | ✅ | Transcribed text of the segment | Hello there. | -| `Tokens` | []`int64` | ➖ | Token IDs of the segment | | \ No newline at end of file +| `AvgLogprob` | `*float64` | :heavy_minus_sign: | Average log probability of the segment | | +| `Channel` | `*int64` | :heavy_minus_sign: | Zero-based audio channel index for the segment, present when the provider transcribes channels separately | 0 | +| `CompressionRatio` | `*float64` | :heavy_minus_sign: | Compression ratio of the segment | | +| `End` | `float64` | :heavy_check_mark: | Segment end time in seconds | 3.2 | +| `ID` | `int64` | :heavy_check_mark: | Segment index within the transcript | 0 | +| `NoSpeechProb` | `*float64` | :heavy_minus_sign: | Probability the segment contains no speech | | +| `Seek` | `*int64` | :heavy_minus_sign: | Seek offset of the segment | 0 | +| `Speaker` | `*int64` | :heavy_minus_sign: | Speaker index for the segment, present when the provider returns diarization data | 0 | +| `SpeakerLabel` | `*string` | :heavy_minus_sign: | Provider speaker label for the segment, present when the provider labels speakers with a string | speaker_0 | +| `Start` | `float64` | :heavy_check_mark: | Segment start time in seconds | 0 | +| `Temperature` | `*float64` | :heavy_minus_sign: | Temperature used for the segment | | +| `Text` | `string` | :heavy_check_mark: | Transcribed text of the segment | Hello there. | +| `Tokens` | []`int64` | :heavy_minus_sign: | Token IDs of the segment | | \ No newline at end of file diff --git a/docs/models/components/stturlinputaudio.mdx b/docs/models/components/stturlinputaudio.mdx index c5069ec63..97d6c70d6 100644 --- a/docs/models/components/stturlinputaudio.mdx +++ b/docs/models/components/stturlinputaudio.mdx @@ -9,5 +9,5 @@ Audio input fetched by the provider from a URL | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Format` | `*string` | ➖ | Audio format of the file at the URL. Defaults to the extension of the URL path; required when the path has no extension. | -| `URL` | `string` | ✅ | Publicly reachable http(s) URL of the audio file. The provider downloads it directly, so the inline upload size limit does not apply. Only supported by some providers. | \ No newline at end of file +| `Format` | `*string` | :heavy_minus_sign: | Audio format of the file at the URL. Defaults to the extension of the URL path; required when the path has no extension. | +| `URL` | `string` | :heavy_check_mark: | Publicly reachable http(s) URL of the audio file. The provider downloads it directly, so the inline upload size limit does not apply. Only supported by some providers. | \ No newline at end of file diff --git a/docs/models/components/sttusage.mdx b/docs/models/components/sttusage.mdx index 5aa829a2d..23197551f 100644 --- a/docs/models/components/sttusage.mdx +++ b/docs/models/components/sttusage.mdx @@ -9,8 +9,8 @@ Aggregated usage statistics for the request | Field | Type | Required | Description | Example | | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | -| `Cost` | `*float64` | ➖ | Total cost of the request in USD | 0.000508 | -| `InputTokens` | `*int64` | ➖ | Number of input tokens billed for this request | 83 | -| `OutputTokens` | `*int64` | ➖ | Number of output tokens generated | 30 | -| `Seconds` | `*float64` | ➖ | Duration of the input audio in seconds | 9.2 | -| `TotalTokens` | `*int64` | ➖ | Total number of tokens used (input + output) | 113 | \ No newline at end of file +| `Cost` | `*float64` | :heavy_minus_sign: | Total cost of the request in USD | 0.000508 | +| `InputTokens` | `*int64` | :heavy_minus_sign: | Number of input tokens billed for this request | 83 | +| `OutputTokens` | `*int64` | :heavy_minus_sign: | Number of output tokens generated | 30 | +| `Seconds` | `*float64` | :heavy_minus_sign: | Duration of the input audio in seconds | 9.2 | +| `TotalTokens` | `*int64` | :heavy_minus_sign: | Total number of tokens used (input + output) | 113 | \ No newline at end of file diff --git a/docs/models/components/sttword.mdx b/docs/models/components/sttword.mdx index 8603951d2..e482d6427 100644 --- a/docs/models/components/sttword.mdx +++ b/docs/models/components/sttword.mdx @@ -9,11 +9,11 @@ A timestamped word, returned when the provider includes word-level timestamps | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Channel` | `*int64` | ➖ | Zero-based audio channel index for the word, present when the provider transcribes channels separately | 0 | -| `Confidence` | `*float64` | ➖ | Provider confidence for the word from 0 to 1, present when the provider returns per-word confidence | 0.98 | -| `End` | `float64` | ✅ | Word end time in seconds | 0.4 | -| `Speaker` | `*int64` | ➖ | Speaker index for the word, present when the provider returns diarization data | 0 | -| `SpeakerLabel` | `*string` | ➖ | Provider speaker label for the word, present when the provider labels speakers with a string | speaker_0 | -| `Start` | `float64` | ✅ | Word start time in seconds | 0 | -| `Type` | [*components.STTWordType](../../models/components/sttwordtype.mdx) | ➖ | Kind of entry; omitted or "word" for spoken words, "audio_event" for non-speech sounds the provider tags with timestamps | word | -| `Word` | `string` | ✅ | The transcribed word, or the event tag such as "(laughter)" when type is audio_event | Hello | \ No newline at end of file +| `Channel` | `*int64` | :heavy_minus_sign: | Zero-based audio channel index for the word, present when the provider transcribes channels separately | 0 | +| `Confidence` | `*float64` | :heavy_minus_sign: | Provider confidence for the word from 0 to 1, present when the provider returns per-word confidence | 0.98 | +| `End` | `float64` | :heavy_check_mark: | Word end time in seconds | 0.4 | +| `Speaker` | `*int64` | :heavy_minus_sign: | Speaker index for the word, present when the provider returns diarization data | 0 | +| `SpeakerLabel` | `*string` | :heavy_minus_sign: | Provider speaker label for the word, present when the provider labels speakers with a string | speaker_0 | +| `Start` | `float64` | :heavy_check_mark: | Word start time in seconds | 0 | +| `Type` | [*components.STTWordType](../../models/components/sttwordtype.mdx) | :heavy_minus_sign: | Kind of entry; omitted or "word" for spoken words, "audio_event" for non-speech sounds the provider tags with timestamps | word | +| `Word` | `string` | :heavy_check_mark: | The transcribed word, or the event tag such as "(laughter)" when type is audio_event | Hello | \ No newline at end of file diff --git a/docs/models/components/subagentnestedtool.mdx b/docs/models/components/subagentnestedtool.mdx index a7c849a56..e11bb182c 100644 --- a/docs/models/components/subagentnestedtool.mdx +++ b/docs/models/components/subagentnestedtool.mdx @@ -9,6 +9,6 @@ A tool made available to the subagent. Only OpenRouter server tools (e.g. openro | Field | Type | Required | Description | Example | | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | ----------------------------------- | -| `Parameters` | map[string]`any` | ➖ | N/A | | -| `Type` | `string` | ✅ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"type": "openrouter:web_search"
} | \ No newline at end of file +| `Parameters` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `Type` | `string` | :heavy_check_mark: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"type": "openrouter:web_search"
} | \ No newline at end of file diff --git a/docs/models/components/subagentreasoning.mdx b/docs/models/components/subagentreasoning.mdx index 4fc27b0f8..a05864f16 100644 --- a/docs/models/components/subagentreasoning.mdx +++ b/docs/models/components/subagentreasoning.mdx @@ -9,5 +9,5 @@ Reasoning configuration forwarded to the subagent call. Use this to control reas | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Effort` | [*components.SubagentReasoningEffort](../../models/components/subagentreasoningeffort.mdx) | ➖ | Reasoning effort level for the subagent call. | -| `MaxTokens` | `*int64` | ➖ | Maximum number of reasoning tokens the subagent may use. Forwarded to the subagent call as `reasoning.max_tokens`. | \ No newline at end of file +| `Effort` | [*components.SubagentReasoningEffort](../../models/components/subagentreasoningeffort.mdx) | :heavy_minus_sign: | Reasoning effort level for the subagent call. | +| `MaxTokens` | `*int64` | :heavy_minus_sign: | Maximum number of reasoning tokens the subagent may use. Forwarded to the subagent call as `reasoning.max_tokens`. | \ No newline at end of file diff --git a/docs/models/components/subagentservertoolconfig.mdx b/docs/models/components/subagentservertoolconfig.mdx index 448b17f34..0f245741f 100644 --- a/docs/models/components/subagentservertoolconfig.mdx +++ b/docs/models/components/subagentservertoolconfig.mdx @@ -9,13 +9,13 @@ Configuration for one openrouter:subagent server tool entry. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `InheritFunctions` | `*bool` | ➖ | EXPERIMENTAL — subject to change without notice. When true, the subagent inherits every client function defined in the request's top-level `tools` list. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. | true | -| `InheritedFunctionNames` | []`string` | ➖ | EXPERIMENTAL — subject to change without notice. Names of the top-level function tools that the subagent will inherit. Any tool that matches by name will be copied fully into the tools array of the subagent. When `inherit_functions` is `true`, this list does nothing, because every client function will be inherited by default. Names are trimmed before validation, so a whitespace-only name is rejected with a `400`. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. | [
"lookup_order"
] | -| `Instructions` | `*string` | ➖ | System instructions for the subagent. When omitted, the subagent responds with no system prompt of its own. | You are a fast, focused worker. Complete the task exactly as described. | -| `MaxCompletionTokens` | `*int64` | ➖ | Maximum number of output tokens (including reasoning) the subagent may produce. When omitted, the provider's default applies. | 2048 | -| `MaxToolCalls` | `*int64` | ➖ | Maximum number of tool-calling steps the subagent may take during its agentic loop. Capped at 25. Only relevant when the subagent is given tools. Forwarded to the subagent call as `max_tool_calls`. | 5 | -| `Model` | `*string` | ➖ | Slug of the model that executes delegated tasks (any OpenRouter model). Typically a smaller, cheaper, faster model than the one delegating. When omitted, the model from the outer API request is used. The subagent tool itself cannot be the subagent model. | ~anthropic/claude-haiku-latest | -| `Name` | `*string` | ➖ | Optional name for this subagent. The model sees one tool per named subagent (and one default for an unnamed entry). Names must be unique across subagent entries. Letters, digits, spaces, underscores, and dashes; trimmed; 1–64 chars. | summarizer | -| `Reasoning` | [*components.SubagentReasoning](../../models/components/subagentreasoning.mdx) | ➖ | Reasoning configuration forwarded to the subagent call. Use this to control reasoning effort and token budget for models that support extended thinking. | \{
"effort": "low"
} | -| `Temperature` | `*float64` | ➖ | Sampling temperature forwarded to the subagent call. When omitted, the provider's default applies. | 0.7 | -| `Tools` | [][components.SubagentNestedTool](../../models/components/subagentnestedtool.mdx) | ➖ | Tools the subagent may use while executing a delegated task. The subagent runs as an agentic sub-agent over these tools, then returns its outcome. Only OpenRouter server tools are supported — function tools are rejected — and the list must not include the subagent tool itself. | | \ No newline at end of file +| `InheritFunctions` | `*bool` | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. When true, the subagent inherits every client function defined in the request's top-level `tools` list. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. | true | +| `InheritedFunctionNames` | []`string` | :heavy_minus_sign: | EXPERIMENTAL — subject to change without notice. Names of the top-level function tools that the subagent will inherit. Any tool that matches by name will be copied fully into the tools array of the subagent. When `inherit_functions` is `true`, this list does nothing, because every client function will be inherited by default. Names are trimmed before validation, so a whitespace-only name is rejected with a `400`. Supported on the Responses API (`/api/v1/responses`) only; other APIs reject it with a `400`. | [
"lookup_order"
] | +| `Instructions` | `*string` | :heavy_minus_sign: | System instructions for the subagent. When omitted, the subagent responds with no system prompt of its own. | You are a fast, focused worker. Complete the task exactly as described. | +| `MaxCompletionTokens` | `*int64` | :heavy_minus_sign: | Maximum number of output tokens (including reasoning) the subagent may produce. When omitted, the provider's default applies. | 2048 | +| `MaxToolCalls` | `*int64` | :heavy_minus_sign: | Maximum number of tool-calling steps the subagent may take during its agentic loop. Capped at 25. Only relevant when the subagent is given tools. Forwarded to the subagent call as `max_tool_calls`. | 5 | +| `Model` | `*string` | :heavy_minus_sign: | Slug of the model that executes delegated tasks (any OpenRouter model). Typically a smaller, cheaper, faster model than the one delegating. When omitted, the model from the outer API request is used. The subagent tool itself cannot be the subagent model. | ~anthropic/claude-haiku-latest | +| `Name` | `*string` | :heavy_minus_sign: | Optional name for this subagent. The model sees one tool per named subagent (and one default for an unnamed entry). Names must be unique across subagent entries. Letters, digits, spaces, underscores, and dashes; trimmed; 1–64 chars. | summarizer | +| `Reasoning` | [*components.SubagentReasoning](../../models/components/subagentreasoning.mdx) | :heavy_minus_sign: | Reasoning configuration forwarded to the subagent call. Use this to control reasoning effort and token budget for models that support extended thinking. | \{
"effort": "low"
} | +| `Temperature` | `*float64` | :heavy_minus_sign: | Sampling temperature forwarded to the subagent call. When omitted, the provider's default applies. | 0.7 | +| `Tools` | [][components.SubagentNestedTool](../../models/components/subagentnestedtool.mdx) | :heavy_minus_sign: | Tools the subagent may use while executing a delegated task. The subagent runs as an agentic sub-agent over these tools, then returns its outcome. Only OpenRouter server tools are supported — function tools are rejected — and the list must not include the subagent tool itself. | | \ No newline at end of file diff --git a/docs/models/components/subagentservertoolopenrouter.mdx b/docs/models/components/subagentservertoolopenrouter.mdx index 63fa3a71f..b14fa52d4 100644 --- a/docs/models/components/subagentservertoolopenrouter.mdx +++ b/docs/models/components/subagentservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: delegates self-contained tasks to a smaller, ch | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.SubagentServerToolConfig](../../models/components/subagentservertoolconfig.mdx) | ➖ | Configuration for one openrouter:subagent server tool entry. | \{
"model": "~anthropic/claude-haiku-latest",
"name": "summarizer"
} | -| `Type` | [components.SubagentServerToolOpenRouterType](../../models/components/subagentservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.SubagentServerToolConfig](../../models/components/subagentservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for one openrouter:subagent server tool entry. | \{
"model": "~anthropic/claude-haiku-latest",
"name": "summarizer"
} | +| `Type` | [components.SubagentServerToolOpenRouterType](../../models/components/subagentservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/submitgenerationfeedbackrequest.mdx b/docs/models/components/submitgenerationfeedbackrequest.mdx index 1487690fe..2f85badb8 100644 --- a/docs/models/components/submitgenerationfeedbackrequest.mdx +++ b/docs/models/components/submitgenerationfeedbackrequest.mdx @@ -9,6 +9,6 @@ Structured feedback about a specific generation | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------ | -| `Category` | [components.SubmitGenerationFeedbackRequestCategory](../../models/components/submitgenerationfeedbackrequestcategory.mdx) | ✅ | The category of feedback being reported | incorrect_response | -| `Comment` | `*string` | ➖ | An optional free-text comment describing the feedback | The model repeated the same paragraph three times. | -| `GenerationID` | `string` | ✅ | The generation to submit feedback on | gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG | \ No newline at end of file +| `Category` | [components.SubmitGenerationFeedbackRequestCategory](../../models/components/submitgenerationfeedbackrequestcategory.mdx) | :heavy_check_mark: | The category of feedback being reported | incorrect_response | +| `Comment` | `*string` | :heavy_minus_sign: | An optional free-text comment describing the feedback | The model repeated the same paragraph three times. | +| `GenerationID` | `string` | :heavy_check_mark: | The generation to submit feedback on | gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG | \ No newline at end of file diff --git a/docs/models/components/submitgenerationfeedbackresponse.mdx b/docs/models/components/submitgenerationfeedbackresponse.mdx index 5dcfa30ff..c4c9de38c 100644 --- a/docs/models/components/submitgenerationfeedbackresponse.mdx +++ b/docs/models/components/submitgenerationfeedbackresponse.mdx @@ -9,4 +9,4 @@ Confirmation that the feedback was recorded | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Data` | [components.SubmitGenerationFeedbackResponseData](../../models/components/submitgenerationfeedbackresponsedata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.SubmitGenerationFeedbackResponseData](../../models/components/submitgenerationfeedbackresponsedata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/submitgenerationfeedbackresponsedata.mdx b/docs/models/components/submitgenerationfeedbackresponsedata.mdx index 8cca376ac..8b77b76c5 100644 --- a/docs/models/components/submitgenerationfeedbackresponsedata.mdx +++ b/docs/models/components/submitgenerationfeedbackresponsedata.mdx @@ -6,4 +6,4 @@ title: "SubmitGenerationFeedbackResponseData" | Field | Type | Required | Description | Example | | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | --------------------------------- | -| `Success` | `bool` | ✅ | Whether the feedback was recorded | true | \ No newline at end of file +| `Success` | `bool` | :heavy_check_mark: | Whether the feedback was recorded | true | \ No newline at end of file diff --git a/docs/models/components/suspendinternresponse.mdx b/docs/models/components/suspendinternresponse.mdx deleted file mode 100644 index c7e5fd966..000000000 --- a/docs/models/components/suspendinternresponse.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "SuspendInternResponse" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `Suspended` | `bool` | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/components/switchyardrouterplugin.mdx b/docs/models/components/switchyardrouterplugin.mdx index 5755a0eed..c4b4857f2 100644 --- a/docs/models/components/switchyardrouterplugin.mdx +++ b/docs/models/components/switchyardrouterplugin.mdx @@ -6,6 +6,6 @@ title: "SwitchyardRouterPlugin" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Algorithm` | [*components.Algorithm](../../models/components/algorithm.mdx) | ➖ | Routing algorithm for this request. "capability" calls a small judge model to rate how demanding the task is, then picks the efficient or capable candidate. "stage" reads the tool-result history (errors, repeated failures, edits landing) and calls the judge only when those signals are undecided. "auto" is "stage" without the judge call. "random" picks one candidate at random. "composite" keeps the tier chosen on the last human turn and re-evaluates tool turns with the stage signals. "passthrough" serves the eligible candidates in the order OpenRouter already ranked them, with no routing decision and no judge call. Omit this field to use the platform default, stage. | | -| `ID` | [components.SwitchyardRouterPluginID](../../models/components/switchyardrouterpluginid.mdx) | ✅ | N/A | | -| `JudgeModel` | `*string` | ➖ | The model that runs the judge call for the judge-backed algorithms ("capability", "stage", and "composite"). The model must support structured outputs and have a provider that your account and request settings allow. Otherwise, the request uses the platform default judge, google/gemini-3.5-flash-lite, or openai/gpt-4o-mini when the default does not fit either, and reports the reason in the routing metadata. The judge call is billed to you like any other request. | openai/gpt-5.4-nano | \ No newline at end of file +| `Algorithm` | [*components.Algorithm](../../models/components/algorithm.mdx) | :heavy_minus_sign: | Routing algorithm for this request. "capability" calls a small judge model to rate how demanding the task is, then picks the efficient or capable candidate. "stage" reads the tool-result history (errors, repeated failures, edits landing) and calls the judge only when those signals are undecided. "auto" is "stage" without the judge call. "random" picks one candidate at random. "composite" keeps the tier chosen on the last human turn and re-evaluates tool turns with the stage signals. "passthrough" serves the eligible candidates in the order OpenRouter already ranked them, with no routing decision and no judge call. Omit this field to use the platform default, stage. | | +| `ID` | [components.SwitchyardRouterPluginID](../../models/components/switchyardrouterpluginid.mdx) | :heavy_check_mark: | N/A | | +| `JudgeModel` | `*string` | :heavy_minus_sign: | The model that runs the judge call for the judge-backed algorithms ("capability", "stage", and "composite"). The model must support structured outputs and have a provider that your account and request settings allow. Otherwise, the request uses the platform default judge, google/gemini-3.5-flash-lite, or openai/gpt-4o-mini when the default does not fit either, and reports the reason in the routing metadata. The judge call is billed to you like any other request. | openai/gpt-5.4-nano | \ No newline at end of file diff --git a/docs/models/components/taskbudget.mdx b/docs/models/components/taskbudget.mdx index 94cb1d952..c59ed5701 100644 --- a/docs/models/components/taskbudget.mdx +++ b/docs/models/components/taskbudget.mdx @@ -9,6 +9,6 @@ Task budget for an agentic turn. The model sees a countdown of remaining tokens | Field | Type | Required | Description | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `Remaining` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | -| `Total` | `int64` | ✅ | N/A | -| `Type` | [components.TypeTokens](../../models/components/typetokens.mdx) | ✅ | N/A | \ No newline at end of file +| `Remaining` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | +| `Total` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.TypeTokens](../../models/components/typetokens.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/taskclassificationitem.mdx b/docs/models/components/taskclassificationitem.mdx index e90fc3ba0..a045e9e59 100644 --- a/docs/models/components/taskclassificationitem.mdx +++ b/docs/models/components/taskclassificationitem.mdx @@ -6,11 +6,11 @@ title: "TaskClassificationItem" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CategoryTokenShare` | `float64` | ✅ | Fraction of this classification's token volume within its macro-category (0–1). Sums to 1 across all classifications sharing the same `macro_category`. | 0.48 | -| `CategoryUsageShare` | `float64` | ✅ | Fraction of this classification's usage within its macro-category (0–1). Sums to 1 across all classifications sharing the same `macro_category`. | 0.51 | -| `DisplayName` | `string` | ✅ | Human-readable label for the classification. | Code Generation | -| `MacroCategory` | `string` | ✅ | Coarse grouping derived from the tag prefix: `code`, `data`, `agent`, or `general`. | code | -| `Models` | [][components.TaskClassificationModel](../../models/components/taskclassificationmodel.mdx) | ✅ | Top models for this classification by request volume, sorted descending. Each entry reports the model's share of this classification's requests and tokens. | | -| `Tag` | `string` | ✅ | Classification tag identifier (e.g. `code:general_impl`, `agent:web_search`). | code:general_impl | -| `TokenShare` | `float64` | ✅ | Fraction of classified sampled token volume (prompt + completion) attributed to this classification (0–1). The unclassified `other` bucket is excluded from the denominator. | 0.31 | -| `UsageShare` | `float64` | ✅ | Fraction of classified sampled requests attributed to this classification (0–1). The unclassified `other` bucket is excluded from the denominator. | 0.23 | \ No newline at end of file +| `CategoryTokenShare` | `float64` | :heavy_check_mark: | Fraction of this classification's token volume within its macro-category (0–1). Sums to 1 across all classifications sharing the same `macro_category`. | 0.48 | +| `CategoryUsageShare` | `float64` | :heavy_check_mark: | Fraction of this classification's usage within its macro-category (0–1). Sums to 1 across all classifications sharing the same `macro_category`. | 0.51 | +| `DisplayName` | `string` | :heavy_check_mark: | Human-readable label for the classification. | Code Generation | +| `MacroCategory` | `string` | :heavy_check_mark: | Coarse grouping derived from the tag prefix: `code`, `data`, `agent`, or `general`. | code | +| `Models` | [][components.TaskClassificationModel](../../models/components/taskclassificationmodel.mdx) | :heavy_check_mark: | Top models for this classification by request volume, sorted descending. Each entry reports the model's share of this classification's requests and tokens. | | +| `Tag` | `string` | :heavy_check_mark: | Classification tag identifier (e.g. `code:general_impl`, `agent:web_search`). | code:general_impl | +| `TokenShare` | `float64` | :heavy_check_mark: | Fraction of classified sampled token volume (prompt + completion) attributed to this classification (0–1). The unclassified `other` bucket is excluded from the denominator. | 0.31 | +| `UsageShare` | `float64` | :heavy_check_mark: | Fraction of classified sampled requests attributed to this classification (0–1). The unclassified `other` bucket is excluded from the denominator. | 0.23 | \ No newline at end of file diff --git a/docs/models/components/taskclassificationmacrocategory.mdx b/docs/models/components/taskclassificationmacrocategory.mdx index 893afac08..82dc99918 100644 --- a/docs/models/components/taskclassificationmacrocategory.mdx +++ b/docs/models/components/taskclassificationmacrocategory.mdx @@ -6,7 +6,7 @@ title: "TaskClassificationMacroCategory" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Key` | `string` | ✅ | Macro-category identifier. | code | -| `Label` | `string` | ✅ | Human-readable label for the macro-category. | Code | -| `TokenShare` | `float64` | ✅ | Combined token share of all classifications in this macro-category (0–1). | 0.52 | -| `UsageShare` | `float64` | ✅ | Combined usage share of all classifications in this macro-category (0–1). | 0.45 | \ No newline at end of file +| `Key` | `string` | :heavy_check_mark: | Macro-category identifier. | code | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the macro-category. | Code | +| `TokenShare` | `float64` | :heavy_check_mark: | Combined token share of all classifications in this macro-category (0–1). | 0.52 | +| `UsageShare` | `float64` | :heavy_check_mark: | Combined usage share of all classifications in this macro-category (0–1). | 0.45 | \ No newline at end of file diff --git a/docs/models/components/taskclassificationmodel.mdx b/docs/models/components/taskclassificationmodel.mdx index edb6e0690..0ae63dab3 100644 --- a/docs/models/components/taskclassificationmodel.mdx +++ b/docs/models/components/taskclassificationmodel.mdx @@ -6,6 +6,6 @@ title: "TaskClassificationModel" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | Model identifier (permaslug). | openai/gpt-4.1-mini | -| `TagTokenShare` | `float64` | ✅ | Fraction of this classification's sampled token volume attributed to this model (0–1). Sums to ≤1 across the returned models (only top-N are included and unattributed requests are excluded). | 0.75 | -| `TagUsageShare` | `float64` | ✅ | Fraction of this classification's sampled requests attributed to this model (0–1). Sums to ≤1 across the returned models (only top-N are included and unattributed requests are excluded). | 0.55 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Model identifier (permaslug). | openai/gpt-4.1-mini | +| `TagTokenShare` | `float64` | :heavy_check_mark: | Fraction of this classification's sampled token volume attributed to this model (0–1). Sums to ≤1 across the returned models (only top-N are included and unattributed requests are excluded). | 0.75 | +| `TagUsageShare` | `float64` | :heavy_check_mark: | Fraction of this classification's sampled requests attributed to this model (0–1). Sums to ≤1 across the returned models (only top-N are included and unattributed requests are excluded). | 0.55 | \ No newline at end of file diff --git a/docs/models/components/taskclassificationresponse.mdx b/docs/models/components/taskclassificationresponse.mdx index 165cd4a38..2e98b3220 100644 --- a/docs/models/components/taskclassificationresponse.mdx +++ b/docs/models/components/taskclassificationresponse.mdx @@ -6,4 +6,4 @@ title: "TaskClassificationResponse" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `Data` | [components.TaskClassificationResponseData](../../models/components/taskclassificationresponsedata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.TaskClassificationResponseData](../../models/components/taskclassificationresponsedata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/taskclassificationresponsedata.mdx b/docs/models/components/taskclassificationresponsedata.mdx index ef7557b6f..829d78b70 100644 --- a/docs/models/components/taskclassificationresponsedata.mdx +++ b/docs/models/components/taskclassificationresponsedata.mdx @@ -6,7 +6,7 @@ title: "TaskClassificationResponseData" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AsOf` | `string` | ✅ | UTC date (YYYY-MM-DD) of the window upper bound (yesterday). Data is exclusive of the current incomplete UTC day. This is the expected latest date in the snapshot; it does not confirm data presence for that date. | 2026-06-17 | -| `Classifications` | [][components.TaskClassificationItem](../../models/components/taskclassificationitem.mdx) | ✅ | Per-task classification market-share data, sorted by usage_share descending. | | -| `MacroCategories` | [][components.TaskClassificationMacroCategory](../../models/components/taskclassificationmacrocategory.mdx) | ✅ | Aggregate market-share data per macro-category (code, data, agent, general). | | -| `WindowDays` | `int64` | ✅ | Number of trailing days covered by this snapshot. | 7 | \ No newline at end of file +| `AsOf` | `string` | :heavy_check_mark: | UTC date (YYYY-MM-DD) of the window upper bound (yesterday). Data is exclusive of the current incomplete UTC day. This is the expected latest date in the snapshot; it does not confirm data presence for that date. | 2026-06-17 | +| `Classifications` | [][components.TaskClassificationItem](../../models/components/taskclassificationitem.mdx) | :heavy_check_mark: | Per-task classification market-share data, sorted by usage_share descending. | | +| `MacroCategories` | [][components.TaskClassificationMacroCategory](../../models/components/taskclassificationmacrocategory.mdx) | :heavy_check_mark: | Aggregate market-share data per macro-category (code, data, agent, general). | | +| `WindowDays` | `int64` | :heavy_check_mark: | Number of trailing days covered by this snapshot. | 7 | \ No newline at end of file diff --git a/docs/models/components/textdeltaevent.mdx b/docs/models/components/textdeltaevent.mdx index 70295e2f9..a59e7d5a7 100644 --- a/docs/models/components/textdeltaevent.mdx +++ b/docs/models/components/textdeltaevent.mdx @@ -9,10 +9,10 @@ Event emitted when a text delta is streamed | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `ContentIndex` | `int64` | ✅ | N/A | -| `Delta` | `string` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Logprobs` | [][components.StreamLogprob](../../models/components/streamlogprob.mdx) | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.TextDeltaEventType](../../models/components/textdeltaeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `Delta` | `string` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Logprobs` | [][components.StreamLogprob](../../models/components/streamlogprob.mdx) | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.TextDeltaEventType](../../models/components/textdeltaeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/textdoneevent.mdx b/docs/models/components/textdoneevent.mdx index 13414eb8f..3f947ad4a 100644 --- a/docs/models/components/textdoneevent.mdx +++ b/docs/models/components/textdoneevent.mdx @@ -9,10 +9,10 @@ Event emitted when text streaming is complete | Field | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `ContentIndex` | `int64` | ✅ | N/A | -| `ItemID` | `string` | ✅ | N/A | -| `Logprobs` | [][components.StreamLogprob](../../models/components/streamlogprob.mdx) | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Text` | `string` | ✅ | N/A | -| `Type` | [components.TextDoneEventType](../../models/components/textdoneeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ContentIndex` | `int64` | :heavy_check_mark: | N/A | +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `Logprobs` | [][components.StreamLogprob](../../models/components/streamlogprob.mdx) | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.TextDoneEventType](../../models/components/textdoneeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/textextendedconfig.mdx b/docs/models/components/textextendedconfig.mdx index 3770834cd..908cb333c 100644 --- a/docs/models/components/textextendedconfig.mdx +++ b/docs/models/components/textextendedconfig.mdx @@ -9,5 +9,5 @@ Text output configuration including format and verbosity | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `Format` | [*components.Formats](../../models/components/formats.mdx) | ➖ | Text response format configuration | \{
"type": "text"
} | -| `Verbosity` | optionalnullable.OptionalNullable[[components.Verbosity](../../models/components/verbosity.mdx)] | ➖ | N/A | | \ No newline at end of file +| `Format` | [*components.Formats](../../models/components/formats.mdx) | :heavy_minus_sign: | Text response format configuration | \{
"type": "text"
} | +| `Verbosity` | optionalnullable.OptionalNullable[[components.Verbosity](../../models/components/verbosity.mdx)] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/textgeneration.mdx b/docs/models/components/textgeneration.mdx index 5fb004bd2..6e8bb5af4 100644 --- a/docs/models/components/textgeneration.mdx +++ b/docs/models/components/textgeneration.mdx @@ -6,6 +6,6 @@ title: "TextGeneration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/thinkingadaptive.mdx b/docs/models/components/thinkingadaptive.mdx index d61b08341..6fb273f81 100644 --- a/docs/models/components/thinkingadaptive.mdx +++ b/docs/models/components/thinkingadaptive.mdx @@ -6,6 +6,6 @@ title: "ThinkingAdaptive" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -| `BlockBinding` | optionalnullable.OptionalNullable[[components.AnthropicThinkingBlockBinding](../../models/components/anthropicthinkingblockbinding.mdx)] | ➖ | N/A | \{
"prefix_mismatch_behavior": "drop_block"
} | -| `Display` | optionalnullable.OptionalNullable[[components.AnthropicThinkingDisplay](../../models/components/anthropicthinkingdisplay.mdx)] | ➖ | N/A | summarized | -| `Type` | [components.TypeAdaptive](../../models/components/typeadaptive.mdx) | ✅ | N/A | | \ No newline at end of file +| `BlockBinding` | optionalnullable.OptionalNullable[[components.AnthropicThinkingBlockBinding](../../models/components/anthropicthinkingblockbinding.mdx)] | :heavy_minus_sign: | N/A | \{
"prefix_mismatch_behavior": "drop_block"
} | +| `Display` | optionalnullable.OptionalNullable[[components.AnthropicThinkingDisplay](../../models/components/anthropicthinkingdisplay.mdx)] | :heavy_minus_sign: | N/A | summarized | +| `Type` | [components.TypeAdaptive](../../models/components/typeadaptive.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/thinkingbetweentools.mdx b/docs/models/components/thinkingbetweentools.mdx index 198f80cee..46973e9e6 100644 --- a/docs/models/components/thinkingbetweentools.mdx +++ b/docs/models/components/thinkingbetweentools.mdx @@ -6,4 +6,4 @@ title: "ThinkingBetweenTools" | Field | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Type` | [components.TypeBetweenTools](../../models/components/typebetweentools.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.TypeBetweenTools](../../models/components/typebetweentools.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/thinkingdisabled.mdx b/docs/models/components/thinkingdisabled.mdx index c8b9b230a..22ded428c 100644 --- a/docs/models/components/thinkingdisabled.mdx +++ b/docs/models/components/thinkingdisabled.mdx @@ -6,4 +6,4 @@ title: "ThinkingDisabled" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Type` | [components.ThinkingTypeDisabled](../../models/components/thinkingtypedisabled.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.ThinkingTypeDisabled](../../models/components/thinkingtypedisabled.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/thinkingenabled.mdx b/docs/models/components/thinkingenabled.mdx index ee4e54d92..3688aa85d 100644 --- a/docs/models/components/thinkingenabled.mdx +++ b/docs/models/components/thinkingenabled.mdx @@ -6,7 +6,7 @@ title: "ThinkingEnabled" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- | -| `BlockBinding` | optionalnullable.OptionalNullable[[components.AnthropicThinkingBlockBinding](../../models/components/anthropicthinkingblockbinding.mdx)] | ➖ | N/A | \{
"prefix_mismatch_behavior": "drop_block"
} | -| `BudgetTokens` | `int64` | ✅ | N/A | | -| `Display` | optionalnullable.OptionalNullable[[components.AnthropicThinkingDisplay](../../models/components/anthropicthinkingdisplay.mdx)] | ➖ | N/A | summarized | -| `Type` | [components.TypeEnabled](../../models/components/typeenabled.mdx) | ✅ | N/A | | \ No newline at end of file +| `BlockBinding` | optionalnullable.OptionalNullable[[components.AnthropicThinkingBlockBinding](../../models/components/anthropicthinkingblockbinding.mdx)] | :heavy_minus_sign: | N/A | \{
"prefix_mismatch_behavior": "drop_block"
} | +| `BudgetTokens` | `int64` | :heavy_check_mark: | N/A | | +| `Display` | optionalnullable.OptionalNullable[[components.AnthropicThinkingDisplay](../../models/components/anthropicthinkingdisplay.mdx)] | :heavy_minus_sign: | N/A | summarized | +| `Type` | [components.TypeEnabled](../../models/components/typeenabled.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/tokenexchangerequest.mdx b/docs/models/components/tokenexchangerequest.mdx index 490887b2a..86073c28a 100644 --- a/docs/models/components/tokenexchangerequest.mdx +++ b/docs/models/components/tokenexchangerequest.mdx @@ -9,9 +9,9 @@ RFC 8693 token exchange request body (application/x-www-form-urlencoded). | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `FederationPolicyID` | `string` | ✅ | The federation policy to evaluate, from Settings → Workload identity. Binds the exchange to one organization. | 4b2f7d1e-8c3a-4e5f-9a6b-1c2d3e4f5a6b | -| `GrantType` | [components.GrantType](../../models/components/granttype.mdx) | ✅ | Must be `urn:ietf:params:oauth:grant-type:token-exchange`. | urn:ietf:params:oauth:grant-type:token-exchange | -| `RequestedTokenType` | [*components.RequestedTokenType](../../models/components/requestedtokentype.mdx) | ➖ | Optional; when present must be `urn:ietf:params:oauth:token-type:access_token`. | urn:ietf:params:oauth:token-type:access_token | -| `Scope` | [*components.TokenExchangeRequestScope](../../models/components/tokenexchangerequestscope.mdx) | ➖ | Optional; when present must match the policy's key: `management` for a management key, `inference` otherwise. | inference | -| `SubjectToken` | `string` | ✅ | The JWT issued by your identity provider. | \ | -| `SubjectTokenType` | [components.SubjectTokenType](../../models/components/subjecttokentype.mdx) | ✅ | Must be `urn:ietf:params:oauth:token-type:jwt`. | urn:ietf:params:oauth:token-type:jwt | \ No newline at end of file +| `FederationPolicyID` | `string` | :heavy_check_mark: | The federation policy to evaluate, from Settings → Workload identity. Binds the exchange to one organization. | 4b2f7d1e-8c3a-4e5f-9a6b-1c2d3e4f5a6b | +| `GrantType` | [components.GrantType](../../models/components/granttype.mdx) | :heavy_check_mark: | Must be `urn:ietf:params:oauth:grant-type:token-exchange`. | urn:ietf:params:oauth:grant-type:token-exchange | +| `RequestedTokenType` | [*components.RequestedTokenType](../../models/components/requestedtokentype.mdx) | :heavy_minus_sign: | Optional; when present must be `urn:ietf:params:oauth:token-type:access_token`. | urn:ietf:params:oauth:token-type:access_token | +| `Scope` | [*components.TokenExchangeRequestScope](../../models/components/tokenexchangerequestscope.mdx) | :heavy_minus_sign: | Optional; when present must match the policy's key: `management` for a management key, `inference` otherwise. | inference | +| `SubjectToken` | `string` | :heavy_check_mark: | The JWT issued by your identity provider. | \ | +| `SubjectTokenType` | [components.SubjectTokenType](../../models/components/subjecttokentype.mdx) | :heavy_check_mark: | Must be `urn:ietf:params:oauth:token-type:jwt`. | urn:ietf:params:oauth:token-type:jwt | \ No newline at end of file diff --git a/docs/models/components/tokenexchangeresponse.mdx b/docs/models/components/tokenexchangeresponse.mdx index 1b64235c6..04d23275f 100644 --- a/docs/models/components/tokenexchangeresponse.mdx +++ b/docs/models/components/tokenexchangeresponse.mdx @@ -9,8 +9,8 @@ RFC 8693 token exchange response. | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -| `AccessToken` | `string` | ✅ | A short-lived JWT to send as `Authorization: Bearer` to the inference API. | \ | -| `ExpiresIn` | `int64` | ✅ | Seconds until the access token expires: at most 15 minutes, and never later than the subject token expires. | 900 | -| `IssuedTokenType` | [components.IssuedTokenType](../../models/components/issuedtokentype.mdx) | ✅ | N/A | urn:ietf:params:oauth:token-type:access_token | -| `Scope` | `string` | ✅ | The one capability the token grants, fixed by the kind of key the policy acts as: `inference` or `management`. | inference | -| `TokenType` | [components.TokenType](../../models/components/tokentype.mdx) | ✅ | N/A | Bearer | \ No newline at end of file +| `AccessToken` | `string` | :heavy_check_mark: | A short-lived JWT to send as `Authorization: Bearer` to the inference API. | \ | +| `ExpiresIn` | `int64` | :heavy_check_mark: | Seconds until the access token expires: at most 15 minutes, and never later than the subject token expires. | 900 | +| `IssuedTokenType` | [components.IssuedTokenType](../../models/components/issuedtokentype.mdx) | :heavy_check_mark: | N/A | urn:ietf:params:oauth:token-type:access_token | +| `Scope` | `string` | :heavy_check_mark: | The one capability the token grants, fixed by the kind of key the policy acts as: `inference` or `management`. | inference | +| `TokenType` | [components.TokenType](../../models/components/tokentype.mdx) | :heavy_check_mark: | N/A | Bearer | \ No newline at end of file diff --git a/docs/models/components/tooladvisor20260301.mdx b/docs/models/components/tooladvisor20260301.mdx index f48ca1fc9..7f6556104 100644 --- a/docs/models/components/tooladvisor20260301.mdx +++ b/docs/models/components/tooladvisor20260301.mdx @@ -6,11 +6,11 @@ title: "ToolAdvisor20260301" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | ➖ | N/A | [
"direct"
] | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Caching` | optionalnullable.OptionalNullable[[components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx)] | ➖ | N/A | \{
"type": "ephemeral"
} | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `MaxUses` | `*int64` | ➖ | N/A | | -| `Model` | `string` | ✅ | N/A | | -| `Name` | [components.NameAdvisor](../../models/components/nameadvisor.mdx) | ✅ | N/A | | -| `Type` | [components.TypeAdvisor20260301](../../models/components/typeadvisor20260301.mdx) | ✅ | N/A | | \ No newline at end of file +| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | :heavy_minus_sign: | N/A | [
"direct"
] | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Caching` | optionalnullable.OptionalNullable[[components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx)] | :heavy_minus_sign: | N/A | \{
"type": "ephemeral"
} | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `MaxUses` | `*int64` | :heavy_minus_sign: | N/A | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `Name` | [components.NameAdvisor](../../models/components/nameadvisor.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeAdvisor20260301](../../models/components/typeadvisor20260301.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolbash20250124.mdx b/docs/models/components/toolbash20250124.mdx index 65528022e..6b1fa0de6 100644 --- a/docs/models/components/toolbash20250124.mdx +++ b/docs/models/components/toolbash20250124.mdx @@ -6,6 +6,6 @@ title: "ToolBash20250124" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Name` | [components.NameBash](../../models/components/namebash.mdx) | ✅ | N/A | | -| `Type` | [components.TypeBash20250124](../../models/components/typebash20250124.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Name` | [components.NameBash](../../models/components/namebash.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeBash20250124](../../models/components/typebash20250124.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolcall.mdx b/docs/models/components/toolcall.mdx index 7309e9b58..3ba8d0f95 100644 --- a/docs/models/components/toolcall.mdx +++ b/docs/models/components/toolcall.mdx @@ -6,7 +6,7 @@ title: "ToolCall" | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Function` | [components.BatchObjectFunction](../../models/components/batchobjectfunction.mdx) | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Index` | `int64` | ✅ | N/A | -| `Type` | [components.ChoiceTypeFunction](../../models/components/choicetypefunction.mdx) | ✅ | N/A | \ No newline at end of file +| `Function` | [components.BatchObjectFunction](../../models/components/batchobjectfunction.mdx) | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Index` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.ChoiceTypeFunction](../../models/components/choicetypefunction.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolchoiceallowed.mdx b/docs/models/components/toolchoiceallowed.mdx index 76e8cc3ef..39e02a062 100644 --- a/docs/models/components/toolchoiceallowed.mdx +++ b/docs/models/components/toolchoiceallowed.mdx @@ -9,6 +9,6 @@ Constrains the model to a pre-defined set of allowed tools | Field | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `Mode` | [components.Mode](../../models/components/mode.mdx) | ✅ | N/A | -| `Tools` | []map[string]`any` | ✅ | N/A | -| `Type` | [components.ToolChoiceAllowedType](../../models/components/toolchoiceallowedtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Mode` | [components.Mode](../../models/components/mode.mdx) | :heavy_check_mark: | N/A | +| `Tools` | []map[string]`any` | :heavy_check_mark: | N/A | +| `Type` | [components.ToolChoiceAllowedType](../../models/components/toolchoiceallowedtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolchoiceany.mdx b/docs/models/components/toolchoiceany.mdx index e0bf54b3c..0896d1577 100644 --- a/docs/models/components/toolchoiceany.mdx +++ b/docs/models/components/toolchoiceany.mdx @@ -6,5 +6,5 @@ title: "ToolChoiceAny" | Field | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `DisableParallelToolUse` | `*bool` | ➖ | N/A | -| `Type` | [components.TypeAny](../../models/components/typeany.mdx) | ✅ | N/A | \ No newline at end of file +| `DisableParallelToolUse` | `*bool` | :heavy_minus_sign: | N/A | +| `Type` | [components.TypeAny](../../models/components/typeany.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolchoiceauto.mdx b/docs/models/components/toolchoiceauto.mdx index 61a434777..41a391880 100644 --- a/docs/models/components/toolchoiceauto.mdx +++ b/docs/models/components/toolchoiceauto.mdx @@ -6,5 +6,5 @@ title: "ToolChoiceAuto" | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `DisableParallelToolUse` | `*bool` | ➖ | N/A | -| `Type` | [components.ToolChoiceTypeAuto](../../models/components/toolchoicetypeauto.mdx) | ✅ | N/A | \ No newline at end of file +| `DisableParallelToolUse` | `*bool` | :heavy_minus_sign: | N/A | +| `Type` | [components.ToolChoiceTypeAuto](../../models/components/toolchoicetypeauto.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolchoicenone.mdx b/docs/models/components/toolchoicenone.mdx index 4a0dc016a..0b431b9a6 100644 --- a/docs/models/components/toolchoicenone.mdx +++ b/docs/models/components/toolchoicenone.mdx @@ -6,4 +6,4 @@ title: "ToolChoiceNone" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Type` | [components.TypeNone](../../models/components/typenone.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.TypeNone](../../models/components/typenone.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolchoicesupport.mdx b/docs/models/components/toolchoicesupport.mdx index 0ddd26b8f..682bee4e9 100644 --- a/docs/models/components/toolchoicesupport.mdx +++ b/docs/models/components/toolchoicesupport.mdx @@ -9,7 +9,7 @@ Per-variant `tool_choice` support. `tool_choice` in `supported_parameters` only | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Auto` | `bool` | ✅ | Whether the endpoint supports `"tool_choice": "auto"`. | -| `Function` | `bool` | ✅ | Whether the endpoint supports naming a function, `"tool_choice": {"type": "function", ...}`. | -| `None` | `bool` | ✅ | Whether the endpoint supports `"tool_choice": "none"`. | -| `Required` | `bool` | ✅ | Whether the endpoint supports `"tool_choice": "required"`. | \ No newline at end of file +| `Auto` | `bool` | :heavy_check_mark: | Whether the endpoint supports `"tool_choice": "auto"`. | +| `Function` | `bool` | :heavy_check_mark: | Whether the endpoint supports naming a function, `"tool_choice": {"type": "function", ...}`. | +| `None` | `bool` | :heavy_check_mark: | Whether the endpoint supports `"tool_choice": "none"`. | +| `Required` | `bool` | :heavy_check_mark: | Whether the endpoint supports `"tool_choice": "required"`. | \ No newline at end of file diff --git a/docs/models/components/toolchoicetool.mdx b/docs/models/components/toolchoicetool.mdx index d666dad76..42539fc3e 100644 --- a/docs/models/components/toolchoicetool.mdx +++ b/docs/models/components/toolchoicetool.mdx @@ -6,6 +6,6 @@ title: "ToolChoiceTool" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `DisableParallelToolUse` | `*bool` | ➖ | N/A | -| `Name` | `string` | ✅ | N/A | -| `Type` | [components.TypeTool](../../models/components/typetool.mdx) | ✅ | N/A | \ No newline at end of file +| `DisableParallelToolUse` | `*bool` | :heavy_minus_sign: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.TypeTool](../../models/components/typetool.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolcustom.mdx b/docs/models/components/toolcustom.mdx index f7e23ae5f..8b8aabd4d 100644 --- a/docs/models/components/toolcustom.mdx +++ b/docs/models/components/toolcustom.mdx @@ -6,10 +6,10 @@ title: "ToolCustom" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `DeferLoading` | `*bool` | ➖ | N/A | | -| `Description` | `*string` | ➖ | N/A | | -| `InputSchema` | [components.InputSchema](../../models/components/inputschema.mdx) | ✅ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Strict` | `*bool` | ➖ | N/A | | -| `Type` | [*components.ToolTypeCustom](../../models/components/tooltypecustom.mdx) | ➖ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | N/A | | +| `Description` | `*string` | :heavy_minus_sign: | N/A | | +| `InputSchema` | [components.InputSchema](../../models/components/inputschema.mdx) | :heavy_check_mark: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Strict` | `*bool` | :heavy_minus_sign: | N/A | | +| `Type` | [*components.ToolTypeCustom](../../models/components/tooltypecustom.mdx) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolsearchcallitem.mdx b/docs/models/components/toolsearchcallitem.mdx index 46dd8ead6..27a27b2fa 100644 --- a/docs/models/components/toolsearchcallitem.mdx +++ b/docs/models/components/toolsearchcallitem.mdx @@ -9,9 +9,9 @@ A tool search call the client executed | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `Arguments` | `any` | ➖ | N/A | -| `CallID` | `string` | ✅ | N/A | -| `Execution` | [components.ToolSearchCallItemExecution](../../models/components/toolsearchcallitemexecution.mdx) | ✅ | N/A | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Status` | optionalnullable.OptionalNullable[[components.ToolSearchCallItemStatus](../../models/components/toolsearchcallitemstatus.mdx)] | ➖ | N/A | -| `Type` | [components.ToolSearchCallItemType](../../models/components/toolsearchcallitemtype.mdx) | ✅ | N/A | \ No newline at end of file +| `Arguments` | `any` | :heavy_minus_sign: | N/A | +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `Execution` | [components.ToolSearchCallItemExecution](../../models/components/toolsearchcallitemexecution.mdx) | :heavy_check_mark: | N/A | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Status` | optionalnullable.OptionalNullable[[components.ToolSearchCallItemStatus](../../models/components/toolsearchcallitemstatus.mdx)] | :heavy_minus_sign: | N/A | +| `Type` | [components.ToolSearchCallItemType](../../models/components/toolsearchcallitemtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolsearchoutputitem.mdx b/docs/models/components/toolsearchoutputitem.mdx index 27526276f..acb5494c9 100644 --- a/docs/models/components/toolsearchoutputitem.mdx +++ b/docs/models/components/toolsearchoutputitem.mdx @@ -9,9 +9,9 @@ The tools a client-executed tool search loaded | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| `CallID` | `string` | ✅ | N/A | -| `Execution` | [components.ToolSearchOutputItemExecution](../../models/components/toolsearchoutputitemexecution.mdx) | ✅ | N/A | -| `ID` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Status` | optionalnullable.OptionalNullable[[components.ToolSearchOutputItemStatus](../../models/components/toolsearchoutputitemstatus.mdx)] | ➖ | N/A | -| `Tools` | [][components.ToolSearchOutputItemToolUnion](../../models/components/toolsearchoutputitemtoolunion.mdx) | ✅ | N/A | -| `Type` | [components.TypeToolSearchOutput](../../models/components/typetoolsearchoutput.mdx) | ✅ | N/A | \ No newline at end of file +| `CallID` | `string` | :heavy_check_mark: | N/A | +| `Execution` | [components.ToolSearchOutputItemExecution](../../models/components/toolsearchoutputitemexecution.mdx) | :heavy_check_mark: | N/A | +| `ID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Status` | optionalnullable.OptionalNullable[[components.ToolSearchOutputItemStatus](../../models/components/toolsearchoutputitemstatus.mdx)] | :heavy_minus_sign: | N/A | +| `Tools` | [][components.ToolSearchOutputItemToolUnion](../../models/components/toolsearchoutputitemtoolunion.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeToolSearchOutput](../../models/components/typetoolsearchoutput.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolsearchoutputitemtool.mdx b/docs/models/components/toolsearchoutputitemtool.mdx index 1998f90de..fb1397335 100644 --- a/docs/models/components/toolsearchoutputitemtool.mdx +++ b/docs/models/components/toolsearchoutputitemtool.mdx @@ -6,5 +6,5 @@ title: "ToolSearchOutputItemTool" | Field | Type | Required | Description | | ---------------------- | ---------------------- | ---------------------- | ---------------------- | -| `Type` | `string` | ✅ | N/A | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Type` | `string` | :heavy_check_mark: | N/A | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolsearchoutputitemtoolfunction.mdx b/docs/models/components/toolsearchoutputitemtoolfunction.mdx index 928441604..4c52ddd8a 100644 --- a/docs/models/components/toolsearchoutputitemtoolfunction.mdx +++ b/docs/models/components/toolsearchoutputitemtoolfunction.mdx @@ -9,12 +9,12 @@ Function tool definition | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | | -| `Name` | `string` | ✅ | N/A | | -| `Parameters` | map[string]`any` | ✅ | N/A | | -| `Strict` | optionalnullable.OptionalNullable[`bool`] | ➖ | N/A | | -| `Type` | [components.ToolSearchOutputItemTypeFunction](../../models/components/toolsearchoutputitemtypefunction.mdx) | ✅ | N/A | | -| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.ToolSearchOutputItemAllowedCaller](../../models/components/toolsearchoutputitemallowedcaller.mdx)] | ➖ | N/A | | -| `Async` | `*bool` | ➖ | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | -| `DeferLoading` | `*bool` | ➖ | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | -| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | | \ No newline at end of file +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | | +| `Name` | `string` | :heavy_check_mark: | N/A | | +| `Parameters` | map[string]`any` | :heavy_check_mark: | N/A | | +| `Strict` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | N/A | | +| `Type` | [components.ToolSearchOutputItemTypeFunction](../../models/components/toolsearchoutputitemtypefunction.mdx) | :heavy_check_mark: | N/A | | +| `AllowedCallers` | optionalnullable.OptionalNullable[[][components.ToolSearchOutputItemAllowedCaller](../../models/components/toolsearchoutputitemallowedcaller.mdx)] | :heavy_minus_sign: | N/A | | +| `Async` | `*bool` | :heavy_minus_sign: | Lets the model keep working after calling this tool instead of waiting for its output. The tool is still executed by the client; return the result in a later request as a `function_call_output` with the original `call_id`. Only honored by providers whose Responses API supports async tools; ignored elsewhere. | true | +| `DeferLoading` | `*bool` | :heavy_minus_sign: | Withhold this tool from the model until `openrouter:tool_search` finds it. Where the request declares no search tool, OpenRouter may add `openrouter:tool_search` to serve the flag, and otherwise sends the tool in full. A request that declares the search tool itself must keep at least one tool non-deferred. | true | +| `OutputSchema` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolsearchservertool.mdx b/docs/models/components/toolsearchservertool.mdx index 466ee3476..39e574fea 100644 --- a/docs/models/components/toolsearchservertool.mdx +++ b/docs/models/components/toolsearchservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: finds tools marked `defer_loading` and makes th | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.ToolSearchServerToolConfig](../../models/components/toolsearchservertoolconfig.mdx) | ➖ | Configuration for the openrouter:tool_search server tool | \{
"max_results": 5
} | -| `Type` | [components.ToolSearchServerToolType](../../models/components/toolsearchservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.ToolSearchServerToolConfig](../../models/components/toolsearchservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:tool_search server tool | \{
"max_results": 5
} | +| `Type` | [components.ToolSearchServerToolType](../../models/components/toolsearchservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolsearchservertoolconfig.mdx b/docs/models/components/toolsearchservertoolconfig.mdx index 7a0423737..85ad9eb81 100644 --- a/docs/models/components/toolsearchservertoolconfig.mdx +++ b/docs/models/components/toolsearchservertoolconfig.mdx @@ -9,4 +9,4 @@ Configuration for the openrouter:tool_search server tool | Field | Type | Required | Description | Example | | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | ---------------------------------------------------- | -| `MaxResults` | `*int64` | ➖ | Maximum tools returned by one search. Defaults to 5. | 5 | \ No newline at end of file +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum tools returned by one search. Defaults to 5. | 5 | \ No newline at end of file diff --git a/docs/models/components/tooltexteditor20250124.mdx b/docs/models/components/tooltexteditor20250124.mdx index c8a0aecad..5ae15508a 100644 --- a/docs/models/components/tooltexteditor20250124.mdx +++ b/docs/models/components/tooltexteditor20250124.mdx @@ -6,6 +6,6 @@ title: "ToolTextEditor20250124" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `Name` | [components.NameStrReplaceEditor](../../models/components/namestrreplaceeditor.mdx) | ✅ | N/A | | -| `Type` | [components.TypeTextEditor20250124](../../models/components/typetexteditor20250124.mdx) | ✅ | N/A | | \ No newline at end of file +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `Name` | [components.NameStrReplaceEditor](../../models/components/namestrreplaceeditor.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeTextEditor20250124](../../models/components/typetexteditor20250124.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/toolusesevaluated.mdx b/docs/models/components/toolusesevaluated.mdx index a8af4ff6e..7eb10e637 100644 --- a/docs/models/components/toolusesevaluated.mdx +++ b/docs/models/components/toolusesevaluated.mdx @@ -6,6 +6,6 @@ title: "ToolUsesEvaluated" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Explanation` | `*string` | ➖ | N/A | -| `Outcome` | [components.ArmorSafeguardResultOutcome](../../models/components/armorsafeguardresultoutcome.mdx) | ✅ | N/A | -| `Type` | [components.TypeEvaluated](../../models/components/typeevaluated.mdx) | ✅ | N/A | \ No newline at end of file +| `Explanation` | `*string` | :heavy_minus_sign: | N/A | +| `Outcome` | [components.ArmorSafeguardResultOutcome](../../models/components/armorsafeguardresultoutcome.mdx) | :heavy_check_mark: | N/A | +| `Type` | [components.TypeEvaluated](../../models/components/typeevaluated.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolusesskipped.mdx b/docs/models/components/toolusesskipped.mdx index 2561c4010..595f676d2 100644 --- a/docs/models/components/toolusesskipped.mdx +++ b/docs/models/components/toolusesskipped.mdx @@ -6,4 +6,4 @@ title: "ToolUsesSkipped" | Field | Type | Required | Description | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Type` | [components.TypeSkipped](../../models/components/typeskipped.mdx) | ✅ | N/A | \ No newline at end of file +| `Type` | [components.TypeSkipped](../../models/components/typeskipped.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolusesunavailable.mdx b/docs/models/components/toolusesunavailable.mdx index a193cc4cc..f5104556e 100644 --- a/docs/models/components/toolusesunavailable.mdx +++ b/docs/models/components/toolusesunavailable.mdx @@ -6,5 +6,5 @@ title: "ToolUsesUnavailable" | Field | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Reason` | `string` | ✅ | N/A | -| `Type` | [components.TypeUnavailable](../../models/components/typeunavailable.mdx) | ✅ | N/A | \ No newline at end of file +| `Reason` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.TypeUnavailable](../../models/components/typeunavailable.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/toolwebsearch20250305.mdx b/docs/models/components/toolwebsearch20250305.mdx index de6f69078..a3da68845 100644 --- a/docs/models/components/toolwebsearch20250305.mdx +++ b/docs/models/components/toolwebsearch20250305.mdx @@ -6,10 +6,10 @@ title: "ToolWebSearch20250305" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | | -| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `MaxUses` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `Name` | [components.NameWebSearch1](../../models/components/namewebsearch1.mdx) | ✅ | N/A | | -| `Type` | [components.TypeWebSearch20250305](../../models/components/typewebsearch20250305.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.AnthropicWebSearchToolUserLocation](../../models/components/anthropicwebsearchtooluserlocation.mdx)] | ➖ | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file +| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | | +| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `MaxUses` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `Name` | [components.NameWebSearch1](../../models/components/namewebsearch1.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeWebSearch20250305](../../models/components/typewebsearch20250305.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.AnthropicWebSearchToolUserLocation](../../models/components/anthropicwebsearchtooluserlocation.mdx)] | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/models/components/toolwebsearch20260209.mdx b/docs/models/components/toolwebsearch20260209.mdx index 3b8431f3b..0526f22d0 100644 --- a/docs/models/components/toolwebsearch20260209.mdx +++ b/docs/models/components/toolwebsearch20260209.mdx @@ -6,11 +6,11 @@ title: "ToolWebSearch20260209" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | ➖ | N/A | [
"direct"
] | -| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | | -| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | | -| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | ➖ | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | -| `MaxUses` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | | -| `Name` | [components.NameWebSearch2](../../models/components/namewebsearch2.mdx) | ✅ | N/A | | -| `Type` | [components.TypeWebSearch20260209](../../models/components/typewebsearch20260209.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.AnthropicWebSearchToolUserLocation](../../models/components/anthropicwebsearchtooluserlocation.mdx)] | ➖ | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file +| `AllowedCallers` | [][components.AnthropicAllowedCallers](../../models/components/anthropicallowedcallers.mdx) | :heavy_minus_sign: | N/A | [
"direct"
] | +| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | | +| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | | +| `CacheControl` | [*components.AnthropicCacheControlDirective](../../models/components/anthropiccachecontroldirective.mdx) | :heavy_minus_sign: | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{
"type": "ephemeral"
} | +| `MaxUses` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | | +| `Name` | [components.NameWebSearch2](../../models/components/namewebsearch2.mdx) | :heavy_check_mark: | N/A | | +| `Type` | [components.TypeWebSearch20260209](../../models/components/typewebsearch20260209.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.AnthropicWebSearchToolUserLocation](../../models/components/anthropicwebsearchtooluserlocation.mdx)] | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | \ No newline at end of file diff --git a/docs/models/components/toomanyrequestsresponseerrordata.mdx b/docs/models/components/toomanyrequestsresponseerrordata.mdx index 617765ea4..dba2348b9 100644 --- a/docs/models/components/toomanyrequestsresponseerrordata.mdx +++ b/docs/models/components/toomanyrequestsresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for TooManyRequestsResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/topproviderinfo.mdx b/docs/models/components/topproviderinfo.mdx index 9c35d9d65..0a9ae8f98 100644 --- a/docs/models/components/topproviderinfo.mdx +++ b/docs/models/components/topproviderinfo.mdx @@ -9,6 +9,6 @@ Information about the top provider for this model | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContextLength` | optionalnullable.OptionalNullable[`int64`] | ➖ | Context length from the top provider | 8192 | -| `IsModerated` | `bool` | ✅ | Whether the top provider moderates content | true | -| `MaxCompletionTokens` | optionalnullable.OptionalNullable[`int64`] | ➖ | Maximum completion tokens from the top provider. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens. | 4096 | \ No newline at end of file +| `ContextLength` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Context length from the top provider | 8192 | +| `IsModerated` | `bool` | :heavy_check_mark: | Whether the top provider moderates content | true | +| `MaxCompletionTokens` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Maximum completion tokens from the top provider. Input and output tokens share the context window, so the effective maximum output for a request is further limited by the context remaining after input tokens. | 4096 | \ No newline at end of file diff --git a/docs/models/components/tournamentstats.mdx b/docs/models/components/tournamentstats.mdx index d08896a01..02e336b83 100644 --- a/docs/models/components/tournamentstats.mdx +++ b/docs/models/components/tournamentstats.mdx @@ -9,8 +9,8 @@ Placement distribution from tournament matches. | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `FirstPlace` | `*int64` | ✅ | N/A | -| `FourthPlace` | `*int64` | ✅ | N/A | -| `SecondPlace` | `*int64` | ✅ | N/A | -| `ThirdPlace` | `*int64` | ✅ | N/A | -| `Total` | `*int64` | ✅ | N/A | \ No newline at end of file +| `FirstPlace` | `*int64` | :heavy_check_mark: | N/A | +| `FourthPlace` | `*int64` | :heavy_check_mark: | N/A | +| `SecondPlace` | `*int64` | :heavy_check_mark: | N/A | +| `ThirdPlace` | `*int64` | :heavy_check_mark: | N/A | +| `Total` | `*int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/traceconfig.mdx b/docs/models/components/traceconfig.mdx index 136352cd4..2ee049277 100644 --- a/docs/models/components/traceconfig.mdx +++ b/docs/models/components/traceconfig.mdx @@ -9,9 +9,9 @@ Metadata for observability and tracing. Known keys (trace_id, trace_name, span_n | Field | Type | Required | Description | Example | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `GenerationName` | `*string` | ➖ | N/A | | -| `ParentSpanID` | `*string` | ➖ | N/A | | -| `SpanName` | `*string` | ➖ | N/A | | -| `TraceID` | `*string` | ➖ | N/A | | -| `TraceName` | `*string` | ➖ | N/A | | -| `AdditionalProperties` | map[string]`any` | ➖ | N/A | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | \ No newline at end of file +| `GenerationName` | `*string` | :heavy_minus_sign: | N/A | | +| `ParentSpanID` | `*string` | :heavy_minus_sign: | N/A | | +| `SpanName` | `*string` | :heavy_minus_sign: | N/A | | +| `TraceID` | `*string` | :heavy_minus_sign: | N/A | | +| `TraceName` | `*string` | :heavy_minus_sign: | N/A | | +| `AdditionalProperties` | map[string]`any` | :heavy_minus_sign: | N/A | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | \ No newline at end of file diff --git a/docs/models/components/triggerinputtokens.mdx b/docs/models/components/triggerinputtokens.mdx index 790379a6e..c03547aba 100644 --- a/docs/models/components/triggerinputtokens.mdx +++ b/docs/models/components/triggerinputtokens.mdx @@ -6,5 +6,5 @@ title: "TriggerInputTokens" | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Type` | [components.EditTypeInputTokens](../../models/components/edittypeinputtokens.mdx) | ✅ | N/A | -| `Value` | `int64` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.EditTypeInputTokens](../../models/components/edittypeinputtokens.mdx) | :heavy_check_mark: | N/A | +| `Value` | `int64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/tts.mdx b/docs/models/components/tts.mdx index a790919df..7a80a19af 100644 --- a/docs/models/components/tts.mdx +++ b/docs/models/components/tts.mdx @@ -6,6 +6,6 @@ title: "TTS" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/unauthorizedresponseerrordata.mdx b/docs/models/components/unauthorizedresponseerrordata.mdx index 170b1c8ba..aec056179 100644 --- a/docs/models/components/unauthorizedresponseerrordata.mdx +++ b/docs/models/components/unauthorizedresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for UnauthorizedResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarkpricing.mdx b/docs/models/components/unifiedbenchmarkpricing.mdx index b08151ce3..d04711bcb 100644 --- a/docs/models/components/unifiedbenchmarkpricing.mdx +++ b/docs/models/components/unifiedbenchmarkpricing.mdx @@ -9,5 +9,5 @@ OpenRouter pricing per token for this model. Null if pricing is unavailable. | Field | Type | Required | Description | Example | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `Completion` | `string` | ✅ | Cost per output token (USD, decimal string). | 0.000015 | -| `Prompt` | `string` | ✅ | Cost per input token (USD, decimal string). | 0.000003 | \ No newline at end of file +| `Completion` | `string` | :heavy_check_mark: | Cost per output token (USD, decimal string). | 0.000015 | +| `Prompt` | `string` | :heavy_check_mark: | Cost per input token (USD, decimal string). | 0.000003 | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarksaaitem.mdx b/docs/models/components/unifiedbenchmarksaaitem.mdx index 121e4b799..232deb499 100644 --- a/docs/models/components/unifiedbenchmarksaaitem.mdx +++ b/docs/models/components/unifiedbenchmarksaaitem.mdx @@ -6,10 +6,10 @@ title: "UnifiedBenchmarksAAItem" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `AgenticIndex` | `*float64` | ✅ | Artificial Analysis Agentic Index composite score. Higher is better. | 58.3 | -| `CodingIndex` | `*float64` | ✅ | Artificial Analysis Coding Index composite score. Higher is better. | 65.8 | -| `DisplayName` | `string` | ✅ | Model name as listed on Artificial Analysis. | GPT-4o | -| `IntelligenceIndex` | `*float64` | ✅ | Artificial Analysis Intelligence Index composite score. Higher is better. | 71.2 | -| `ModelPermaslug` | `string` | ✅ | Stable OpenRouter model identifier. | openai/gpt-4o | -| `Pricing` | [*components.UnifiedBenchmarkPricing](../../models/components/unifiedbenchmarkpricing.mdx) | ✅ | OpenRouter pricing per token for this model. Null if pricing is unavailable. | \{
"completion": "0.000015",
"prompt": "0.000003"
} | -| `Source` | [components.UnifiedBenchmarksAAItemSource](../../models/components/unifiedbenchmarksaaitemsource.mdx) | ✅ | Benchmark source discriminator. | | \ No newline at end of file +| `AgenticIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Agentic Index composite score. Higher is better. | 58.3 | +| `CodingIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Coding Index composite score. Higher is better. | 65.8 | +| `DisplayName` | `string` | :heavy_check_mark: | Model name as listed on Artificial Analysis. | GPT-4o | +| `IntelligenceIndex` | `*float64` | :heavy_check_mark: | Artificial Analysis Intelligence Index composite score. Higher is better. | 71.2 | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Stable OpenRouter model identifier. | openai/gpt-4o | +| `Pricing` | [*components.UnifiedBenchmarkPricing](../../models/components/unifiedbenchmarkpricing.mdx) | :heavy_check_mark: | OpenRouter pricing per token for this model. Null if pricing is unavailable. | \{
"completion": "0.000015",
"prompt": "0.000003"
} | +| `Source` | [components.UnifiedBenchmarksAAItemSource](../../models/components/unifiedbenchmarksaaitemsource.mdx) | :heavy_check_mark: | Benchmark source discriminator. | | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarksdaitem.mdx b/docs/models/components/unifiedbenchmarksdaitem.mdx index 2179eb261..e55838118 100644 --- a/docs/models/components/unifiedbenchmarksdaitem.mdx +++ b/docs/models/components/unifiedbenchmarksdaitem.mdx @@ -6,13 +6,13 @@ title: "UnifiedBenchmarksDAItem" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Arena` | `string` | ✅ | Arena this ranking belongs to. | models | -| `AvgGenerationTimeMs` | `*float64` | ✅ | Average generation time in milliseconds. | 3200 | -| `Category` | `string` | ✅ | Category within the arena. | codecategories | -| `DisplayName` | `string` | ✅ | Human-readable model name from Design Arena. | Claude Sonnet 4 | -| `Elo` | `float64` | ✅ | ELO rating from head-to-head arena battles. | 1423 | -| `ModelPermaslug` | `string` | ✅ | Stable OpenRouter model identifier when mapped; otherwise the upstream Design Arena model id. | anthropic/claude-sonnet-4 | -| `Pricing` | [*components.UnifiedBenchmarkPricing](../../models/components/unifiedbenchmarkpricing.mdx) | ✅ | OpenRouter pricing per token for this model. Null if pricing is unavailable. | \{
"completion": "0.000015",
"prompt": "0.000003"
} | -| `Source` | [components.UnifiedBenchmarksDAItemSource](../../models/components/unifiedbenchmarksdaitemsource.mdx) | ✅ | Benchmark source discriminator. | | -| `TournamentStats` | [components.TournamentStats](../../models/components/tournamentstats.mdx) | ✅ | Placement distribution from tournament matches. | | -| `WinRate` | `float64` | ✅ | Win rate as a percentage (0–100). | 72 | \ No newline at end of file +| `Arena` | `string` | :heavy_check_mark: | Arena this ranking belongs to. | models | +| `AvgGenerationTimeMs` | `*float64` | :heavy_check_mark: | Average generation time in milliseconds. | 3200 | +| `Category` | `string` | :heavy_check_mark: | Category within the arena. | codecategories | +| `DisplayName` | `string` | :heavy_check_mark: | Human-readable model name from Design Arena. | Claude Sonnet 4 | +| `Elo` | `float64` | :heavy_check_mark: | ELO rating from head-to-head arena battles. | 1423 | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Stable OpenRouter model identifier when mapped; otherwise the upstream Design Arena model id. | anthropic/claude-sonnet-4 | +| `Pricing` | [*components.UnifiedBenchmarkPricing](../../models/components/unifiedbenchmarkpricing.mdx) | :heavy_check_mark: | OpenRouter pricing per token for this model. Null if pricing is unavailable. | \{
"completion": "0.000015",
"prompt": "0.000003"
} | +| `Source` | [components.UnifiedBenchmarksDAItemSource](../../models/components/unifiedbenchmarksdaitemsource.mdx) | :heavy_check_mark: | Benchmark source discriminator. | | +| `TournamentStats` | [components.TournamentStats](../../models/components/tournamentstats.mdx) | :heavy_check_mark: | Placement distribution from tournament matches. | | +| `WinRate` | `float64` | :heavy_check_mark: | Win rate as a percentage (0–100). | 72 | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarksmeta.mdx b/docs/models/components/unifiedbenchmarksmeta.mdx index 5e4f54e6c..d5e63e719 100644 --- a/docs/models/components/unifiedbenchmarksmeta.mdx +++ b/docs/models/components/unifiedbenchmarksmeta.mdx @@ -6,10 +6,10 @@ title: "UnifiedBenchmarksMeta" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AsOf` | `string` | ✅ | ISO-8601 timestamp of when this data was last updated. | 2026-06-03T12:00:00Z | -| `Citation` | `*string` | ✅ | Required attribution when republishing this data, or null when results span multiple sources (attribute each item individually by its `source` discriminator). | Source: Artificial Analysis (artificialanalysis.ai) via OpenRouter (openrouter.ai/rankings). | -| `ModelCount` | `int64` | ✅ | Number of unique models in the response. | | -| `Source` | [*components.UnifiedBenchmarksMetaSource](../../models/components/unifiedbenchmarksmetasource.mdx) | ✅ | The source filter applied, or null when all sources are returned. | artificial-analysis | -| `SourceURL` | `*string` | ✅ | URL of the upstream data source, or null when results span multiple sources. | https://artificialanalysis.ai | -| `TaskType` | `*string` | ✅ | The task_type filter applied, or null if showing all. | | -| `Version` | [components.UnifiedBenchmarksMetaVersion](../../models/components/unifiedbenchmarksmetaversion.mdx) | ✅ | Dataset version. | | \ No newline at end of file +| `AsOf` | `string` | :heavy_check_mark: | ISO-8601 timestamp of when this data was last updated. | 2026-06-03T12:00:00Z | +| `Citation` | `*string` | :heavy_check_mark: | Required attribution when republishing this data, or null when results span multiple sources (attribute each item individually by its `source` discriminator). | Source: Artificial Analysis (artificialanalysis.ai) via OpenRouter (openrouter.ai/rankings). | +| `ModelCount` | `int64` | :heavy_check_mark: | Number of unique models in the response. | | +| `Source` | [*components.UnifiedBenchmarksMetaSource](../../models/components/unifiedbenchmarksmetasource.mdx) | :heavy_check_mark: | The source filter applied, or null when all sources are returned. | artificial-analysis | +| `SourceURL` | `*string` | :heavy_check_mark: | URL of the upstream data source, or null when results span multiple sources. | https://artificialanalysis.ai | +| `TaskType` | `*string` | :heavy_check_mark: | The task_type filter applied, or null if showing all. | | +| `Version` | [components.UnifiedBenchmarksMetaVersion](../../models/components/unifiedbenchmarksmetaversion.mdx) | :heavy_check_mark: | Dataset version. | | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarksoritem.mdx b/docs/models/components/unifiedbenchmarksoritem.mdx index 66d1cfbe3..5d1f40d95 100644 --- a/docs/models/components/unifiedbenchmarksoritem.mdx +++ b/docs/models/components/unifiedbenchmarksoritem.mdx @@ -6,12 +6,12 @@ title: "UnifiedBenchmarksORItem" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Accuracy` | `float64` | ✅ | Aggregate accuracy score from 0 to 1. Higher is better. | 0.72 | -| `AccuracyStddev` | `*float64` | ✅ | Standard deviation of run accuracy, or null for a single run. | 0.03 | -| `AvgCostPerTask` | `*float64` | ✅ | Average cost per task in USD, or null if unavailable. | 0.002 | -| `BenchmarkType` | [components.UnifiedBenchmarksORItemBenchmarkType](../../models/components/unifiedbenchmarksoritembenchmarktype.mdx) | ✅ | OpenRouter benchmark evaluation type. | gpqa_diamond | -| `DisplayName` | `string` | ✅ | Human-readable model name. | GPT-4o | -| `LastRunTimestamp` | `string` | ✅ | Timestamp of the most recent public benchmark run. | 2026-06-03T12:00:00Z | -| `ModelPermaslug` | `string` | ✅ | Stable OpenRouter model identifier. | openai/gpt-4o | -| `Source` | [components.UnifiedBenchmarksORItemSource](../../models/components/unifiedbenchmarksoritemsource.mdx) | ✅ | Benchmark source discriminator. | | -| `TotalTasks` | `int64` | ✅ | Total benchmark tasks across runs. | 300 | \ No newline at end of file +| `Accuracy` | `float64` | :heavy_check_mark: | Aggregate accuracy score from 0 to 1. Higher is better. | 0.72 | +| `AccuracyStddev` | `*float64` | :heavy_check_mark: | Standard deviation of run accuracy, or null for a single run. | 0.03 | +| `AvgCostPerTask` | `*float64` | :heavy_check_mark: | Average cost per task in USD, or null if unavailable. | 0.002 | +| `BenchmarkType` | [components.UnifiedBenchmarksORItemBenchmarkType](../../models/components/unifiedbenchmarksoritembenchmarktype.mdx) | :heavy_check_mark: | OpenRouter benchmark evaluation type. | gpqa_diamond | +| `DisplayName` | `string` | :heavy_check_mark: | Human-readable model name. | GPT-4o | +| `LastRunTimestamp` | `string` | :heavy_check_mark: | Timestamp of the most recent public benchmark run. | 2026-06-03T12:00:00Z | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Stable OpenRouter model identifier. | openai/gpt-4o | +| `Source` | [components.UnifiedBenchmarksORItemSource](../../models/components/unifiedbenchmarksoritemsource.mdx) | :heavy_check_mark: | Benchmark source discriminator. | | +| `TotalTasks` | `int64` | :heavy_check_mark: | Total benchmark tasks across runs. | 300 | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarksresponse.mdx b/docs/models/components/unifiedbenchmarksresponse.mdx index 8beed06dd..d3443764d 100644 --- a/docs/models/components/unifiedbenchmarksresponse.mdx +++ b/docs/models/components/unifiedbenchmarksresponse.mdx @@ -6,5 +6,5 @@ title: "UnifiedBenchmarksResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.UnifiedBenchmarksResponseData](../../models/components/unifiedbenchmarksresponsedata.mdx) | ✅ | N/A | | -| `Meta` | [components.UnifiedBenchmarksMeta](../../models/components/unifiedbenchmarksmeta.mdx) | ✅ | N/A | \{
"as_of": "2026-06-03T12:00:00Z",
"citation": "Source: Artificial Analysis (artificialanalysis.ai) via OpenRouter (openrouter.ai/rankings).",
"model_count": 50,
"source": "artificial-analysis",
"source_url": "https://artificialanalysis.ai",
"task_type": null,
"version": "v1"
} | \ No newline at end of file +| `Data` | [][components.UnifiedBenchmarksResponseData](../../models/components/unifiedbenchmarksresponsedata.mdx) | :heavy_check_mark: | N/A | | +| `Meta` | [components.UnifiedBenchmarksMeta](../../models/components/unifiedbenchmarksmeta.mdx) | :heavy_check_mark: | N/A | \{
"as_of": "2026-06-03T12:00:00Z",
"citation": "Source: Artificial Analysis (artificialanalysis.ai) via OpenRouter (openrouter.ai/rankings).",
"model_count": 50,
"source": "artificial-analysis",
"source_url": "https://artificialanalysis.ai",
"task_type": null,
"version": "v1"
} | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarkssearchitem.mdx b/docs/models/components/unifiedbenchmarkssearchitem.mdx index cdc0d75c8..248720a06 100644 --- a/docs/models/components/unifiedbenchmarkssearchitem.mdx +++ b/docs/models/components/unifiedbenchmarkssearchitem.mdx @@ -6,16 +6,16 @@ title: "UnifiedBenchmarksSearchItem" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AvgCostPerTask` | `*float64` | ✅ | Average cost per task in USD, or null if unavailable. | 0.031 | -| `AvgLatencyPerTaskMs` | `*float64` | ✅ | Average wall-clock latency per task in milliseconds, or null if unavailable. | 45210 | -| `BenchmarkType` | [components.UnifiedBenchmarksSearchItemBenchmarkType](../../models/components/unifiedbenchmarkssearchitembenchmarktype.mdx) | ✅ | OpenRouter search benchmark. | search_browsecomp | -| `DisplayName` | `string` | ✅ | Human-readable model name. | GPT-4o | -| `LastRunTimestamp` | `string` | ✅ | Timestamp of the newest qualifying run in the published configuration's lane. | 2026-07-28T13:38:18Z | -| `ModelPermaslug` | `string` | ✅ | Stable OpenRouter model identifier. | openai/gpt-4o | -| `PrimaryMetric` | [components.PrimaryMetric](../../models/components/primarymetric.mdx) | ✅ | Identifies the meaning of `primary_score`: `f1_by_item` for WideSearch, `accuracy` for all other search benchmarks. | accuracy | -| `PrimaryScore` | `float64` | ✅ | The benchmark's headline score from 0 to 1. Its meaning is identified by `primary_metric`: item-weighted F1 for WideSearch or strict accuracy for the other search benchmarks. Higher is better. | 0.72 | -| `RunConfig` | [*components.UnifiedBenchmarksSearchRunConfig](../../models/components/unifiedbenchmarkssearchrunconfig.mdx) | ➖ | Published lane configuration, included only when include_run_config=true. Only the agent turn count, reasoning effort, and temperature are exposed; other harness settings are intentionally not part of the public contract. | | -| `SearchEngine` | `string` | ✅ | Search engine the published configuration used. | exa | -| `SearchSurface` | [components.SearchSurface](../../models/components/searchsurface.mdx) | ✅ | Request surface the published configuration went through. | server-tool | -| `Source` | [components.UnifiedBenchmarksSearchItemSource](../../models/components/unifiedbenchmarkssearchitemsource.mdx) | ✅ | Benchmark source discriminator. | | -| `TotalTasks` | `int64` | ✅ | Tasks evaluated across the published configuration's runs. | 100 | \ No newline at end of file +| `AvgCostPerTask` | `*float64` | :heavy_check_mark: | Average cost per task in USD, or null if unavailable. | 0.031 | +| `AvgLatencyPerTaskMs` | `*float64` | :heavy_check_mark: | Average wall-clock latency per task in milliseconds, or null if unavailable. | 45210 | +| `BenchmarkType` | [components.UnifiedBenchmarksSearchItemBenchmarkType](../../models/components/unifiedbenchmarkssearchitembenchmarktype.mdx) | :heavy_check_mark: | OpenRouter search benchmark. | search_browsecomp | +| `DisplayName` | `string` | :heavy_check_mark: | Human-readable model name. | GPT-4o | +| `LastRunTimestamp` | `string` | :heavy_check_mark: | Timestamp of the newest qualifying run in the published configuration's lane. | 2026-07-28T13:38:18Z | +| `ModelPermaslug` | `string` | :heavy_check_mark: | Stable OpenRouter model identifier. | openai/gpt-4o | +| `PrimaryMetric` | [components.PrimaryMetric](../../models/components/primarymetric.mdx) | :heavy_check_mark: | Identifies the meaning of `primary_score`: `f1_by_item` for WideSearch, `accuracy` for all other search benchmarks. | accuracy | +| `PrimaryScore` | `float64` | :heavy_check_mark: | The benchmark's headline score from 0 to 1. Its meaning is identified by `primary_metric`: item-weighted F1 for WideSearch or strict accuracy for the other search benchmarks. Higher is better. | 0.72 | +| `RunConfig` | [*components.UnifiedBenchmarksSearchRunConfig](../../models/components/unifiedbenchmarkssearchrunconfig.mdx) | :heavy_minus_sign: | Published lane configuration, included only when include_run_config=true. Only the agent turn count, reasoning effort, and temperature are exposed; other harness settings are intentionally not part of the public contract. | | +| `SearchEngine` | `string` | :heavy_check_mark: | Search engine the published configuration used. | exa | +| `SearchSurface` | [components.SearchSurface](../../models/components/searchsurface.mdx) | :heavy_check_mark: | Request surface the published configuration went through. | server-tool | +| `Source` | [components.UnifiedBenchmarksSearchItemSource](../../models/components/unifiedbenchmarkssearchitemsource.mdx) | :heavy_check_mark: | Benchmark source discriminator. | | +| `TotalTasks` | `int64` | :heavy_check_mark: | Tasks evaluated across the published configuration's runs. | 100 | \ No newline at end of file diff --git a/docs/models/components/unifiedbenchmarkssearchrunconfig.mdx b/docs/models/components/unifiedbenchmarkssearchrunconfig.mdx index 8ad4d2ce9..50709bd96 100644 --- a/docs/models/components/unifiedbenchmarkssearchrunconfig.mdx +++ b/docs/models/components/unifiedbenchmarkssearchrunconfig.mdx @@ -9,6 +9,6 @@ Published lane configuration, included only when include_run_config=true. Only t | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `MaxAgentTurns` | `*int64` | ✅ | Agent-turn count for the published lane, or null for plugin lanes. | 25 | -| `ReasoningEffort` | `*string` | ✅ | Reasoning effort configured for the published lane, or null when omitted. | high | -| `Temperature` | `*float64` | ✅ | Sampling temperature configured for the published lane, or null when omitted. | 0.2 | \ No newline at end of file +| `MaxAgentTurns` | `*int64` | :heavy_check_mark: | Agent-turn count for the published lane, or null for plugin lanes. | 25 | +| `ReasoningEffort` | `*string` | :heavy_check_mark: | Reasoning effort configured for the published lane, or null when omitted. | high | +| `Temperature` | `*float64` | :heavy_check_mark: | Sampling temperature configured for the published lane, or null when omitted. | 0.2 | \ No newline at end of file diff --git a/docs/models/components/uniqueinsight.mdx b/docs/models/components/uniqueinsight.mdx index f60bbe32b..859d7df5d 100644 --- a/docs/models/components/uniqueinsight.mdx +++ b/docs/models/components/uniqueinsight.mdx @@ -6,5 +6,5 @@ title: "UniqueInsight" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Insight` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | \ No newline at end of file +| `Insight` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/unknown.mdx b/docs/models/components/unknown.mdx index 42d05d7d1..1c8d06f12 100644 --- a/docs/models/components/unknown.mdx +++ b/docs/models/components/unknown.mdx @@ -6,6 +6,6 @@ title: "Unknown" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/unprocessableentityresponseerrordata.mdx b/docs/models/components/unprocessableentityresponseerrordata.mdx index 6683f0647..10793193d 100644 --- a/docs/models/components/unprocessableentityresponseerrordata.mdx +++ b/docs/models/components/unprocessableentityresponseerrordata.mdx @@ -9,6 +9,6 @@ Error data for UnprocessableEntityResponse | Field | Type | Required | Description | | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | -| `Code` | `int64` | ✅ | N/A | -| `Message` | `string` | ✅ | N/A | -| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | ➖ | N/A | \ No newline at end of file +| `Code` | `int64` | :heavy_check_mark: | N/A | +| `Message` | `string` | :heavy_check_mark: | N/A | +| `Metadata` | optionalnullable.OptionalNullable[map[string]`any`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/updatebyokkeyrequest.mdx b/docs/models/components/updatebyokkeyrequest.mdx index 2f1e612e2..71c8ce7e8 100644 --- a/docs/models/components/updatebyokkeyrequest.mdx +++ b/docs/models/components/updatebyokkeyrequest.mdx @@ -6,14 +6,14 @@ title: "UpdateBYOKKeyRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `AllowedAPIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` clears the restriction. Must contain at least one hash if provided. Hashes that do not belong to your account return a 400. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | -| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | -| `AllowedUserIds` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | -| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.UpdateBYOKKeyRequestDeclaredRegion](../../models/components/updatebyokkeyrequestdeclaredregion.mdx)] | ➖ | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. Omit to leave the stored value unchanged (rotating an OpenAI or Fireworks `key` re-derives it from the new key); `null` clears the declaration. | null | -| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. Omit to leave the stored value unchanged; `null` clears the declaration. | null | -| `Disabled` | `*bool` | ➖ | Whether this credential is disabled. | false | -| `IsBYOKOnly` | `*bool` | ➖ | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. Omit to leave the stored value unchanged. | false | -| `IsFallback` | `*bool` | ➖ | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. Omit to leave the stored value unchanged. | false | -| `IsRequired` | `*bool` | ➖ | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. Omit to leave the stored value unchanged. | false | -| `Key` | `*string` | ➖ | A new raw provider API key to rotate the credential in-place. The previous key material is overwritten and the masked label is regenerated. Encrypted at rest and never returned in API responses. | sk-proj-newkey456... | -| `Name` | optionalnullable.OptionalNullable[`string`] | ➖ | Optional human-readable name for the credential. | Updated OpenAI Key | \ No newline at end of file +| `AllowedAPIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes (`api_keys.hash`) that may use this credential. `null` clears the restriction. Must contain at least one hash if provided. Hashes that do not belong to your account return a 400. | [
"f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943"
] | +| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of model slugs this credential may be used for. `null` means no restriction. | null | +| `AllowedUserIds` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of user IDs that may use this credential. `null` means no restriction. | null | +| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.UpdateBYOKKeyRequestDeclaredRegion](../../models/components/updatebyokkeyrequestdeclaredregion.mdx)] | :heavy_minus_sign: | Your declaration of the data region in which the upstream provider account behind this credential processes requests, used for routing eligibility on OpenRouter's regional hosts. `null` means undeclared and `global` is behaviorally identical: the credential follows the region OpenRouter records for the endpoint. `europe` or `us` lets requests to `eu.openrouter.ai` or `us.openrouter.ai` use this credential for that provider (private endpoints, endpoints pinned to another cloud region, cross-region inference profiles and video models are excluded). Self-declared and not verified by OpenRouter. For OpenAI and Fireworks the region comes from the key material (a `{"api_key": ..., "region": ...}` key), so the value must match the key's region. Among other providers, Azure accepts `europe` or `us` and Anthropic accepts `us` only. Omit to leave the stored value unchanged (rotating an OpenAI or Fireworks `key` re-derives it from the new key); `null` clears the declaration. | null | +| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Your declaration of whether the upstream provider account behind this credential has zero data retention (ZDR). `null` inherits OpenRouter's data policy for the provider's endpoint; `true` declares the account ZDR so requests that require ZDR may route to this credential even when the shared endpoint retains data; `false` declares it non-ZDR so such requests never route to it. Self-declared and not verified by OpenRouter. Omit to leave the stored value unchanged; `null` clears the declaration. | null | +| `Disabled` | `*bool` | :heavy_minus_sign: | Whether this credential is disabled. | false | +| `IsBYOKOnly` | `*bool` | :heavy_minus_sign: | Whether OpenRouter's shared endpoints on this provider are removed for every model, including models outside `allowed_models` and after all of your keys for the provider fail. The provider is skipped instead of spending OpenRouter credits. Only valid on non-fallback credentials. Omit to leave the stored value unchanged. | false | +| `IsFallback` | `*bool` | :heavy_minus_sign: | Whether this credential is treated as a fallback — used only after non-fallback keys for the same provider have been tried. Cannot be combined with `is_byok_only`. Omit to leave the stored value unchanged. | false | +| `IsRequired` | `*bool` | :heavy_minus_sign: | Whether OpenRouter's shared endpoints on this provider are removed for the models this credential applies to (its `allowed_models`, or every model when `null`). Requests for those models run only on your keys; models outside the allowlist may still fall back to shared capacity on this provider. Omit to leave the stored value unchanged. | false | +| `Key` | `*string` | :heavy_minus_sign: | A new raw provider API key to rotate the credential in-place. The previous key material is overwritten and the masked label is regenerated. Encrypted at rest and never returned in API responses. | sk-proj-newkey456... | +| `Name` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Optional human-readable name for the credential. | Updated OpenAI Key | \ No newline at end of file diff --git a/docs/models/components/updatebyokkeyresponse.mdx b/docs/models/components/updatebyokkeyresponse.mdx index 55e120c86..6b4146dcd 100644 --- a/docs/models/components/updatebyokkeyresponse.mdx +++ b/docs/models/components/updatebyokkeyresponse.mdx @@ -6,4 +6,4 @@ title: "UpdateBYOKKeyResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | ✅ | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.BYOKKey](../../models/components/byokkey.mdx) | :heavy_check_mark: | N/A | \{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/updateexternaluserrequest.mdx b/docs/models/components/updateexternaluserrequest.mdx index 4fd215618..35c05a48e 100644 --- a/docs/models/components/updateexternaluserrequest.mdx +++ b/docs/models/components/updateexternaluserrequest.mdx @@ -6,4 +6,4 @@ title: "UpdateExternalUserRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `IsActive` | `bool` | ✅ | Registration state only; does not enforce inference access. | true | \ No newline at end of file +| `IsActive` | `bool` | :heavy_check_mark: | Registration state only; does not enforce inference access. | true | \ No newline at end of file diff --git a/docs/models/components/updateguardrailrequest.mdx b/docs/models/components/updateguardrailrequest.mdx index 4a96e7f8d..28ba3f714 100644 --- a/docs/models/components/updateguardrailrequest.mdx +++ b/docs/models/components/updateguardrailrequest.mdx @@ -6,26 +6,26 @@ title: "UpdateGuardrailRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | false | -| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | false | -| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | ➖ | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. An empty array is rejected. | [
"europe"
] | -| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model identifiers (slug or canonical_slug accepted) | [
"openai/gpt-5.2"
] | -| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | New list of allowed provider IDs | [
"openai",
"anthropic",
"deepseek"
] | -| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntryInput](../../models/components/contentfilterbuiltinentryinput.mdx)] | ➖ | Builtin content filters to apply. Set to null to remove. Every builtin slug supports "block", "redact", and the detect-only "flag" action. | [
\{
"action": "block",
"slug": "regex-prompt-injection"
}
] | -| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | ➖ | Custom regex content filters to apply. Set to null to remove. | null | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | New description for the guardrail | Updated description | -| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that publish prompts. | false | -| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows free endpoints that train on request data. | true | -| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether this guardrail allows paid endpoints that train on request data. | true | -| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | ➖ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | true | -| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | true | -| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | true | -| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | true | -| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | true | -| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | ➖ | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | true | -| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Array of model identifiers to exclude from routing (slug or canonical_slug accepted) | [
"openai/gpt-4o-mini"
] | -| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | ➖ | List of provider IDs to exclude from routing | [
"azure"
] | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. Omit to leave unchanged. | true | -| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | ➖ | New spending limit in USD | 75 | -| `Name` | `*string` | ➖ | New name for the guardrail | Updated Guardrail Name | -| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | ➖ | Interval at which the limit resets (daily, weekly, monthly) | monthly | \ No newline at end of file +| `AllowSafetyRetentionGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to google/* models may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | false | +| `AllowSafetyRetentionOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether ZDR-only requests to models outside the named providers (for example open-weight models on Vertex) may use endpoints that may retain prompts for safety monitoring. false allows only zero-retention endpoints. A guardrail can only be more restrictive than the account setting. Inherits the account setting when not provided. | false | +| `AllowedDataRegions` | optionalnullable.OptionalNullable[[][components.GuardrailDataRegion](../../models/components/guardraildataregion.mdx)] | :heavy_minus_sign: | Data regions through which requests governed by this guardrail must arrive. `global` is https://openrouter.ai, `europe` is https://eu.openrouter.ai, and `us` is https://us.openrouter.ai. Requests arriving through any other region are rejected. `null` leaves the ingress region unrestricted. When several guardrails apply (workspace default, member, API key), the effective regions are the intersection of every non-null value. An empty array is rejected. | [
"europe"
] | +| `AllowedModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model identifiers (slug or canonical_slug accepted) | [
"openai/gpt-5.2"
] | +| `AllowedProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | New list of allowed provider IDs | [
"openai",
"anthropic",
"deepseek"
] | +| `ContentFilterBuiltins` | optionalnullable.OptionalNullable[[][components.ContentFilterBuiltinEntryInput](../../models/components/contentfilterbuiltinentryinput.mdx)] | :heavy_minus_sign: | Builtin content filters to apply. Set to null to remove. Every builtin slug supports "block", "redact", and the detect-only "flag" action. | [
\{
"action": "block",
"slug": "regex-prompt-injection"
}
] | +| `ContentFilters` | optionalnullable.OptionalNullable[[][components.ContentFilterEntry](../../models/components/contentfilterentry.mdx)] | :heavy_minus_sign: | Custom regex content filters to apply. Set to null to remove. | null | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | New description for the guardrail | Updated description | +| `EnableFreeModelPublication` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that publish prompts. | false | +| `EnableFreeModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows free endpoints that train on request data. | true | +| `EnablePaidModelTraining` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether this guardrail allows paid endpoints that train on request data. | true | +| ~~`EnforceZdr`~~ | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated. Use enforce_zdr_anthropic, enforce_zdr_openai, enforce_zdr_google, enforce_zdr_xai, and enforce_zdr_other instead. When provided, its value is copied into any of those per-provider fields that are not explicitly specified on the request. | true | +| `EnforceZdrAnthropic` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Anthropic models. Falls back to enforce_zdr when not provided. | true | +| `EnforceZdrGoogle` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for Google models. Falls back to enforce_zdr when not provided. | true | +| `EnforceZdrOpenai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for OpenAI models. Falls back to enforce_zdr when not provided. | true | +| `EnforceZdrOther` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for models that are not from Anthropic, OpenAI, Google, or xAI. Falls back to enforce_zdr when not provided. | true | +| `EnforceZdrXai` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Whether to enforce zero data retention for xAI models. Falls back to enforce_zdr when not provided. | true | +| `IgnoredModels` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Array of model identifiers to exclude from routing (slug or canonical_slug accepted) | [
"openai/gpt-4o-mini"
] | +| `IgnoredProviders` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | List of provider IDs to exclude from routing | [
"azure"
] | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) inference spend counts toward this guardrail's limit_usd, in addition to OpenRouter credit spend. Omit to leave unchanged. | true | +| `LimitUsd` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | New spending limit in USD | 75 | +| `Name` | `*string` | :heavy_minus_sign: | New name for the guardrail | Updated Guardrail Name | +| `ResetInterval` | optionalnullable.OptionalNullable[[components.GuardrailInterval](../../models/components/guardrailinterval.mdx)] | :heavy_minus_sign: | Interval at which the limit resets (daily, weekly, monthly) | monthly | \ No newline at end of file diff --git a/docs/models/components/updateguardrailresponse.mdx b/docs/models/components/updateguardrailresponse.mdx index 1bb5f6c1d..1e5506c82 100644 --- a/docs/models/components/updateguardrailresponse.mdx +++ b/docs/models/components/updateguardrailresponse.mdx @@ -6,4 +6,4 @@ title: "UpdateGuardrailResponse" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | ✅ | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file +| `Data` | [components.Guardrail](../../models/components/guardrail.mdx) | :heavy_check_mark: | N/A | \{
"allowed_data_regions": null,
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file diff --git a/docs/models/components/updateinternrequest.mdx b/docs/models/components/updateinternrequest.mdx deleted file mode 100644 index 6e6fbaad8..000000000 --- a/docs/models/components/updateinternrequest.mdx +++ /dev/null @@ -1,15 +0,0 @@ ---- -title: "UpdateInternRequest" ---- - -Lifecycle settings to change. Omitted fields stay unchanged and null clears a field. - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | New free-form description. Null clears it. | -| `Instructions` | optionalnullable.OptionalNullable[`string`] | ➖ | New standing instructions. Null clears them. | -| `Model` | optionalnullable.OptionalNullable[`string`] | ➖ | New OpenRouter model slug in `author/slug` form (an optional `:variant` suffix is accepted). Other shapes are refused with 400. Null restores the workspace default. Takes effect on the next provision: until then `GET` shows this configured model while chat chunks show the model the running intern reports. | -| `Name` | `*string` | ➖ | New intern name, unique per creator within the workspace. | \ No newline at end of file diff --git a/docs/models/components/updateobservabilitydestinationrequest.mdx b/docs/models/components/updateobservabilitydestinationrequest.mdx index bfd856b0b..2dd7b504e 100644 --- a/docs/models/components/updateobservabilitydestinationrequest.mdx +++ b/docs/models/components/updateobservabilitydestinationrequest.mdx @@ -6,15 +6,15 @@ title: "UpdateObservabilityDestinationRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | ➖ | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | -| `BroadcastGenerationCost` | `*bool` | ➖ | Whether to include cost and billing generation metadata. | false | -| `BroadcastGenerationCostAllocation` | `*bool` | ➖ | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | -| `BroadcastGenerationIdentity` | `*bool` | ➖ | Whether to include identity generation metadata. | false | -| `BroadcastGenerationRequestContext` | `*bool` | ➖ | Whether to include request-context generation metadata. | false | -| `Config` | map[string]`any` | ➖ | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | -| `Enabled` | `*bool` | ➖ | Whether the destination is enabled. | true | -| `FilterRules` | optionalnullable.OptionalNullable[[components.ObservabilityFilterRulesConfigNullable](../../models/components/observabilityfilterrulesconfignullable.mdx)] | ➖ | N/A | null | -| `Name` | `*string` | ➖ | Human-readable name for the destination. | Production Langfuse | -| `PrivacyMode` | `*bool` | ➖ | When true, request/response bodies are not forwarded — only metadata. | false | -| `Regions` | [][components.ObservabilityDataRegionInput](../../models/components/observabilitydataregioninput.mdx) | ➖ | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. | [
"global"
] | -| `SamplingRate` | `*float64` | ➖ | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | \ No newline at end of file +| `APIKeyHashes` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | Optional allowlist of OpenRouter API key hashes. `null` clears the filter (all keys). Omitting leaves the current value. Must contain at least one hash if provided. | null | +| `BroadcastGenerationCost` | `*bool` | :heavy_minus_sign: | Whether to include cost and billing generation metadata. | false | +| `BroadcastGenerationCostAllocation` | `*bool` | :heavy_minus_sign: | Beta. When true, include openrouter_cost_allocation: per-token-kind usage and cost, sent only when they reconcile with the billed cost. | false | +| `BroadcastGenerationIdentity` | `*bool` | :heavy_minus_sign: | Whether to include identity generation metadata. | false | +| `BroadcastGenerationRequestContext` | `*bool` | :heavy_minus_sign: | Whether to include request-context generation metadata. | false | +| `Config` | map[string]`any` | :heavy_minus_sign: | Provider-specific configuration fields to update. Masked values are ignored; unset fields keep their current value. | \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
} | +| `Enabled` | `*bool` | :heavy_minus_sign: | Whether the destination is enabled. | true | +| `FilterRules` | optionalnullable.OptionalNullable[[components.ObservabilityFilterRulesConfigNullable](../../models/components/observabilityfilterrulesconfignullable.mdx)] | :heavy_minus_sign: | N/A | null | +| `Name` | `*string` | :heavy_minus_sign: | Human-readable name for the destination. | Production Langfuse | +| `PrivacyMode` | `*bool` | :heavy_minus_sign: | When true, request/response bodies are not forwarded — only metadata. | false | +| `Regions` | [][components.ObservabilityDataRegionInput](../../models/components/observabilitydataregioninput.mdx) | :heavy_minus_sign: | Data regions this destination applies to. `eu` is accepted as an alias for `europe` and normalizes to `europe`. Omitting this field keeps the current value; it cannot be cleared. | [
"global"
] | +| `SamplingRate` | `*float64` | :heavy_minus_sign: | Sampling rate between 0.0001 and 1 (1 = 100%). | 1 | \ No newline at end of file diff --git a/docs/models/components/updateobservabilitydestinationresponse.mdx b/docs/models/components/updateobservabilitydestinationresponse.mdx index 0e1f31635..f6a596065 100644 --- a/docs/models/components/updateobservabilitydestinationresponse.mdx +++ b/docs/models/components/updateobservabilitydestinationresponse.mdx @@ -6,4 +6,4 @@ title: "UpdateObservabilityDestinationResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | ✅ | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ObservabilityDestination](../../models/components/observabilitydestination.mdx) | :heavy_check_mark: | N/A | \{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/updateorganizationsettingsrequest.mdx b/docs/models/components/updateorganizationsettingsrequest.mdx index 528d8636e..235c01e6f 100644 --- a/docs/models/components/updateorganizationsettingsrequest.mdx +++ b/docs/models/components/updateorganizationsettingsrequest.mdx @@ -6,4 +6,4 @@ title: "UpdateOrganizationSettingsRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `IsFilteredModelCatalogEnabled` | `bool` | ✅ | When true, `GET /api/v1/models` called with one of the organization's API keys returns only the models that key can use (the `/api/v1/models/user` catalog), and the signed-in dashboard shows the same list. Anonymous requests always receive the public catalog. | true | \ No newline at end of file +| `IsFilteredModelCatalogEnabled` | `bool` | :heavy_check_mark: | When true, `GET /api/v1/models` called with one of the organization's API keys returns only the models that key can use (the `/api/v1/models/user` catalog), and the signed-in dashboard shows the same list. Anonymous requests always receive the public catalog. | true | \ No newline at end of file diff --git a/docs/models/components/updateprivateendpointpricingrequest.mdx b/docs/models/components/updateprivateendpointpricingrequest.mdx index a680bbe14..f923a0dea 100644 --- a/docs/models/components/updateprivateendpointpricingrequest.mdx +++ b/docs/models/components/updateprivateendpointpricingrequest.mdx @@ -6,4 +6,4 @@ title: "UpdatePrivateEndpointPricingRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Pricing` | [components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | ✅ | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | \ No newline at end of file +| `Pricing` | [components.PrivateEndpointPricing](../../models/components/privateendpointpricing.mdx) | :heavy_check_mark: | Negotiated per-token rates reported for requests routed to this endpoint. | \{
"cache_read": "0.00000025",
"cache_write": "0.000003125",
"completion": "0.00001",
"prompt": "0.0000025"
} | \ No newline at end of file diff --git a/docs/models/components/updateprivateendpointrequest.mdx b/docs/models/components/updateprivateendpointrequest.mdx index d19095dac..3587892f3 100644 --- a/docs/models/components/updateprivateendpointrequest.mdx +++ b/docs/models/components/updateprivateendpointrequest.mdx @@ -6,7 +6,7 @@ title: "UpdatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BaseURL` | `*string` | ➖ | HTTPS base URL of your deployment. Required unless the provider derives its URL from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | -| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.UpdatePrivateEndpointRequestDeclaredRegion](../../models/components/updateprivateendpointrequestdeclaredregion.mdx)] | ➖ | Attest where this deployment processes data. | us | -| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | ➖ | Attest that this deployment retains no prompt or completion data. | | -| `UpstreamModelID` | `string` | ✅ | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file +| `BaseURL` | `*string` | :heavy_minus_sign: | HTTPS base URL of your deployment. Required unless the provider derives its URL from the BYOK credential (Azure, Amazon Bedrock, Google Vertex). | https://contoso.openai.azure.com | +| `DeclaredRegion` | optionalnullable.OptionalNullable[[components.UpdatePrivateEndpointRequestDeclaredRegion](../../models/components/updateprivateendpointrequestdeclaredregion.mdx)] | :heavy_minus_sign: | Attest where this deployment processes data. | us | +| `DeclaredZdr` | optionalnullable.OptionalNullable[`bool`] | :heavy_minus_sign: | Attest that this deployment retains no prompt or completion data. | | +| `UpstreamModelID` | `string` | :heavy_check_mark: | Model or deployment identifier sent to the upstream provider. | gpt-4o-prod | \ No newline at end of file diff --git a/docs/models/components/updatescimgroupmappingrequest.mdx b/docs/models/components/updatescimgroupmappingrequest.mdx index 7f73f3770..6f1bbda29 100644 --- a/docs/models/components/updatescimgroupmappingrequest.mdx +++ b/docs/models/components/updatescimgroupmappingrequest.mdx @@ -6,4 +6,4 @@ title: "UpdateScimGroupMappingRequest" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Role` | [components.UpdateScimGroupMappingRequestRole](../../models/components/updatescimgroupmappingrequestrole.mdx) | ✅ | N/A | \ No newline at end of file +| `Role` | [components.UpdateScimGroupMappingRequestRole](../../models/components/updatescimgroupmappingrequestrole.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/updatescimgroupmappingresponse.mdx b/docs/models/components/updatescimgroupmappingresponse.mdx index 7a421ef20..4e3c83a0d 100644 --- a/docs/models/components/updatescimgroupmappingresponse.mdx +++ b/docs/models/components/updatescimgroupmappingresponse.mdx @@ -6,4 +6,4 @@ title: "UpdateScimGroupMappingResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file +| `Data` | [components.ScimGroupMapping](../../models/components/scimgroupmapping.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00.000Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_123456",
"role": "member",
"scim_group_id": "550e8400-e29b-41d4-a716-446655440000",
"updated_at": "2025-08-24T10:30:00.000Z",
"workspace_id": "660e8400-e29b-41d4-a716-446655440000"
} | \ No newline at end of file diff --git a/docs/models/components/updateworkspacerequest.mdx b/docs/models/components/updateworkspacerequest.mdx index 071e304b5..0390b6896 100644 --- a/docs/models/components/updateworkspacerequest.mdx +++ b/docs/models/components/updateworkspacerequest.mdx @@ -6,15 +6,15 @@ title: "UpdateWorkspaceRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `DefaultImageModel` | optionalnullable.OptionalNullable[`string`] | ➖ | Default image model for this workspace | openai/dall-e-3 | -| `DefaultProviderSort` | optionalnullable.OptionalNullable[`string`] | ➖ | Default provider sort preference (price, throughput, latency, exacto) | price | -| `DefaultTextModel` | optionalnullable.OptionalNullable[`string`] | ➖ | Default text model for this workspace | openai/gpt-4o | -| `Description` | optionalnullable.OptionalNullable[`string`] | ➖ | New description for the workspace | Updated description | -| `DisabledServerTools` | optionalnullable.OptionalNullable[[][components.UpdateWorkspaceRequestDisabledServerTool](../../models/components/updateworkspacerequestdisabledservertool.mdx)] | ➖ | OpenRouter server tools that requests in this workspace may not invoke. Requests naming a disabled tool are rejected with 403. An empty array or null clears the list. | [
"openrouter:web_search",
"openrouter:bash"
] | -| `IoLoggingAPIKeyIds` | optionalnullable.OptionalNullable[[]`int64`] | ➖ | Optional array of API key IDs to filter I/O logging | null | -| `IoLoggingSamplingRate` | `*float64` | ➖ | Sampling rate for I/O logging (0.0001-1) | 1 | -| `IsDataDiscountLoggingEnabled` | `*bool` | ➖ | Whether data discount logging is enabled | true | -| `IsObservabilityBroadcastEnabled` | `*bool` | ➖ | Whether broadcast is enabled | false | -| `IsObservabilityIoLoggingEnabled` | `*bool` | ➖ | Whether private logging is enabled | false | -| `Name` | `*string` | ➖ | New name for the workspace | Updated Workspace | -| `Slug` | `*string` | ➖ | New URL-friendly slug (lowercase alphanumeric segments separated by single hyphens, no leading/trailing hyphens) | updated-workspace | \ No newline at end of file +| `DefaultImageModel` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default image model for this workspace | openai/dall-e-3 | +| `DefaultProviderSort` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default provider sort preference (price, throughput, latency, exacto) | price | +| `DefaultTextModel` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Default text model for this workspace | openai/gpt-4o | +| `Description` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | New description for the workspace | Updated description | +| `DisabledServerTools` | optionalnullable.OptionalNullable[[][components.UpdateWorkspaceRequestDisabledServerTool](../../models/components/updateworkspacerequestdisabledservertool.mdx)] | :heavy_minus_sign: | OpenRouter server tools that requests in this workspace may not invoke. Requests naming a disabled tool are rejected with 403. An empty array or null clears the list. | [
"openrouter:web_search",
"openrouter:bash"
] | +| `IoLoggingAPIKeyIds` | optionalnullable.OptionalNullable[[]`int64`] | :heavy_minus_sign: | Optional array of API key IDs to filter I/O logging | null | +| `IoLoggingSamplingRate` | `*float64` | :heavy_minus_sign: | Sampling rate for I/O logging (0.0001-1) | 1 | +| `IsDataDiscountLoggingEnabled` | `*bool` | :heavy_minus_sign: | Whether data discount logging is enabled | true | +| `IsObservabilityBroadcastEnabled` | `*bool` | :heavy_minus_sign: | Whether broadcast is enabled | false | +| `IsObservabilityIoLoggingEnabled` | `*bool` | :heavy_minus_sign: | Whether private logging is enabled | false | +| `Name` | `*string` | :heavy_minus_sign: | New name for the workspace | Updated Workspace | +| `Slug` | `*string` | :heavy_minus_sign: | New URL-friendly slug (lowercase alphanumeric segments separated by single hyphens, no leading/trailing hyphens) | updated-workspace | \ No newline at end of file diff --git a/docs/models/components/updateworkspaceresponse.mdx b/docs/models/components/updateworkspaceresponse.mdx index b62589512..ff023e764 100644 --- a/docs/models/components/updateworkspaceresponse.mdx +++ b/docs/models/components/updateworkspaceresponse.mdx @@ -6,4 +6,4 @@ title: "UpdateWorkspaceResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.Workspace](../../models/components/workspace.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file +| `Data` | [components.Workspace](../../models/components/workspace.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
} | \ No newline at end of file diff --git a/docs/models/components/upscalefactor.mdx b/docs/models/components/upscalefactor.mdx index 6296326aa..232a32a5c 100644 --- a/docs/models/components/upscalefactor.mdx +++ b/docs/models/components/upscalefactor.mdx @@ -9,5 +9,5 @@ Supported upscale factor range for video upscaling models | Field | Type | Required | Description | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `Max` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `Min` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | \ No newline at end of file +| `Max` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `Min` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/upsertworkspacebudgetrequest.mdx b/docs/models/components/upsertworkspacebudgetrequest.mdx index 677365333..738cc0513 100644 --- a/docs/models/components/upsertworkspacebudgetrequest.mdx +++ b/docs/models/components/upsertworkspacebudgetrequest.mdx @@ -6,5 +6,5 @@ title: "UpsertWorkspaceBudgetRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether to include BYOK (bring-your-own-key) spend when enforcing the workspace's budgets. This is a workspace-wide setting: it applies to every budget interval (daily, weekly, monthly, and lifetime), not just the interval being upserted in this request. Omit to leave the current setting unchanged. | true | -| `LimitUsd` | `float64` | ✅ | Spending limit in USD. Must be greater than 0. | 100 | \ No newline at end of file +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether to include BYOK (bring-your-own-key) spend when enforcing the workspace's budgets. This is a workspace-wide setting: it applies to every budget interval (daily, weekly, monthly, and lifetime), not just the interval being upserted in this request. Omit to leave the current setting unchanged. | true | +| `LimitUsd` | `float64` | :heavy_check_mark: | Spending limit in USD. Must be greater than 0. | 100 | \ No newline at end of file diff --git a/docs/models/components/upsertworkspacebudgetresponse.mdx b/docs/models/components/upsertworkspacebudgetresponse.mdx index de07de611..7535dc67f 100644 --- a/docs/models/components/upsertworkspacebudgetresponse.mdx +++ b/docs/models/components/upsertworkspacebudgetresponse.mdx @@ -6,5 +6,5 @@ title: "UpsertWorkspaceBudgetResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | ✅ | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"limit_usd": 100,
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | true | \ No newline at end of file +| `Data` | [components.WorkspaceBudget](../../models/components/workspacebudget.mdx) | :heavy_check_mark: | N/A | \{
"created_at": "2025-08-24T10:30:00Z",
"id": "770e8400-e29b-41d4-a716-446655440000",
"limit_usd": 100,
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
} | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) spend is included when enforcing the workspace's budgets. This is a workspace-wide setting that applies to all budget intervals (daily, weekly, monthly, and lifetime). | true | \ No newline at end of file diff --git a/docs/models/components/upstream.mdx b/docs/models/components/upstream.mdx index a4edeaacb..ee7daa48f 100644 --- a/docs/models/components/upstream.mdx +++ b/docs/models/components/upstream.mdx @@ -9,5 +9,5 @@ The upstream batch deletion outcome; omitted when no provider was assigned. | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Provider` | `string` | ✅ | The provider name stored on the batch. | OpenAI | -| `Status` | [components.BatchDeletionOutcome](../../models/components/batchdeletionoutcome.mdx) | ✅ | Outcome for one deletion target: `deleted` (removed), `unsupported` (the provider has no batch-delete API; supported file cleanup still runs), or `not_applicable` (the batch never reached that target). | deleted | \ No newline at end of file +| `Provider` | `string` | :heavy_check_mark: | The provider name stored on the batch. | OpenAI | +| `Status` | [components.BatchDeletionOutcome](../../models/components/batchdeletionoutcome.mdx) | :heavy_check_mark: | Outcome for one deletion target: `deleted` (removed), `unsupported` (the provider has no batch-delete API; supported file cleanup still runs), or `not_applicable` (the batch never reached that target). | deleted | \ No newline at end of file diff --git a/docs/models/components/urlcitation.mdx b/docs/models/components/urlcitation.mdx index 6b4196055..6ed77177b 100644 --- a/docs/models/components/urlcitation.mdx +++ b/docs/models/components/urlcitation.mdx @@ -6,9 +6,9 @@ title: "URLCitation" | Field | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Content` | `*string` | ➖ | N/A | -| `EndIndex` | `int64` | ✅ | N/A | -| `StartIndex` | `int64` | ✅ | N/A | -| `Title` | `string` | ✅ | N/A | -| `Type` | [components.URLCitationType](../../models/components/urlcitationtype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Content` | `*string` | :heavy_minus_sign: | N/A | +| `EndIndex` | `int64` | :heavy_check_mark: | N/A | +| `StartIndex` | `int64` | :heavy_check_mark: | N/A | +| `Title` | `string` | :heavy_check_mark: | N/A | +| `Type` | [components.URLCitationType](../../models/components/urlcitationtype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/usage.mdx b/docs/models/components/usage.mdx index bd8ad7e2c..6b5bef783 100644 --- a/docs/models/components/usage.mdx +++ b/docs/models/components/usage.mdx @@ -6,12 +6,12 @@ title: "Usage" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `InputTokens` | `int64` | ✅ | N/A | | -| `InputTokensDetails` | [components.InputTokensDetails](../../models/components/inputtokensdetails.mdx) | ✅ | N/A | | -| `OutputTokens` | `int64` | ✅ | N/A | | -| `OutputTokensDetails` | [components.OutputTokensDetails](../../models/components/outputtokensdetails.mdx) | ✅ | N/A | | -| `TotalTokens` | `int64` | ✅ | N/A | | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Cost of the completion | | -| `CostDetails` | [*components.UsageCostDetails](../../models/components/usagecostdetails.mdx) | ➖ | N/A | | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.ServerToolUseDetails](../../models/components/servertoolusedetails.mdx)] | ➖ | Usage for server-side tool execution (e.g., web search) | \{
"tool_calls_executed": 2,
"tool_calls_requested": 2,
"web_search_requests": 2
} | \ No newline at end of file +| `InputTokens` | `int64` | :heavy_check_mark: | N/A | | +| `InputTokensDetails` | [components.InputTokensDetails](../../models/components/inputtokensdetails.mdx) | :heavy_check_mark: | N/A | | +| `OutputTokens` | `int64` | :heavy_check_mark: | N/A | | +| `OutputTokensDetails` | [components.OutputTokensDetails](../../models/components/outputtokensdetails.mdx) | :heavy_check_mark: | N/A | | +| `TotalTokens` | `int64` | :heavy_check_mark: | N/A | | +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Cost of the completion | | +| `CostDetails` | [*components.UsageCostDetails](../../models/components/usagecostdetails.mdx) | :heavy_minus_sign: | N/A | | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `ServerToolUseDetails` | optionalnullable.OptionalNullable[[components.ServerToolUseDetails](../../models/components/servertoolusedetails.mdx)] | :heavy_minus_sign: | Usage for server-side tool execution (e.g., web search) | \{
"tool_calls_executed": 2,
"tool_calls_requested": 2,
"web_search_requests": 2
} | \ No newline at end of file diff --git a/docs/models/components/usagecostdetails.mdx b/docs/models/components/usagecostdetails.mdx index 24886368e..c4fbf92e2 100644 --- a/docs/models/components/usagecostdetails.mdx +++ b/docs/models/components/usagecostdetails.mdx @@ -6,7 +6,7 @@ title: "UsageCostDetails" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ServerToolCost` | optionalnullable.OptionalNullable[`float64`] | ➖ | Metered server-tool execution cost (for example, shell sandbox time) billed for this request, in USD. Matches the billed checkpoint and settlement amounts exactly. 0 when a metered server tool ran but settled at zero dollars; absent when no metered server tool ran. | -| `UpstreamInferenceCost` | optionalnullable.OptionalNullable[`float64`] | ➖ | N/A | -| `UpstreamInferenceInputCost` | `float64` | ✅ | N/A | -| `UpstreamInferenceOutputCost` | `float64` | ✅ | N/A | \ No newline at end of file +| `ServerToolCost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Metered server-tool execution cost (for example, shell sandbox time) billed for this request, in USD. Matches the billed checkpoint and settlement amounts exactly. 0 when a metered server tool ran but settled at zero dollars; absent when no metered server tool ran. | +| `UpstreamInferenceCost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | N/A | +| `UpstreamInferenceInputCost` | `float64` | :heavy_check_mark: | N/A | +| `UpstreamInferenceOutputCost` | `float64` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/userlocation.mdx b/docs/models/components/userlocation.mdx index 8152813e2..d066e2eb6 100644 --- a/docs/models/components/userlocation.mdx +++ b/docs/models/components/userlocation.mdx @@ -9,8 +9,8 @@ Approximate user location for location-biased search results. Passed through to | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `City` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Country` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Region` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Timezone` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [components.WebSearchPluginType](../../models/components/websearchplugintype.mdx) | ✅ | N/A | \ No newline at end of file +| `City` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Country` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Region` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Timezone` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [components.WebSearchPluginType](../../models/components/websearchplugintype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/validateprivateendpointrequest.mdx b/docs/models/components/validateprivateendpointrequest.mdx index af9fecb14..b83277f6d 100644 --- a/docs/models/components/validateprivateendpointrequest.mdx +++ b/docs/models/components/validateprivateendpointrequest.mdx @@ -6,4 +6,4 @@ title: "ValidatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `WorkspaceID` | `string` | ✅ | Workspace whose BYOK credential is used for the live validation call. The workspace must belong to your account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `WorkspaceID` | `string` | :heavy_check_mark: | Workspace whose BYOK credential is used for the live validation call. The workspace must belong to your account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/vaulteffectivesecret.mdx b/docs/models/components/vaulteffectivesecret.mdx index acb7483ec..626d95cc7 100644 --- a/docs/models/components/vaulteffectivesecret.mdx +++ b/docs/models/components/vaulteffectivesecret.mdx @@ -9,8 +9,8 @@ Metadata for the one secret the intern's outbound requests receive under this na | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | N/A | -| `Fingerprint` | `*string` | ✅ | N/A | -| `Hosts` | []`string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | -| `Scope` | [components.VaultEffectiveSecretScope](../../models/components/vaulteffectivesecretscope.mdx) | ✅ | Where the delivered secret is stored: `intern` for the intern's own vault, `attached` for a vault attached to the intern, `workspace` for the workspace vault. | \ No newline at end of file +| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | N/A | +| `Fingerprint` | `*string` | :heavy_check_mark: | N/A | +| `Hosts` | []`string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | +| `Scope` | [components.VaultEffectiveSecretScope](../../models/components/vaulteffectivesecretscope.mdx) | :heavy_check_mark: | Where the delivered secret is stored: `intern` for the intern's own vault, `attached` for a vault attached to the intern, `workspace` for the workspace vault. | \ No newline at end of file diff --git a/docs/models/components/vaulteffectivesecretlistresponse.mdx b/docs/models/components/vaulteffectivesecretlistresponse.mdx index e0bc39729..40ecb5981 100644 --- a/docs/models/components/vaulteffectivesecretlistresponse.mdx +++ b/docs/models/components/vaulteffectivesecretlistresponse.mdx @@ -9,5 +9,5 @@ One page of the secrets an intern receives, one entry per name. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.VaultEffectiveSecret](../../models/components/vaulteffectivesecret.mdx) | ✅ | N/A | -| `HasMore` | `bool` | ✅ | True when more secrets exist beyond this page. Request the next page with `offset` increased by the number of returned entries. | \ No newline at end of file +| `Data` | [][components.VaultEffectiveSecret](../../models/components/vaulteffectivesecret.mdx) | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | True when more secrets exist beyond this page. Request the next page with `offset` increased by the number of returned entries. | \ No newline at end of file diff --git a/docs/models/components/vaultsecret.mdx b/docs/models/components/vaultsecret.mdx index b374b4c22..67332abd2 100644 --- a/docs/models/components/vaultsecret.mdx +++ b/docs/models/components/vaultsecret.mdx @@ -9,7 +9,7 @@ Metadata for one stored secret. The secret value is never returned. `fingerprint | Field | Type | Required | Description | | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | -| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | N/A | -| `Fingerprint` | `*string` | ✅ | N/A | -| `Hosts` | []`string` | ✅ | N/A | -| `Name` | `string` | ✅ | N/A | \ No newline at end of file +| `CreatedAt` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | N/A | +| `Fingerprint` | `*string` | :heavy_check_mark: | N/A | +| `Hosts` | []`string` | :heavy_check_mark: | N/A | +| `Name` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/vaultsecretcopyrequest.mdx b/docs/models/components/vaultsecretcopyrequest.mdx index 4b2e18e2a..9238ec19c 100644 --- a/docs/models/components/vaultsecretcopyrequest.mdx +++ b/docs/models/components/vaultsecretcopyrequest.mdx @@ -9,4 +9,4 @@ Workspace secrets to copy into the intern scope. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Names` | []`string` | ✅ | Names of workspace secrets to copy, 1 to 100 unique entries. Every name must exist in the workspace scope. | \ No newline at end of file +| `Names` | []`string` | :heavy_check_mark: | Names of workspace secrets to copy, 1 to 100 unique entries. Every name must exist in the workspace scope. | \ No newline at end of file diff --git a/docs/models/components/vaultsecretcopyresponse.mdx b/docs/models/components/vaultsecretcopyresponse.mdx index 2b8f85062..947fe3fd6 100644 --- a/docs/models/components/vaultsecretcopyresponse.mdx +++ b/docs/models/components/vaultsecretcopyresponse.mdx @@ -9,4 +9,4 @@ Metadata for the copies now stored in the intern scope, one entry per requested | Field | Type | Required | Description | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Data` | [][components.VaultSecret](../../models/components/vaultsecret.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.VaultSecret](../../models/components/vaultsecret.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/vaultsecretlistresponse.mdx b/docs/models/components/vaultsecretlistresponse.mdx index e954a6222..eafe5927f 100644 --- a/docs/models/components/vaultsecretlistresponse.mdx +++ b/docs/models/components/vaultsecretlistresponse.mdx @@ -9,5 +9,5 @@ One page of secret metadata for the selected scope. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [][components.VaultSecret](../../models/components/vaultsecret.mdx) | ✅ | N/A | -| `HasMore` | `bool` | ✅ | True when more secrets exist beyond this page. Request the next page with `offset` increased by the number of returned entries. | \ No newline at end of file +| `Data` | [][components.VaultSecret](../../models/components/vaultsecret.mdx) | :heavy_check_mark: | N/A | +| `HasMore` | `bool` | :heavy_check_mark: | True when more secrets exist beyond this page. Request the next page with `offset` increased by the number of returned entries. | \ No newline at end of file diff --git a/docs/models/components/vaultsecretresponse.mdx b/docs/models/components/vaultsecretresponse.mdx index 3bb2f25ce..6517479a2 100644 --- a/docs/models/components/vaultsecretresponse.mdx +++ b/docs/models/components/vaultsecretresponse.mdx @@ -9,4 +9,4 @@ Metadata for the stored secret. | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.VaultSecret](../../models/components/vaultsecret.mdx) | ✅ | Metadata for one stored secret. The secret value is never returned. `fingerprint` is an HMAC-SHA-256 of the value keyed with that vault's own data key, so it is comparable only within one vault: equal fingerprints in one vault mean equal values, and rewriting the same value keeps its fingerprint. The same value stored in two vaults (for example a workspace secret and its intern copy) carries different fingerprints, so comparing fingerprints across vaults cannot show that a copy matches or that a rotation propagated. `hosts` and `fingerprint` are `null` only for legacy rows written before host binding was required; storing the secret again assigns hosts. | \{
"created_at": "2026-09-15T17:44:00.000Z",
"fingerprint": "sha256:9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"hosts": [
"api.github.com"
],
"name": "github_token"
} | \ No newline at end of file +| `Data` | [components.VaultSecret](../../models/components/vaultsecret.mdx) | :heavy_check_mark: | Metadata for one stored secret. The secret value is never returned. `fingerprint` is an HMAC-SHA-256 of the value keyed with that vault's own data key, so it is comparable only within one vault: equal fingerprints in one vault mean equal values, and rewriting the same value keeps its fingerprint. The same value stored in two vaults (for example a workspace secret and its intern copy) carries different fingerprints, so comparing fingerprints across vaults cannot show that a copy matches or that a rotation propagated. `hosts` and `fingerprint` are `null` only for legacy rows written before host binding was required; storing the secret again assigns hosts. | \{
"created_at": "2026-09-15T17:44:00.000Z",
"fingerprint": "sha256:9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"hosts": [
"api.github.com"
],
"name": "github_token"
} | \ No newline at end of file diff --git a/docs/models/components/vaultsecretwriterequest.mdx b/docs/models/components/vaultsecretwriterequest.mdx index 14e6c598b..4e4f5b956 100644 --- a/docs/models/components/vaultsecretwriterequest.mdx +++ b/docs/models/components/vaultsecretwriterequest.mdx @@ -9,5 +9,5 @@ Secret value and the exact hostnames it may be released to. | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Hosts` | []`string` | ✅ | Exact DNS hostnames the secret may be sent to, 1 to 100 entries. Each entry is lowercased and a trailing dot is removed, so `API.Example.com.` is stored as `api.example.com`. Schemes, ports, paths, wildcards and empty values are rejected. Duplicates after normalization are collapsed. Matching is exact: a secret bound to `api.example.com` is never released to `example.com` or any other hostname. | -| `Value` | `string` | ✅ | Secret value, 1 to 65536 characters. It is encrypted at rest and never returned. | \ No newline at end of file +| `Hosts` | []`string` | :heavy_check_mark: | Exact DNS hostnames the secret may be sent to, 1 to 100 entries. Each entry is lowercased and a trailing dot is removed, so `API.Example.com.` is stored as `api.example.com`. Schemes, ports, paths, wildcards and empty values are rejected. Duplicates after normalization are collapsed. Matching is exact: a secret bound to `api.example.com` is never released to `example.com` or any other hostname. | +| `Value` | `string` | :heavy_check_mark: | Secret value, 1 to 65536 characters. It is encrypted at rest and never returned. | \ No newline at end of file diff --git a/docs/models/components/videogeneration.mdx b/docs/models/components/videogeneration.mdx index 54ab7c7e4..591742048 100644 --- a/docs/models/components/videogeneration.mdx +++ b/docs/models/components/videogeneration.mdx @@ -6,6 +6,6 @@ title: "VideoGeneration" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | -| `RequestCount` | `*int64` | ✅ | Total requests admitted for this workload in the window. | | -| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | ✅ | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file +| `Latency` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | +| `RequestCount` | `*int64` | :heavy_check_mark: | Total requests admitted for this workload in the window. | | +| `Throughput` | [*components.PercentileStats](../../models/components/percentilestats.mdx) | :heavy_check_mark: | N/A | \{
"p50": 25.5,
"p75": 35.2,
"p90": 48.7,
"p99": 85.3
} | \ No newline at end of file diff --git a/docs/models/components/videogenerationrequest.mdx b/docs/models/components/videogenerationrequest.mdx index c9e768294..a996eaa67 100644 --- a/docs/models/components/videogenerationrequest.mdx +++ b/docs/models/components/videogenerationrequest.mdx @@ -6,21 +6,21 @@ title: "VideoGenerationRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AspectRatio` | [*components.VideoGenerationRequestAspectRatio](../../models/components/videogenerationrequestaspectratio.mdx) | ➖ | Aspect ratio of the generated video | 16:9 | -| `CallbackURL` | `*string` | ➖ | URL to receive a webhook notification when the video generation job completes. Overrides the workspace-level default callback URL if set. Must be HTTPS. | https://example.com/webhook | -| `Creativity` | `*int64` | ➖ | Creativity level for video upscaling models only. This parameter is not supported by video generation models. | 1 | -| `Duration` | `*int64` | ➖ | Duration of the generated video in seconds | 8 | -| `FrameImages` | [][components.FrameImage](../../models/components/frameimage.mdx) | ➖ | Images to use as the first and/or last frame of the generated video. Each image must specify a frame_type of first_frame or last_frame. | | -| `GenerateAudio` | `*bool` | ➖ | Whether to generate audio alongside the video. Defaults to the endpoint's generate_audio capability flag, false if not set. | true | -| `InputReferences` | [][components.InputReference](../../models/components/inputreference.mdx) | ➖ | Reference assets to guide video generation. Accepts image, audio, and video references. Audio and video references are only honored by providers that support them (including BytePlus Seedance generation 2 and newer); other providers use image references and ignore the rest. | | -| `Model` | `string` | ✅ | N/A | | -| `PreviousJobID` | `*string` | ➖ | ID of a completed video job to edit or extend, as returned by the submit response. The new job runs on the same model and endpoint that produced the previous one. Only models that support continuation accept this field. | gen-vid-1789493115-a1B2c3D4e5F6g7H8i9J0 | -| `Prompt` | `*string` | ➖ | Text prompt describing the video to generate. Optional for models that support generating a video from image input alone; required by all other models. | A serene mountain landscape at sunset | -| `Provider` | [*components.VideoGenerationRequestProvider](../../models/components/videogenerationrequestprovider.mdx) | ➖ | Provider-specific passthrough configuration | | -| `Resolution` | [*components.VideoGenerationRequestResolution](../../models/components/videogenerationrequestresolution.mdx) | ➖ | Resolution of the generated video | 720p | -| `Seed` | `*int64` | ➖ | If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers. | | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `Size` | `*string` | ➖ | Exact pixel dimensions of the generated video in "WIDTHxHEIGHT" format (e.g. "1280x720"). Interchangeable with resolution + aspect_ratio. | 1280x720 | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `UpscaleFactor` | `*float64` | ➖ | Upscale factor for video upscaling models only. This parameter is not supported by video generation models. | 2 | -| `User` | `*string` | ➖ | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file +| `AspectRatio` | [*components.VideoGenerationRequestAspectRatio](../../models/components/videogenerationrequestaspectratio.mdx) | :heavy_minus_sign: | Aspect ratio of the generated video | 16:9 | +| `CallbackURL` | `*string` | :heavy_minus_sign: | URL to receive a webhook notification when the video generation job completes. Overrides the workspace-level default callback URL if set. Must be HTTPS. | https://example.com/webhook | +| `Creativity` | `*int64` | :heavy_minus_sign: | Creativity level for video upscaling models only. This parameter is not supported by video generation models. | 1 | +| `Duration` | `*int64` | :heavy_minus_sign: | Duration of the generated video in seconds | 8 | +| `FrameImages` | [][components.FrameImage](../../models/components/frameimage.mdx) | :heavy_minus_sign: | Images to use as the first and/or last frame of the generated video. Each image must specify a frame_type of first_frame or last_frame. | | +| `GenerateAudio` | `*bool` | :heavy_minus_sign: | Whether to generate audio alongside the video. Defaults to the endpoint's generate_audio capability flag, false if not set. | true | +| `InputReferences` | [][components.InputReference](../../models/components/inputreference.mdx) | :heavy_minus_sign: | Reference assets to guide video generation. Accepts image, audio, and video references. Audio and video references are only honored by providers that support them (including BytePlus Seedance generation 2 and newer); other providers use image references and ignore the rest. | | +| `Model` | `string` | :heavy_check_mark: | N/A | | +| `PreviousJobID` | `*string` | :heavy_minus_sign: | ID of a completed video job to edit or extend, as returned by the submit response. The new job runs on the same model and endpoint that produced the previous one. Only models that support continuation accept this field. | gen-vid-1789493115-a1B2c3D4e5F6g7H8i9J0 | +| `Prompt` | `*string` | :heavy_minus_sign: | Text prompt describing the video to generate. Optional for models that support generating a video from image input alone; required by all other models. | A serene mountain landscape at sunset | +| `Provider` | [*components.VideoGenerationRequestProvider](../../models/components/videogenerationrequestprovider.mdx) | :heavy_minus_sign: | Provider-specific passthrough configuration | | +| `Resolution` | [*components.VideoGenerationRequestResolution](../../models/components/videogenerationrequestresolution.mdx) | :heavy_minus_sign: | Resolution of the generated video | 720p | +| `Seed` | `*int64` | :heavy_minus_sign: | If specified, the generation will sample deterministically, such that repeated requests with the same seed and parameters should return the same result. Determinism is not guaranteed for all providers. | | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `Size` | `*string` | :heavy_minus_sign: | Exact pixel dimensions of the generated video in "WIDTHxHEIGHT" format (e.g. "1280x720"). Interchangeable with resolution + aspect_ratio. | 1280x720 | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `UpscaleFactor` | `*float64` | :heavy_minus_sign: | Upscale factor for video upscaling models only. This parameter is not supported by video generation models. | 2 | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file diff --git a/docs/models/components/videogenerationrequestoptions.mdx b/docs/models/components/videogenerationrequestoptions.mdx index d01cf81ad..6bc9e9a23 100644 --- a/docs/models/components/videogenerationrequestoptions.mdx +++ b/docs/models/components/videogenerationrequestoptions.mdx @@ -9,151 +9,151 @@ Provider-specific options keyed by provider slug. Only options for the matched p | Field | Type | Required | Description | | -------------------------- | -------------------------- | -------------------------- | -------------------------- | -| `Oneai` | map[string]`any` | ➖ | N/A | -| `Ai21` | map[string]`any` | ➖ | N/A | -| `AionLabs` | map[string]`any` | ➖ | N/A | -| `Akashml` | map[string]`any` | ➖ | N/A | -| `Alibaba` | map[string]`any` | ➖ | N/A | -| `AmazonBedrock` | map[string]`any` | ➖ | N/A | -| `AmazonBedrockClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `AmazonNova` | map[string]`any` | ➖ | N/A | -| `Ambient` | map[string]`any` | ➖ | N/A | -| `Anthropic` | map[string]`any` | ➖ | N/A | -| `Anthropic2` | map[string]`any` | ➖ | N/A | -| `Anyscale` | map[string]`any` | ➖ | N/A | -| `ArceeAi` | map[string]`any` | ➖ | N/A | -| `Assemblyai` | map[string]`any` | ➖ | N/A | -| `AtlasCloud` | map[string]`any` | ➖ | N/A | -| `Atoma` | map[string]`any` | ➖ | N/A | -| `Avian` | map[string]`any` | ➖ | N/A | -| `Azure` | map[string]`any` | ➖ | N/A | -| `Baidu` | map[string]`any` | ➖ | N/A | -| `Baseten` | map[string]`any` | ➖ | N/A | -| `BlackForestLabs` | map[string]`any` | ➖ | N/A | -| `Byteplus` | map[string]`any` | ➖ | N/A | -| `Centml` | map[string]`any` | ➖ | N/A | -| `Cerebras` | map[string]`any` | ➖ | N/A | -| `Chutes` | map[string]`any` | ➖ | N/A | -| `Cirrascale` | map[string]`any` | ➖ | N/A | -| `Clarifai` | map[string]`any` | ➖ | N/A | -| `ClaudeOnAws` | map[string]`any` | ➖ | N/A | -| `Cloudflare` | map[string]`any` | ➖ | N/A | -| `Cohere` | map[string]`any` | ➖ | N/A | -| `Coreweave` | map[string]`any` | ➖ | N/A | -| `Cosine` | map[string]`any` | ➖ | N/A | -| `Crofai` | map[string]`any` | ➖ | N/A | -| `Crucible` | map[string]`any` | ➖ | N/A | -| `Crusoe` | map[string]`any` | ➖ | N/A | -| `Darkbloom` | map[string]`any` | ➖ | N/A | -| `Databricks` | map[string]`any` | ➖ | N/A | -| `Decart` | map[string]`any` | ➖ | N/A | -| `Deepgram` | map[string]`any` | ➖ | N/A | -| `Deepinfra` | map[string]`any` | ➖ | N/A | -| `Deepseek` | map[string]`any` | ➖ | N/A | -| `Dekallm` | map[string]`any` | ➖ | N/A | -| `Digitalocean` | map[string]`any` | ➖ | N/A | -| `Elevenlabs` | map[string]`any` | ➖ | N/A | -| `Enfer` | map[string]`any` | ➖ | N/A | -| `FakeProvider` | map[string]`any` | ➖ | N/A | -| `Featherless` | map[string]`any` | ➖ | N/A | -| `Fireworks` | map[string]`any` | ➖ | N/A | -| `FishAudio` | map[string]`any` | ➖ | N/A | -| `Friendli` | map[string]`any` | ➖ | N/A | -| `Gmicloud` | map[string]`any` | ➖ | N/A | -| `GoogleAiStudio` | map[string]`any` | ➖ | N/A | -| `GoogleVertex` | map[string]`any` | ➖ | N/A | -| `Gopomelo` | map[string]`any` | ➖ | N/A | -| `Groq` | map[string]`any` | ➖ | N/A | -| `Heygen` | map[string]`any` | ➖ | N/A | -| `Huggingface` | map[string]`any` | ➖ | N/A | -| `Hyperbolic` | map[string]`any` | ➖ | N/A | -| `HyperbolicQuantized` | map[string]`any` | ➖ | N/A | -| `Inception` | map[string]`any` | ➖ | N/A | -| `Inceptron` | map[string]`any` | ➖ | N/A | -| `InferactVllm` | map[string]`any` | ➖ | N/A | -| `InferenceNet` | map[string]`any` | ➖ | N/A | -| `Infermatic` | map[string]`any` | ➖ | N/A | -| `Inflection` | map[string]`any` | ➖ | N/A | -| `Inocloud` | map[string]`any` | ➖ | N/A | -| `IoNet` | map[string]`any` | ➖ | N/A | -| `Ionstream` | map[string]`any` | ➖ | N/A | -| `Klusterai` | map[string]`any` | ➖ | N/A | -| `Krea` | map[string]`any` | ➖ | N/A | -| `Lambda` | map[string]`any` | ➖ | N/A | -| `Lepton` | map[string]`any` | ➖ | N/A | -| `Liquid` | map[string]`any` | ➖ | N/A | -| `Lynn` | map[string]`any` | ➖ | N/A | -| `LynnPrivate` | map[string]`any` | ➖ | N/A | -| `Makora` | map[string]`any` | ➖ | N/A | -| `Mancer` | map[string]`any` | ➖ | N/A | -| `MancerOld` | map[string]`any` | ➖ | N/A | -| `Mara` | map[string]`any` | ➖ | N/A | -| `Meta` | map[string]`any` | ➖ | N/A | -| `Minimax` | map[string]`any` | ➖ | N/A | -| `Mistral` | map[string]`any` | ➖ | N/A | -| `Modal` | map[string]`any` | ➖ | N/A | -| `Modelrun` | map[string]`any` | ➖ | N/A | -| `Modular` | map[string]`any` | ➖ | N/A | -| `Moonshotai` | map[string]`any` | ➖ | N/A | -| `Morph` | map[string]`any` | ➖ | N/A | -| `Ncompass` | map[string]`any` | ➖ | N/A | -| `NearAi` | map[string]`any` | ➖ | N/A | -| `Nebius` | map[string]`any` | ➖ | N/A | -| `NexAgi` | map[string]`any` | ➖ | N/A | -| `Nextbit` | map[string]`any` | ➖ | N/A | -| `Nineteen` | map[string]`any` | ➖ | N/A | -| `Novita` | map[string]`any` | ➖ | N/A | -| `Nvidia` | map[string]`any` | ➖ | N/A | -| `Octoai` | map[string]`any` | ➖ | N/A | -| `Ollama` | map[string]`any` | ➖ | N/A | -| `OpenInference` | map[string]`any` | ➖ | N/A | -| `Openai` | map[string]`any` | ➖ | N/A | -| `Parasail` | map[string]`any` | ➖ | N/A | -| `ParetoAlpha` | map[string]`any` | ➖ | N/A | -| `Perceptron` | map[string]`any` | ➖ | N/A | -| `Perplexity` | map[string]`any` | ➖ | N/A | -| `Phala` | map[string]`any` | ➖ | N/A | -| `Poolside` | map[string]`any` | ➖ | N/A | -| `Primeintellect` | map[string]`any` | ➖ | N/A | -| `Quiver` | map[string]`any` | ➖ | N/A | -| `Recraft` | map[string]`any` | ➖ | N/A | -| `Recursal` | map[string]`any` | ➖ | N/A | -| `Recursive` | map[string]`any` | ➖ | N/A | -| `Reflection` | map[string]`any` | ➖ | N/A | -| `Reka` | map[string]`any` | ➖ | N/A | -| `Relace` | map[string]`any` | ➖ | N/A | -| `Replicate` | map[string]`any` | ➖ | N/A | -| `Respan` | map[string]`any` | ➖ | N/A | -| `Runway` | map[string]`any` | ➖ | N/A | -| `SailResearch` | map[string]`any` | ➖ | N/A | -| `Sakana` | map[string]`any` | ➖ | N/A | -| `SakanaAi` | map[string]`any` | ➖ | N/A | -| `Sambanova` | map[string]`any` | ➖ | N/A | -| `SambanovaCloaked` | map[string]`any` | ➖ | N/A | -| `Scaledown` | map[string]`any` | ➖ | N/A | -| `Seed` | map[string]`any` | ➖ | N/A | -| `SfCompute` | map[string]`any` | ➖ | N/A | -| `Siliconflow` | map[string]`any` | ➖ | N/A | -| `Sourceful` | map[string]`any` | ➖ | N/A | -| `Stealth` | map[string]`any` | ➖ | N/A | -| `Stepfun` | map[string]`any` | ➖ | N/A | -| `Streamlake` | map[string]`any` | ➖ | N/A | -| `Switchpoint` | map[string]`any` | ➖ | N/A | -| `Targon` | map[string]`any` | ➖ | N/A | -| `Tencent` | map[string]`any` | ➖ | N/A | -| `Tenstorrent` | map[string]`any` | ➖ | N/A | -| `Thinkingmachines` | map[string]`any` | ➖ | N/A | -| `Together` | map[string]`any` | ➖ | N/A | -| `TogetherLite` | map[string]`any` | ➖ | N/A | -| `Typesafe` | map[string]`any` | ➖ | N/A | -| `Ubicloud` | map[string]`any` | ➖ | N/A | -| `Unbiased` | map[string]`any` | ➖ | N/A | -| `Upstage` | map[string]`any` | ➖ | N/A | -| `Venice` | map[string]`any` | ➖ | N/A | -| `Voyageai` | map[string]`any` | ➖ | N/A | -| `Wafer` | map[string]`any` | ➖ | N/A | -| `Wandb` | map[string]`any` | ➖ | N/A | -| `WandbLegacy` | map[string]`any` | ➖ | N/A | -| `Xai` | map[string]`any` | ➖ | N/A | -| `Xiaomi` | map[string]`any` | ➖ | N/A | -| `ZAi` | map[string]`any` | ➖ | N/A | \ No newline at end of file +| `Oneai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ai21` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AionLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Akashml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Alibaba` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrock` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonBedrockClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AmazonNova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ambient` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anthropic2` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Anyscale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ArceeAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Assemblyai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `AtlasCloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Atoma` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Avian` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Azure` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baidu` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Baseten` | map[string]`any` | :heavy_minus_sign: | N/A | +| `BlackForestLabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Byteplus` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Centml` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cerebras` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Chutes` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cirrascale` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Clarifai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ClaudeOnAws` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cloudflare` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cohere` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Coreweave` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Cosine` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crofai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crucible` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Crusoe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Darkbloom` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Databricks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Decart` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepgram` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepinfra` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Deepseek` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Dekallm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Digitalocean` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Elevenlabs` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Enfer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FakeProvider` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Featherless` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Fireworks` | map[string]`any` | :heavy_minus_sign: | N/A | +| `FishAudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Friendli` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gmicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleAiStudio` | map[string]`any` | :heavy_minus_sign: | N/A | +| `GoogleVertex` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Gopomelo` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Groq` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Heygen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Huggingface` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Hyperbolic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `HyperbolicQuantized` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inception` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferactVllm` | map[string]`any` | :heavy_minus_sign: | N/A | +| `InferenceNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Infermatic` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Inocloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `IoNet` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ionstream` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Klusterai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Krea` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lambda` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lepton` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Liquid` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Lynn` | map[string]`any` | :heavy_minus_sign: | N/A | +| `LynnPrivate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Makora` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mancer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `MancerOld` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mara` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Meta` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Minimax` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Mistral` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modelrun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Modular` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Moonshotai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Morph` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ncompass` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NearAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nebius` | map[string]`any` | :heavy_minus_sign: | N/A | +| `NexAgi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nextbit` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nineteen` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Novita` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Nvidia` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Octoai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ollama` | map[string]`any` | :heavy_minus_sign: | N/A | +| `OpenInference` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Openai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Parasail` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ParetoAlpha` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perceptron` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Perplexity` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Phala` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Poolside` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Primeintellect` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Quiver` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recraft` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursal` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Recursive` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reflection` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Reka` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Relace` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Replicate` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Respan` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Runway` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SailResearch` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sakana` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SakanaAi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sambanova` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SambanovaCloaked` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Scaledown` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Seed` | map[string]`any` | :heavy_minus_sign: | N/A | +| `SfCompute` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Siliconflow` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Sourceful` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stealth` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Stepfun` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Streamlake` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Switchpoint` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Targon` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tencent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Tenstorrent` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Thinkingmachines` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Together` | map[string]`any` | :heavy_minus_sign: | N/A | +| `TogetherLite` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Typesafe` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Ubicloud` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Unbiased` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Upstage` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Venice` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Voyageai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wafer` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Wandb` | map[string]`any` | :heavy_minus_sign: | N/A | +| `WandbLegacy` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xai` | map[string]`any` | :heavy_minus_sign: | N/A | +| `Xiaomi` | map[string]`any` | :heavy_minus_sign: | N/A | +| `ZAi` | map[string]`any` | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/videogenerationrequestprovider.mdx b/docs/models/components/videogenerationrequestprovider.mdx index 0ea53fd15..aab1e7556 100644 --- a/docs/models/components/videogenerationrequestprovider.mdx +++ b/docs/models/components/videogenerationrequestprovider.mdx @@ -9,4 +9,4 @@ Provider-specific passthrough configuration | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `Options` | [*components.VideoGenerationRequestOptions](../../models/components/videogenerationrequestoptions.mdx) | ➖ | N/A | \{
"google-vertex": \{
"output_config": \{
"effort": "low"
}
}
} | \ No newline at end of file +| `Options` | [*components.VideoGenerationRequestOptions](../../models/components/videogenerationrequestoptions.mdx) | :heavy_minus_sign: | N/A | \{
"google-vertex": \{
"output_config": \{
"effort": "low"
}
}
} | \ No newline at end of file diff --git a/docs/models/components/videogenerationresponse.mdx b/docs/models/components/videogenerationresponse.mdx index 17aadfe3a..c5a295e39 100644 --- a/docs/models/components/videogenerationresponse.mdx +++ b/docs/models/components/videogenerationresponse.mdx @@ -6,12 +6,12 @@ title: "VideoGenerationResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | `*string` | ➖ | N/A | | -| `ExpiresAt` | `*int64` | ➖ | Unix timestamp in seconds when OpenRouter's stored copy of the outputs stops being available. Present only when that copy exists. | | -| `GenerationID` | `*string` | ➖ | The generation ID associated with this video generation job. Available once the job has been processed. | | -| `ID` | `string` | ✅ | The video job ID, in the `gen-vid--<20 alphanumerics>` generation ID format. Pass it as `previous_job_id` to continue the generation. | | -| `PollingURL` | `string` | ✅ | N/A | | -| `Status` | [components.VideoGenerationResponseStatus](../../models/components/videogenerationresponsestatus.mdx) | ✅ | N/A | | -| `UnsignedUrls` | []`string` | ➖ | OpenRouter content URLs for each output. They need your API key in the `Authorization` header and keep working for as long as the output is available. | | -| `Urls` | []`string` | ➖ | Signed download URLs for OpenRouter's stored copy of each output, usable without an API key until `expires_at`. Anyone holding a URL can download that output until it expires, so treat it like a secret. Present only when the stored copy exists. | | -| `Usage` | [*components.VideoGenerationUsage](../../models/components/videogenerationusage.mdx) | ➖ | Usage and cost information for the video generation. Available once the job has completed. | \{
"cost": 0.5,
"is_byok": false
} | \ No newline at end of file +| `Error` | `*string` | :heavy_minus_sign: | N/A | | +| `ExpiresAt` | `*int64` | :heavy_minus_sign: | Unix timestamp in seconds when OpenRouter's stored copy of the outputs stops being available. Present only when that copy exists. | | +| `GenerationID` | `*string` | :heavy_minus_sign: | The generation ID associated with this video generation job. Available once the job has been processed. | | +| `ID` | `string` | :heavy_check_mark: | The video job ID, in the `gen-vid--<20 alphanumerics>` generation ID format. Pass it as `previous_job_id` to continue the generation. | | +| `PollingURL` | `string` | :heavy_check_mark: | N/A | | +| `Status` | [components.VideoGenerationResponseStatus](../../models/components/videogenerationresponsestatus.mdx) | :heavy_check_mark: | N/A | | +| `UnsignedUrls` | []`string` | :heavy_minus_sign: | OpenRouter content URLs for each output. They need your API key in the `Authorization` header and keep working for as long as the output is available. | | +| `Urls` | []`string` | :heavy_minus_sign: | Signed download URLs for OpenRouter's stored copy of each output, usable without an API key until `expires_at`. Anyone holding a URL can download that output until it expires, so treat it like a secret. Present only when the stored copy exists. | | +| `Usage` | [*components.VideoGenerationUsage](../../models/components/videogenerationusage.mdx) | :heavy_minus_sign: | Usage and cost information for the video generation. Available once the job has completed. | \{
"cost": 0.5,
"is_byok": false
} | \ No newline at end of file diff --git a/docs/models/components/videogenerationusage.mdx b/docs/models/components/videogenerationusage.mdx index 8afc1d1af..3b380a8ac 100644 --- a/docs/models/components/videogenerationusage.mdx +++ b/docs/models/components/videogenerationusage.mdx @@ -9,5 +9,5 @@ Usage and cost information for the video generation. Available once the job has | Field | Type | Required | Description | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Cost` | optionalnullable.OptionalNullable[`float64`] | ➖ | The cost of the video generation in USD. | -| `IsBYOK` | `*bool` | ➖ | Whether the request was made using a Bring Your Own Key configuration. | \ No newline at end of file +| `Cost` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | The cost of the video generation in USD. | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether the request was made using a Bring Your Own Key configuration. | \ No newline at end of file diff --git a/docs/models/components/videomodel.mdx b/docs/models/components/videomodel.mdx index 4bf306d18..1015c9157 100644 --- a/docs/models/components/videomodel.mdx +++ b/docs/models/components/videomodel.mdx @@ -6,20 +6,20 @@ title: "VideoModel" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `AllowedPassthroughParameters` | []`string` | ✅ | List of parameters that are allowed to be passed through to the provider | | -| `CanonicalSlug` | `string` | ✅ | Canonical slug for the model | openai/gpt-4 | -| `Created` | `int64` | ✅ | Unix timestamp of when the model was created | 1692901234 | -| `Creativity` | []`int64` | ✅ | Supported creativity levels for video upscaling models | | -| `Description` | `*string` | ➖ | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | -| `GenerateAudio` | `*bool` | ✅ | Whether the model supports generating audio alongside video | | -| `HuggingFaceID` | optionalnullable.OptionalNullable[`string`] | ➖ | Hugging Face model identifier, if applicable | microsoft/DialoGPT-medium | -| `ID` | `string` | ✅ | Unique identifier for the model | openai/gpt-4 | -| `Name` | `string` | ✅ | Display name of the model | GPT-4 | -| `PricingSkus` | optionalnullable.OptionalNullable[map[string]`string`] | ➖ | Pricing SKUs with provider prefix stripped, values as strings | | -| `Seed` | `*bool` | ✅ | Whether the model supports deterministic generation via seed parameter | | -| `SupportedAspectRatios` | [][components.SupportedAspectRatio](../../models/components/supportedaspectratio.mdx) | ✅ | Supported output aspect ratios | | -| `SupportedDurations` | []`int64` | ✅ | Supported video durations in seconds | | -| `SupportedFrameImages` | [][components.SupportedFrameImage](../../models/components/supportedframeimage.mdx) | ✅ | Supported frame image types (e.g. first_frame, last_frame) | | -| `SupportedResolutions` | [][components.SupportedResolution](../../models/components/supportedresolution.mdx) | ✅ | Supported output resolutions | | -| `SupportedSizes` | [][components.SupportedSize](../../models/components/supportedsize.mdx) | ✅ | Supported output sizes (width x height) | | -| `UpscaleFactor` | [*components.UpscaleFactor](../../models/components/upscalefactor.mdx) | ✅ | Supported upscale factor range for video upscaling models | | \ No newline at end of file +| `AllowedPassthroughParameters` | []`string` | :heavy_check_mark: | List of parameters that are allowed to be passed through to the provider | | +| `CanonicalSlug` | `string` | :heavy_check_mark: | Canonical slug for the model | openai/gpt-4 | +| `Created` | `int64` | :heavy_check_mark: | Unix timestamp of when the model was created | 1692901234 | +| `Creativity` | []`int64` | :heavy_check_mark: | Supported creativity levels for video upscaling models | | +| `Description` | `*string` | :heavy_minus_sign: | Description of the model | GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy. | +| `GenerateAudio` | `*bool` | :heavy_check_mark: | Whether the model supports generating audio alongside video | | +| `HuggingFaceID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Hugging Face model identifier, if applicable | microsoft/DialoGPT-medium | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the model | openai/gpt-4 | +| `Name` | `string` | :heavy_check_mark: | Display name of the model | GPT-4 | +| `PricingSkus` | optionalnullable.OptionalNullable[map[string]`string`] | :heavy_minus_sign: | Pricing SKUs with provider prefix stripped, values as strings | | +| `Seed` | `*bool` | :heavy_check_mark: | Whether the model supports deterministic generation via seed parameter | | +| `SupportedAspectRatios` | [][components.SupportedAspectRatio](../../models/components/supportedaspectratio.mdx) | :heavy_check_mark: | Supported output aspect ratios | | +| `SupportedDurations` | []`int64` | :heavy_check_mark: | Supported video durations in seconds | | +| `SupportedFrameImages` | [][components.SupportedFrameImage](../../models/components/supportedframeimage.mdx) | :heavy_check_mark: | Supported frame image types (e.g. first_frame, last_frame) | | +| `SupportedResolutions` | [][components.SupportedResolution](../../models/components/supportedresolution.mdx) | :heavy_check_mark: | Supported output resolutions | | +| `SupportedSizes` | [][components.SupportedSize](../../models/components/supportedsize.mdx) | :heavy_check_mark: | Supported output sizes (width x height) | | +| `UpscaleFactor` | [*components.UpscaleFactor](../../models/components/upscalefactor.mdx) | :heavy_check_mark: | Supported upscale factor range for video upscaling models | | \ No newline at end of file diff --git a/docs/models/components/videomodelslistresponse.mdx b/docs/models/components/videomodelslistresponse.mdx index c42abae72..de05095d7 100644 --- a/docs/models/components/videomodelslistresponse.mdx +++ b/docs/models/components/videomodelslistresponse.mdx @@ -6,4 +6,4 @@ title: "VideoModelsListResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Data` | [][components.VideoModel](../../models/components/videomodel.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.VideoModel](../../models/components/videomodel.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/videourl.mdx b/docs/models/components/videourl.mdx index 727ca30ff..635d4df44 100644 --- a/docs/models/components/videourl.mdx +++ b/docs/models/components/videourl.mdx @@ -6,4 +6,4 @@ title: "VideoURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/viewer.mdx b/docs/models/components/viewer.mdx deleted file mode 100644 index 1f675a55f..000000000 --- a/docs/models/components/viewer.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "Viewer" ---- - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Principals` | []`string` | ✅ | The caller's Ori principals on this intern: `clerk:`, and, when the grant carries `vault:read`, `slack::` for each Slack account they linked to it. A session started by one of them in a one-to-one Slack DM is the caller's to see. | \ No newline at end of file diff --git a/docs/models/components/webfetchplugin.mdx b/docs/models/components/webfetchplugin.mdx index d15f84f02..da53f8690 100644 --- a/docs/models/components/webfetchplugin.mdx +++ b/docs/models/components/webfetchplugin.mdx @@ -6,8 +6,8 @@ title: "WebFetchPlugin" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `AllowedDomains` | []`string` | ➖ | Only fetch from these domains. | -| `BlockedDomains` | []`string` | ➖ | Never fetch from these domains. | -| `ID` | [components.WebFetchPluginID](../../models/components/webfetchpluginid.mdx) | ✅ | N/A | -| `MaxContentTokens` | `*int64` | ➖ | Maximum content length in approximate tokens. Content exceeding this limit is truncated. | -| `MaxUses` | `*int64` | ➖ | Maximum number of web fetches per request. Once exceeded, the tool returns an error. | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_minus_sign: | Only fetch from these domains. | +| `BlockedDomains` | []`string` | :heavy_minus_sign: | Never fetch from these domains. | +| `ID` | [components.WebFetchPluginID](../../models/components/webfetchpluginid.mdx) | :heavy_check_mark: | N/A | +| `MaxContentTokens` | `*int64` | :heavy_minus_sign: | Maximum content length in approximate tokens. Content exceeding this limit is truncated. | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web fetches per request. Once exceeded, the tool returns an error. | \ No newline at end of file diff --git a/docs/models/components/webfetchservertool.mdx b/docs/models/components/webfetchservertool.mdx index 4291be9d7..af9313472 100644 --- a/docs/models/components/webfetchservertool.mdx +++ b/docs/models/components/webfetchservertool.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: fetches full content from a URL (web page or PD | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `Parameters` | [*components.WebFetchServerToolConfig](../../models/components/webfetchservertoolconfig.mdx) | ➖ | Configuration for the openrouter:web_fetch server tool | \{
"max_content_tokens": 100000,
"max_uses": 10
} | -| `Type` | [components.WebFetchServerToolType](../../models/components/webfetchservertooltype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.WebFetchServerToolConfig](../../models/components/webfetchservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:web_fetch server tool | \{
"max_content_tokens": 100000,
"max_uses": 10
} | +| `Type` | [components.WebFetchServerToolType](../../models/components/webfetchservertooltype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/webfetchservertoolconfig.mdx b/docs/models/components/webfetchservertoolconfig.mdx index d8101e825..6563fabf0 100644 --- a/docs/models/components/webfetchservertoolconfig.mdx +++ b/docs/models/components/webfetchservertoolconfig.mdx @@ -9,8 +9,8 @@ Configuration for the openrouter:web_fetch server tool | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedDomains` | []`string` | ➖ | Only fetch from these domains. | | -| `BlockedDomains` | []`string` | ➖ | Never fetch from these domains. | | -| `Engine` | [*components.WebFetchEngineEnum](../../models/components/webfetchengineenum.mdx) | ➖ | Which fetch engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in fetch. "exa" uses Exa Contents API. "openrouter" uses direct HTTP fetch. "firecrawl" uses Firecrawl scrape. "parallel" uses the Parallel extract API. | auto | -| `MaxContentTokens` | `*int64` | ➖ | Maximum content length in approximate tokens. Content exceeding this limit is truncated. | 100000 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web fetches per request. Once exceeded, the tool returns an error. | 10 | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_minus_sign: | Only fetch from these domains. | | +| `BlockedDomains` | []`string` | :heavy_minus_sign: | Never fetch from these domains. | | +| `Engine` | [*components.WebFetchEngineEnum](../../models/components/webfetchengineenum.mdx) | :heavy_minus_sign: | Which fetch engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in fetch. "exa" uses Exa Contents API. "openrouter" uses direct HTTP fetch. "firecrawl" uses Firecrawl scrape. "parallel" uses the Parallel extract API. | auto | +| `MaxContentTokens` | `*int64` | :heavy_minus_sign: | Maximum content length in approximate tokens. Content exceeding this limit is truncated. | 100000 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web fetches per request. Once exceeded, the tool returns an error. | 10 | \ No newline at end of file diff --git a/docs/models/components/websearchcallcompletedevent.mdx b/docs/models/components/websearchcallcompletedevent.mdx index 213ce0088..22397fcaa 100644 --- a/docs/models/components/websearchcallcompletedevent.mdx +++ b/docs/models/components/websearchcallcompletedevent.mdx @@ -9,7 +9,7 @@ Web search call completed | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.WebSearchCallCompletedEventType](../../models/components/websearchcallcompletedeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.WebSearchCallCompletedEventType](../../models/components/websearchcallcompletedeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchcallinprogressevent.mdx b/docs/models/components/websearchcallinprogressevent.mdx index 5d165e16b..6a868ad82 100644 --- a/docs/models/components/websearchcallinprogressevent.mdx +++ b/docs/models/components/websearchcallinprogressevent.mdx @@ -9,7 +9,7 @@ Web search call in progress | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.WebSearchCallInProgressEventType](../../models/components/websearchcallinprogresseventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.WebSearchCallInProgressEventType](../../models/components/websearchcallinprogresseventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchcallsearchingevent.mdx b/docs/models/components/websearchcallsearchingevent.mdx index b25f8f8a9..7f16925af 100644 --- a/docs/models/components/websearchcallsearchingevent.mdx +++ b/docs/models/components/websearchcallsearchingevent.mdx @@ -9,7 +9,7 @@ Web search call is searching | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `ItemID` | `string` | ✅ | N/A | -| `OutputIndex` | `int64` | ✅ | N/A | -| `SequenceNumber` | `int64` | ✅ | N/A | -| `Type` | [components.WebSearchCallSearchingEventType](../../models/components/websearchcallsearchingeventtype.mdx) | ✅ | N/A | \ No newline at end of file +| `ItemID` | `string` | :heavy_check_mark: | N/A | +| `OutputIndex` | `int64` | :heavy_check_mark: | N/A | +| `SequenceNumber` | `int64` | :heavy_check_mark: | N/A | +| `Type` | [components.WebSearchCallSearchingEventType](../../models/components/websearchcallsearchingeventtype.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchcitation.mdx b/docs/models/components/websearchcitation.mdx index fb7e80324..314dcb0d8 100644 --- a/docs/models/components/websearchcitation.mdx +++ b/docs/models/components/websearchcitation.mdx @@ -6,7 +6,7 @@ title: "WebSearchCitation" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `CitedText` | `*string` | ➖ | N/A | -| `EncryptedIndex` | `*string` | ➖ | N/A | -| `Title` | `*string` | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `CitedText` | `*string` | :heavy_minus_sign: | N/A | +| `EncryptedIndex` | `*string` | :heavy_minus_sign: | N/A | +| `Title` | `*string` | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchconfig.mdx b/docs/models/components/websearchconfig.mdx index 470cf1c92..e764764b4 100644 --- a/docs/models/components/websearchconfig.mdx +++ b/docs/models/components/websearchconfig.mdx @@ -6,14 +6,14 @@ title: "WebSearchConfig" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedDomains` | []`string` | ➖ | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `ExcludedDomains` | []`string` | ➖ | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | -| `MaxCharacters` | `*int64` | ➖ | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxTotalResults` | `*int64` | ➖ | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | ➖ | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | -| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | ➖ | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_minus_sign: | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `ExcludedDomains` | []`string` | :heavy_minus_sign: | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | +| `MaxCharacters` | `*int64` | :heavy_minus_sign: | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxTotalResults` | `*int64` | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | +| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | :heavy_minus_sign: | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/websearchdomainfilter.mdx b/docs/models/components/websearchdomainfilter.mdx index a9eddd763..a680c4452 100644 --- a/docs/models/components/websearchdomainfilter.mdx +++ b/docs/models/components/websearchdomainfilter.mdx @@ -6,6 +6,6 @@ title: "WebSearchDomainFilter" | Field | Type | Required | Description | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | -| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | -| `ExcludedDomains` | optionalnullable.OptionalNullable[[]`string`] | ➖ | N/A | \ No newline at end of file +| `AllowedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | +| `BlockedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | +| `ExcludedDomains` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchplugin.mdx b/docs/models/components/websearchplugin.mdx index 2acce8575..fbf34f9d7 100644 --- a/docs/models/components/websearchplugin.mdx +++ b/docs/models/components/websearchplugin.mdx @@ -6,14 +6,14 @@ title: "WebSearchPlugin" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Enabled` | `*bool` | ➖ | Set to false to disable the web-search plugin for this request. Defaults to true. | | -| `Engine` | [*components.WebSearchEngine](../../models/components/websearchengine.mdx) | ➖ | The search engine to use for web search. | exa | -| `ExcludeDomains` | []`string` | ➖ | A list of domains to exclude from web search results. Supports wildcards (e.g. "*.substack.com") and path filtering (e.g. "openai.com/blog"). | [
"example.com",
"*.substack.com",
"openai.com/blog"
] | -| `ID` | [components.WebSearchPluginID](../../models/components/websearchpluginid.mdx) | ✅ | N/A | | -| `IncludeDomains` | []`string` | ➖ | A list of domains to restrict web search results to. Supports wildcards (e.g. "*.substack.com") and path filtering (e.g. "openai.com/blog"). | [
"example.com",
"*.substack.com",
"openai.com/blog"
] | -| `MaxResults` | `*int64` | ➖ | N/A | | -| `MaxUses` | `*int64` | ➖ | Maximum number of times the model can invoke web search in a single turn. Passed through to native providers that support it (e.g. Anthropic). | | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchPrompt` | `*string` | ➖ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.UserLocation](../../models/components/userlocation.mdx)] | ➖ | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `Enabled` | `*bool` | :heavy_minus_sign: | Set to false to disable the web-search plugin for this request. Defaults to true. | | +| `Engine` | [*components.WebSearchEngine](../../models/components/websearchengine.mdx) | :heavy_minus_sign: | The search engine to use for web search. | exa | +| `ExcludeDomains` | []`string` | :heavy_minus_sign: | A list of domains to exclude from web search results. Supports wildcards (e.g. "*.substack.com") and path filtering (e.g. "openai.com/blog"). | [
"example.com",
"*.substack.com",
"openai.com/blog"
] | +| `ID` | [components.WebSearchPluginID](../../models/components/websearchpluginid.mdx) | :heavy_check_mark: | N/A | | +| `IncludeDomains` | []`string` | :heavy_minus_sign: | A list of domains to restrict web search results to. Supports wildcards (e.g. "*.substack.com") and path filtering (e.g. "openai.com/blog"). | [
"example.com",
"*.substack.com",
"openai.com/blog"
] | +| `MaxResults` | `*int64` | :heavy_minus_sign: | N/A | | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of times the model can invoke web search in a single turn. Passed through to native providers that support it (e.g. Anthropic). | | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchPrompt` | `*string` | :heavy_minus_sign: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.UserLocation](../../models/components/userlocation.mdx)] | :heavy_minus_sign: | N/A | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/websearchservertool.mdx b/docs/models/components/websearchservertool.mdx index f0e0184af..6d77bfe55 100644 --- a/docs/models/components/websearchservertool.mdx +++ b/docs/models/components/websearchservertool.mdx @@ -9,12 +9,12 @@ Web search tool configuration (2025-08-26 version) | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | ➖ | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | ➖ | Size of the search context for web search tools | medium | -| `Type` | [components.WebSearchServerToolType](../../models/components/websearchservertooltype.mdx) | ✅ | N/A | | -| `UserLocation` | optionalnullable.OptionalNullable[[components.WebSearchUserLocation](../../models/components/websearchuserlocation.mdx)] | ➖ | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `Filters` | optionalnullable.OptionalNullable[[components.WebSearchDomainFilter](../../models/components/websearchdomainfilter.mdx)] | :heavy_minus_sign: | N/A | \{
"allowed_domains": [
"example.com"
],
"blocked_domains": [
"spam.com"
],
"excluded_domains": [
"spam.com"
]
} | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchContextSizeEnum](../../models/components/searchcontextsizeenum.mdx) | :heavy_minus_sign: | Size of the search context for web search tools | medium | +| `Type` | [components.WebSearchServerToolType](../../models/components/websearchservertooltype.mdx) | :heavy_check_mark: | N/A | | +| `UserLocation` | optionalnullable.OptionalNullable[[components.WebSearchUserLocation](../../models/components/websearchuserlocation.mdx)] | :heavy_minus_sign: | User location information for web search | \{
"city": "San Francisco",
"country": "USA",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/websearchservertoolconfig.mdx b/docs/models/components/websearchservertoolconfig.mdx index 452b7f4e7..6b4aa9f76 100644 --- a/docs/models/components/websearchservertoolconfig.mdx +++ b/docs/models/components/websearchservertoolconfig.mdx @@ -9,14 +9,14 @@ Configuration for the openrouter:web_search server tool | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedDomains` | []`string` | ➖ | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | -| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | ➖ | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | -| `ExcludedDomains` | []`string` | ➖ | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | -| `MaxCharacters` | `*int64` | ➖ | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | -| `MaxResults` | `*int64` | ➖ | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | -| `MaxTotalResults` | `*int64` | ➖ | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | -| `MaxUses` | `*int64` | ➖ | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | -| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | ➖ | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | -| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | ➖ | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | -| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | ➖ | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | -| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | ➖ | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file +| `AllowedDomains` | []`string` | :heavy_minus_sign: | Limit search results to these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, and most native providers (Anthropic, OpenAI, SpaceXAI). Cannot be used with excluded_domains. | | +| `Engine` | [*components.WebSearchEngineEnum](../../models/components/websearchengineenum.mdx) | :heavy_minus_sign: | Which search engine to use. "auto" (default) uses native if the provider supports it, otherwise Exa. "native" forces the provider's built-in search. "exa" forces the Exa search API. "firecrawl" uses the Firecrawl search API. "parallel" uses the Parallel search API. "perplexity" uses the Perplexity Search API (raw ranked results). | auto | +| `ExcludedDomains` | []`string` | :heavy_minus_sign: | Exclude search results from these domains. Supported by Exa, Firecrawl, Parallel, Perplexity, Anthropic, OpenAI, and SpaceXAI. Cannot be used with allowed_domains. | | +| `MaxCharacters` | `*int64` | :heavy_minus_sign: | Exact maximum number of characters of content per search result. Applies to the Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, caps highlight content per result. For Parallel, caps excerpt content per result (default 1,500 when omitted). For Perplexity, maps to the native `max_tokens_per_page` parameter (converted from characters to tokens) and trims the response to the exact character cap. When both `max_characters` and `search_context_size` are set, `max_characters` takes precedence. When omitted, falls back to `search_context_size` mapping (Exa) or engine defaults (Parallel, Perplexity). | 2000 | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of search results to return per search call. Defaults to 5. Applies to Exa, Firecrawl, Parallel, and Perplexity engines; ignored with native provider search. Perplexity supports a maximum of 20; values above 20 are clamped. | 5 | +| `MaxTotalResults` | `*int64` | :heavy_minus_sign: | Maximum total number of search results across all search calls in a single request. Once this limit is reached, the tool will stop returning new results. Useful for controlling cost and context size in agentic loops. Defaults to 50 when not specified. | 50 | +| `MaxUses` | `*int64` | :heavy_minus_sign: | Maximum number of web searches the model may perform in a single request. Once reached, further search calls return an error result instead of executing. Applies to the Exa, Firecrawl, Parallel, and Perplexity engines. With native provider search, forwarded only to Anthropic (as `max_uses`); other native search providers have no equivalent parameter and ignore it. | 3 | +| `Mode` | [*components.WebSearchMode](../../models/components/websearchmode.mdx) | :heavy_minus_sign: | Engine-native search mode. Exa supports instant, fast, auto (default), deep-lite, deep, and deep-reasoning. Parallel supports turbo, fast, basic (default), and advanced. Modes unsupported by the selected engine are ignored. | auto | +| `SearchContextSize` | [*components.SearchQualityLevel](../../models/components/searchqualitylevel.mdx) | :heavy_minus_sign: | How much context to retrieve per result. Applies to Exa, Parallel, and Perplexity engines; ignored with native provider search and Firecrawl. For Exa, pins a fixed per-result character cap (low=5,000, medium=15,000, high=30,000); when omitted, Exa picks an adaptive size per query and document (typically ~2,000–4,000 characters per result). For Parallel, controls the total characters across all results; when omitted, Parallel uses its own default size. For Perplexity, maps directly to the Search API's native search_context_size parameter. Overridden by `max_characters` when both are set. | medium | +| `UserLocation` | [*components.WebSearchUserLocationServerTool](../../models/components/websearchuserlocationservertool.mdx) | :heavy_minus_sign: | Approximate user location for location-biased results. | \{
"city": "San Francisco",
"country": "US",
"region": "California",
"timezone": "America/Los_Angeles",
"type": "approximate"
} | +| `XSearch` | [*components.XSearchOptions](../../models/components/xsearchoptions.mdx) | :heavy_minus_sign: | Enable SpaceXAI X (Twitter) search alongside native web search, with optional filters. Only applies to SpaceXAI endpoints with native search; omit to search the web only. X search is billed separately by SpaceXAI, per post and per user profile fetched. | \{
"allowed_x_handles": [
"OpenRouterAI"
],
"from_date": "2025-01-01"
} | \ No newline at end of file diff --git a/docs/models/components/websearchservertoolopenrouter.mdx b/docs/models/components/websearchservertoolopenrouter.mdx index d31e85bb5..45b54e513 100644 --- a/docs/models/components/websearchservertoolopenrouter.mdx +++ b/docs/models/components/websearchservertoolopenrouter.mdx @@ -9,5 +9,5 @@ OpenRouter built-in server tool: searches the web for current information | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Parameters` | [*components.WebSearchServerToolConfig](../../models/components/websearchservertoolconfig.mdx) | ➖ | Configuration for the openrouter:web_search server tool | \{
"max_results": 5,
"search_context_size": "medium"
} | -| `Type` | [components.WebSearchServerToolOpenRouterType](../../models/components/websearchservertoolopenroutertype.mdx) | ✅ | N/A | | \ No newline at end of file +| `Parameters` | [*components.WebSearchServerToolConfig](../../models/components/websearchservertoolconfig.mdx) | :heavy_minus_sign: | Configuration for the openrouter:web_search server tool | \{
"max_results": 5,
"search_context_size": "medium"
} | +| `Type` | [components.WebSearchServerToolOpenRouterType](../../models/components/websearchservertoolopenroutertype.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/components/websearchsource.mdx b/docs/models/components/websearchsource.mdx index 3074f01a2..395f5a3ad 100644 --- a/docs/models/components/websearchsource.mdx +++ b/docs/models/components/websearchsource.mdx @@ -6,5 +6,5 @@ title: "WebSearchSource" | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Type` | [components.WebSearchSourceType](../../models/components/websearchsourcetype.mdx) | ✅ | N/A | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `Type` | [components.WebSearchSourceType](../../models/components/websearchsourcetype.mdx) | :heavy_check_mark: | N/A | +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchuserlocation.mdx b/docs/models/components/websearchuserlocation.mdx index 81ec099b0..272b63c16 100644 --- a/docs/models/components/websearchuserlocation.mdx +++ b/docs/models/components/websearchuserlocation.mdx @@ -9,8 +9,8 @@ User location information for web search | Field | Type | Required | Description | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `City` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Country` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Region` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Timezone` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [*components.WebSearchUserLocationType](../../models/components/websearchuserlocationtype.mdx) | ➖ | N/A | \ No newline at end of file +| `City` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Country` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Region` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Timezone` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [*components.WebSearchUserLocationType](../../models/components/websearchuserlocationtype.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/websearchuserlocationservertool.mdx b/docs/models/components/websearchuserlocationservertool.mdx index 2fc519c0b..a1e0de9e6 100644 --- a/docs/models/components/websearchuserlocationservertool.mdx +++ b/docs/models/components/websearchuserlocationservertool.mdx @@ -9,8 +9,8 @@ Approximate user location for location-biased results. | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `City` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Country` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Region` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Timezone` | optionalnullable.OptionalNullable[`string`] | ➖ | N/A | -| `Type` | [*components.WebSearchUserLocationServerToolType](../../models/components/websearchuserlocationservertooltype.mdx) | ➖ | N/A | \ No newline at end of file +| `City` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Country` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Region` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Timezone` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | N/A | +| `Type` | [*components.WebSearchUserLocationServerToolType](../../models/components/websearchuserlocationservertooltype.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/components/workspace.mdx b/docs/models/components/workspace.mdx index f1f9afd4c..b1b975a5c 100644 --- a/docs/models/components/workspace.mdx +++ b/docs/models/components/workspace.mdx @@ -6,21 +6,21 @@ title: "Workspace" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the workspace was created | 2025-08-24T10:30:00Z | -| `CreatedBy` | `*string` | ✅ | User ID of the workspace creator | user_abc123 | -| `DefaultGuardrailID` | `string` | ✅ | Deterministic ID derived from the workspace ID. The default guardrail is materialized when its configuration is first written. | 595d5849-7e86-51fd-a7c0-705c34e4afff | -| `DefaultImageModel` | `*string` | ✅ | Default image model for this workspace | openai/dall-e-3 | -| `DefaultProviderSort` | `*string` | ✅ | Default provider sort preference (price, throughput, latency, exacto) | price | -| `DefaultTextModel` | `*string` | ✅ | Default text model for this workspace | openai/gpt-4o | -| `Description` | `*string` | ✅ | Description of the workspace | Production environment workspace | -| `DisabledServerTools` | optionalnullable.OptionalNullable[[]`string`] | ➖ | OpenRouter server tools (e.g. openrouter:web_search) that requests in this workspace may not invoke. Null means no tools are disabled. | null | -| `ID` | `string` | ✅ | Unique identifier for the workspace | 550e8400-e29b-41d4-a716-446655440000 | -| `IncludeBYOKInBudgets` | `*bool` | ➖ | Whether BYOK (bring-your-own-key) spend counts toward this workspace's budgets. Set it via the workspace budget endpoints. | false | -| `IoLoggingAPIKeyIds` | []`int64` | ✅ | Optional array of API key IDs to filter I/O logging. Null means all keys are logged. | null | -| `IoLoggingSamplingRate` | `float64` | ✅ | Sampling rate for I/O logging (0.0001-1). 1 means 100% of requests are logged. | 1 | -| `IsDataDiscountLoggingEnabled` | `bool` | ✅ | Whether data discount logging is enabled for this workspace | true | -| `IsObservabilityBroadcastEnabled` | `bool` | ✅ | Whether broadcast is enabled for this workspace | false | -| `IsObservabilityIoLoggingEnabled` | `bool` | ✅ | Whether private logging is enabled for this workspace | false | -| `Name` | `string` | ✅ | Name of the workspace | Production | -| `Slug` | `string` | ✅ | URL-friendly slug for the workspace | production | -| `UpdatedAt` | `*string` | ✅ | ISO 8601 timestamp of when the workspace was last updated | 2025-08-24T15:45:00Z | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the workspace was created | 2025-08-24T10:30:00Z | +| `CreatedBy` | `*string` | :heavy_check_mark: | User ID of the workspace creator | user_abc123 | +| `DefaultGuardrailID` | `string` | :heavy_check_mark: | Deterministic ID derived from the workspace ID. The default guardrail is materialized when its configuration is first written. | 595d5849-7e86-51fd-a7c0-705c34e4afff | +| `DefaultImageModel` | `*string` | :heavy_check_mark: | Default image model for this workspace | openai/dall-e-3 | +| `DefaultProviderSort` | `*string` | :heavy_check_mark: | Default provider sort preference (price, throughput, latency, exacto) | price | +| `DefaultTextModel` | `*string` | :heavy_check_mark: | Default text model for this workspace | openai/gpt-4o | +| `Description` | `*string` | :heavy_check_mark: | Description of the workspace | Production environment workspace | +| `DisabledServerTools` | optionalnullable.OptionalNullable[[]`string`] | :heavy_minus_sign: | OpenRouter server tools (e.g. openrouter:web_search) that requests in this workspace may not invoke. Null means no tools are disabled. | null | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the workspace | 550e8400-e29b-41d4-a716-446655440000 | +| `IncludeBYOKInBudgets` | `*bool` | :heavy_minus_sign: | Whether BYOK (bring-your-own-key) spend counts toward this workspace's budgets. Set it via the workspace budget endpoints. | false | +| `IoLoggingAPIKeyIds` | []`int64` | :heavy_check_mark: | Optional array of API key IDs to filter I/O logging. Null means all keys are logged. | null | +| `IoLoggingSamplingRate` | `float64` | :heavy_check_mark: | Sampling rate for I/O logging (0.0001-1). 1 means 100% of requests are logged. | 1 | +| `IsDataDiscountLoggingEnabled` | `bool` | :heavy_check_mark: | Whether data discount logging is enabled for this workspace | true | +| `IsObservabilityBroadcastEnabled` | `bool` | :heavy_check_mark: | Whether broadcast is enabled for this workspace | false | +| `IsObservabilityIoLoggingEnabled` | `bool` | :heavy_check_mark: | Whether private logging is enabled for this workspace | false | +| `Name` | `string` | :heavy_check_mark: | Name of the workspace | Production | +| `Slug` | `string` | :heavy_check_mark: | URL-friendly slug for the workspace | production | +| `UpdatedAt` | `*string` | :heavy_check_mark: | ISO 8601 timestamp of when the workspace was last updated | 2025-08-24T15:45:00Z | \ No newline at end of file diff --git a/docs/models/components/workspacebudget.mdx b/docs/models/components/workspacebudget.mdx index 782c9636a..82cdb1fe5 100644 --- a/docs/models/components/workspacebudget.mdx +++ b/docs/models/components/workspacebudget.mdx @@ -6,9 +6,9 @@ title: "WorkspaceBudget" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the budget was created | 2025-08-24T10:30:00Z | -| `ID` | `string` | ✅ | Unique identifier for the budget | 770e8400-e29b-41d4-a716-446655440000 | -| `LimitUsd` | `float64` | ✅ | Spending limit in USD for this interval | 100 | -| `ResetInterval` | [*components.WorkspaceBudgetResetInterval](../../models/components/workspacebudgetresetinterval.mdx) | ✅ | Interval at which spend resets. Null means a lifetime (one-time) budget. | monthly | -| `UpdatedAt` | `string` | ✅ | ISO 8601 timestamp of when the budget was last updated | 2025-08-24T15:45:00Z | -| `WorkspaceID` | `string` | ✅ | ID of the workspace the budget belongs to | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the budget was created | 2025-08-24T10:30:00Z | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the budget | 770e8400-e29b-41d4-a716-446655440000 | +| `LimitUsd` | `float64` | :heavy_check_mark: | Spending limit in USD for this interval | 100 | +| `ResetInterval` | [*components.WorkspaceBudgetResetInterval](../../models/components/workspacebudgetresetinterval.mdx) | :heavy_check_mark: | Interval at which spend resets. Null means a lifetime (one-time) budget. | monthly | +| `UpdatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the budget was last updated | 2025-08-24T15:45:00Z | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace the budget belongs to | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/workspacemember.mdx b/docs/models/components/workspacemember.mdx index 4dd2a99ec..1dcdc0b03 100644 --- a/docs/models/components/workspacemember.mdx +++ b/docs/models/components/workspacemember.mdx @@ -6,8 +6,8 @@ title: "WorkspaceMember" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the membership was created | 2025-08-24T10:30:00Z | -| `ID` | `string` | ✅ | Unique identifier for the workspace membership | 660e8400-e29b-41d4-a716-446655440000 | -| `Role` | [components.WorkspaceMemberRole](../../models/components/workspacememberrole.mdx) | ✅ | Role of the member in the workspace | member | -| `UserID` | `string` | ✅ | Clerk user ID of the member | user_abc123 | -| `WorkspaceID` | `string` | ✅ | ID of the workspace | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the membership was created | 2025-08-24T10:30:00Z | +| `ID` | `string` | :heavy_check_mark: | Unique identifier for the workspace membership | 660e8400-e29b-41d4-a716-446655440000 | +| `Role` | [components.WorkspaceMemberRole](../../models/components/workspacememberrole.mdx) | :heavy_check_mark: | Role of the member in the workspace | member | +| `UserID` | `string` | :heavy_check_mark: | Clerk user ID of the member | user_abc123 | +| `WorkspaceID` | `string` | :heavy_check_mark: | ID of the workspace | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/components/xsearchoptions.mdx b/docs/models/components/xsearchoptions.mdx index e3cfa306b..4690aca2e 100644 --- a/docs/models/components/xsearchoptions.mdx +++ b/docs/models/components/xsearchoptions.mdx @@ -9,9 +9,9 @@ Enable SpaceXAI X (Twitter) search alongside native web search, with optional fi | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `AllowedXHandles` | []`string` | ➖ | Only include posts from these X handles (max 20). Cannot be used with excluded_x_handles. | [
"OpenRouterAI"
] | -| `EnableImageUnderstanding` | `*bool` | ➖ | Analyze images attached to matching posts. | | -| `EnableVideoUnderstanding` | `*bool` | ➖ | Analyze videos attached to matching posts. | | -| `ExcludedXHandles` | []`string` | ➖ | Exclude posts from these X handles (max 20). Cannot be used with allowed_x_handles. | [
"spamaccount"
] | -| `FromDate` | [*types.Date](../../types/date.mdx) | ➖ | Start of the post date range (ISO 8601 date, e.g. "2025-01-01"). | 2025-01-01 | -| `ToDate` | [*types.Date](../../types/date.mdx) | ➖ | End of the post date range (ISO 8601 date, e.g. "2025-12-31"). | 2025-12-31 | \ No newline at end of file +| `AllowedXHandles` | []`string` | :heavy_minus_sign: | Only include posts from these X handles (max 20). Cannot be used with excluded_x_handles. | [
"OpenRouterAI"
] | +| `EnableImageUnderstanding` | `*bool` | :heavy_minus_sign: | Analyze images attached to matching posts. | | +| `EnableVideoUnderstanding` | `*bool` | :heavy_minus_sign: | Analyze videos attached to matching posts. | | +| `ExcludedXHandles` | []`string` | :heavy_minus_sign: | Exclude posts from these X handles (max 20). Cannot be used with allowed_x_handles. | [
"spamaccount"
] | +| `FromDate` | [*types.Date](../../types/date.mdx) | :heavy_minus_sign: | Start of the post date range (ISO 8601 date, e.g. "2025-01-01"). | 2025-01-01 | +| `ToDate` | [*types.Date](../../types/date.mdx) | :heavy_minus_sign: | End of the post date range (ISO 8601 date, e.g. "2025-12-31"). | 2025-12-31 | \ No newline at end of file diff --git a/docs/models/operations/activateprivateendpointrequest.mdx b/docs/models/operations/activateprivateendpointrequest.mdx index b9a5d0a63..d3f3d2551 100644 --- a/docs/models/operations/activateprivateendpointrequest.mdx +++ b/docs/models/operations/activateprivateendpointrequest.mdx @@ -6,4 +6,4 @@ title: "ActivatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file diff --git a/docs/models/operations/bulkaddworkspacemembersrequest.mdx b/docs/models/operations/bulkaddworkspacemembersrequest.mdx index 5d371843e..c33d12a56 100644 --- a/docs/models/operations/bulkaddworkspacemembersrequest.mdx +++ b/docs/models/operations/bulkaddworkspacemembersrequest.mdx @@ -6,5 +6,5 @@ title: "BulkAddWorkspaceMembersRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `BulkAddWorkspaceMembersRequest` | [components.BulkAddWorkspaceMembersRequest](../../models/components/bulkaddworkspacemembersrequest.mdx) | ✅ | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `BulkAddWorkspaceMembersRequest` | [components.BulkAddWorkspaceMembersRequest](../../models/components/bulkaddworkspacemembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file diff --git a/docs/models/operations/bulkassignkeystoguardrailrequest.mdx b/docs/models/operations/bulkassignkeystoguardrailrequest.mdx index 9acbf7df7..664f49096 100644 --- a/docs/models/operations/bulkassignkeystoguardrailrequest.mdx +++ b/docs/models/operations/bulkassignkeystoguardrailrequest.mdx @@ -6,5 +6,5 @@ title: "BulkAssignKeysToGuardrailRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `BulkAssignKeysRequest` | [components.BulkAssignKeysRequest](../../models/components/bulkassignkeysrequest.mdx) | ✅ | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `BulkAssignKeysRequest` | [components.BulkAssignKeysRequest](../../models/components/bulkassignkeysrequest.mdx) | :heavy_check_mark: | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | \ No newline at end of file diff --git a/docs/models/operations/bulkassignmemberstoguardrailrequest.mdx b/docs/models/operations/bulkassignmemberstoguardrailrequest.mdx index fd35fa90d..fcaab1b76 100644 --- a/docs/models/operations/bulkassignmemberstoguardrailrequest.mdx +++ b/docs/models/operations/bulkassignmemberstoguardrailrequest.mdx @@ -6,5 +6,5 @@ title: "BulkAssignMembersToGuardrailRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `BulkAssignMembersRequest` | [components.BulkAssignMembersRequest](../../models/components/bulkassignmembersrequest.mdx) | ✅ | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `BulkAssignMembersRequest` | [components.BulkAssignMembersRequest](../../models/components/bulkassignmembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file diff --git a/docs/models/operations/bulkremoveworkspacemembersrequest.mdx b/docs/models/operations/bulkremoveworkspacemembersrequest.mdx index adbae1ccd..1333a3b4d 100644 --- a/docs/models/operations/bulkremoveworkspacemembersrequest.mdx +++ b/docs/models/operations/bulkremoveworkspacemembersrequest.mdx @@ -6,5 +6,5 @@ title: "BulkRemoveWorkspaceMembersRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `BulkRemoveWorkspaceMembersRequest` | [components.BulkRemoveWorkspaceMembersRequest](../../models/components/bulkremoveworkspacemembersrequest.mdx) | ✅ | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `BulkRemoveWorkspaceMembersRequest` | [components.BulkRemoveWorkspaceMembersRequest](../../models/components/bulkremoveworkspacemembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file diff --git a/docs/models/operations/bulkunassignkeysfromguardrailrequest.mdx b/docs/models/operations/bulkunassignkeysfromguardrailrequest.mdx index 2807faf3a..bc3a865a0 100644 --- a/docs/models/operations/bulkunassignkeysfromguardrailrequest.mdx +++ b/docs/models/operations/bulkunassignkeysfromguardrailrequest.mdx @@ -6,5 +6,5 @@ title: "BulkUnassignKeysFromGuardrailRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `BulkUnassignKeysRequest` | [components.BulkUnassignKeysRequest](../../models/components/bulkunassignkeysrequest.mdx) | ✅ | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `BulkUnassignKeysRequest` | [components.BulkUnassignKeysRequest](../../models/components/bulkunassignkeysrequest.mdx) | :heavy_check_mark: | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | \ No newline at end of file diff --git a/docs/models/operations/bulkunassignmembersfromguardrailrequest.mdx b/docs/models/operations/bulkunassignmembersfromguardrailrequest.mdx index 1e96e9e3a..39f2fbf6a 100644 --- a/docs/models/operations/bulkunassignmembersfromguardrailrequest.mdx +++ b/docs/models/operations/bulkunassignmembersfromguardrailrequest.mdx @@ -6,5 +6,5 @@ title: "BulkUnassignMembersFromGuardrailRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `BulkUnassignMembersRequest` | [components.BulkUnassignMembersRequest](../../models/components/bulkunassignmembersrequest.mdx) | ✅ | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `BulkUnassignMembersRequest` | [components.BulkUnassignMembersRequest](../../models/components/bulkunassignmembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | \ No newline at end of file diff --git a/docs/models/operations/classifierdimensions.mdx b/docs/models/operations/classifierdimensions.mdx index 4068fadab..6d7eb45a5 100644 --- a/docs/models/operations/classifierdimensions.mdx +++ b/docs/models/operations/classifierdimensions.mdx @@ -9,6 +9,6 @@ Group results by custom classifier tags, breaking down metrics by the specified | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- | -| `ClassifierID` | `string` | ✅ | UUID of the classifier whose tags to group by. | 550e8400-e29b-41d4-a716-446655440000 | -| `DimensionNames` | []`string` | ➖ | N/A | | -| `IncludeNulls` | `*bool` | ➖ | When true, also include generations that have no tag from this classifier. Defaults to false, which returns only classified generations. | | \ No newline at end of file +| `ClassifierID` | `string` | :heavy_check_mark: | UUID of the classifier whose tags to group by. | 550e8400-e29b-41d4-a716-446655440000 | +| `DimensionNames` | []`string` | :heavy_minus_sign: | N/A | | +| `IncludeNulls` | `*bool` | :heavy_minus_sign: | When true, also include generations that have no tag from this classifier. Defaults to false, which returns only classified generations. | | \ No newline at end of file diff --git a/docs/models/operations/classifierfilters.mdx b/docs/models/operations/classifierfilters.mdx index 0674f9675..27444c7ed 100644 --- a/docs/models/operations/classifierfilters.mdx +++ b/docs/models/operations/classifierfilters.mdx @@ -9,5 +9,5 @@ Filter results to generations with specific classifier tag values. Can be combin | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `ClassifierID` | `string` | ✅ | UUID of the classifier whose tags to filter by. Must match classifier_dimensions.classifier_id when both are specified. | 550e8400-e29b-41d4-a716-446655440000 | -| `Filters` | [][operations.ClassifierFiltersFilter](../../models/operations/classifierfiltersfilter.mdx) | ✅ | N/A | | \ No newline at end of file +| `ClassifierID` | `string` | :heavy_check_mark: | UUID of the classifier whose tags to filter by. Must match classifier_dimensions.classifier_id when both are specified. | 550e8400-e29b-41d4-a716-446655440000 | +| `Filters` | [][operations.ClassifierFiltersFilter](../../models/operations/classifierfiltersfilter.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/classifierfiltersfilter.mdx b/docs/models/operations/classifierfiltersfilter.mdx index 0106c3657..3e1d76509 100644 --- a/docs/models/operations/classifierfiltersfilter.mdx +++ b/docs/models/operations/classifierfiltersfilter.mdx @@ -6,6 +6,6 @@ title: "ClassifierFiltersFilter" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Field` | `string` | ✅ | Classifier dimension name to filter on (snake_case identifier, e.g. "department", "work_type"). | department | -| `Operator` | `string` | ✅ | Filter operator. Only equality/set operators are supported (eq, neq, in, not_in) — ordered comparisons are not available because classification values are strings. | eq | -| `Value` | [operations.ClassifierFiltersValue](../../models/operations/classifierfiltersvalue.mdx) | ✅ | Filter value. Use a scalar (string or number) for eq/neq, or an array for in/not_in. | Engineering | \ No newline at end of file +| `Field` | `string` | :heavy_check_mark: | Classifier dimension name to filter on (snake_case identifier, e.g. "department", "work_type"). | department | +| `Operator` | `string` | :heavy_check_mark: | Filter operator. Only equality/set operators are supported (eq, neq, in, not_in) — ordered comparisons are not available because classification values are strings. | eq | +| `Value` | [operations.ClassifierFiltersValue](../../models/operations/classifierfiltersvalue.mdx) | :heavy_check_mark: | Filter value. Use a scalar (string or number) for eq/neq, or an array for in/not_in. | Engineering | \ No newline at end of file diff --git a/docs/models/operations/contentimageurl.mdx b/docs/models/operations/contentimageurl.mdx index f43e3442c..316466ddd 100644 --- a/docs/models/operations/contentimageurl.mdx +++ b/docs/models/operations/contentimageurl.mdx @@ -6,5 +6,5 @@ title: "ContentImageURL" | Field | Type | Required | Description | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `ImageURL` | [operations.ImageURL](../../models/operations/imageurl.mdx) | ✅ | N/A | -| `Type` | [operations.TypeImageURL](../../models/operations/typeimageurl.mdx) | ✅ | N/A | \ No newline at end of file +| `ImageURL` | [operations.ImageURL](../../models/operations/imageurl.mdx) | :heavy_check_mark: | N/A | +| `Type` | [operations.TypeImageURL](../../models/operations/typeimageurl.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/contenttext.mdx b/docs/models/operations/contenttext.mdx index 24612167e..f9a90d0b5 100644 --- a/docs/models/operations/contenttext.mdx +++ b/docs/models/operations/contenttext.mdx @@ -6,5 +6,5 @@ title: "ContentText" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Text` | `string` | ✅ | N/A | -| `Type` | [operations.TypeText](../../models/operations/typetext.mdx) | ✅ | N/A | \ No newline at end of file +| `Text` | `string` | :heavy_check_mark: | N/A | +| `Type` | [operations.TypeText](../../models/operations/typetext.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/copyvaultsecretstointernrequest.mdx b/docs/models/operations/copyvaultsecretstointernrequest.mdx index 608363f43..8b2f9564c 100644 --- a/docs/models/operations/copyvaultsecretstointernrequest.mdx +++ b/docs/models/operations/copyvaultsecretstointernrequest.mdx @@ -6,5 +6,5 @@ title: "CopyVaultSecretsToInternRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `VaultSecretCopyRequest` | [components.VaultSecretCopyRequest](../../models/components/vaultsecretcopyrequest.mdx) | ✅ | N/A | \{
"names": [
"github_token"
]
} | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `VaultSecretCopyRequest` | [components.VaultSecretCopyRequest](../../models/components/vaultsecretcopyrequest.mdx) | :heavy_check_mark: | N/A | \{
"names": [
"github_token"
]
} | \ No newline at end of file diff --git a/docs/models/operations/createaudiotranscriptionsmultipartfile.mdx b/docs/models/operations/createaudiotranscriptionsmultipartfile.mdx index 98240e106..94daa49e5 100644 --- a/docs/models/operations/createaudiotranscriptionsmultipartfile.mdx +++ b/docs/models/operations/createaudiotranscriptionsmultipartfile.mdx @@ -6,5 +6,5 @@ title: "CreateAudioTranscriptionsMultipartFile" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `FileName` | `string` | ✅ | N/A | -| `Content` | `any` | ✅ | N/A | \ No newline at end of file +| `FileName` | `string` | :heavy_check_mark: | N/A | +| `Content` | `any` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/createaudiotranscriptionsmultipartrequest.mdx b/docs/models/operations/createaudiotranscriptionsmultipartrequest.mdx index fff4f6310..490eee090 100644 --- a/docs/models/operations/createaudiotranscriptionsmultipartrequest.mdx +++ b/docs/models/operations/createaudiotranscriptionsmultipartrequest.mdx @@ -6,16 +6,16 @@ title: "CreateAudioTranscriptionsMultipartRequest" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Diarize` | `*bool` | ➖ | Label each word with the speaker who said it (words[].speaker, words[].speaker_label). Requires response_format "verbose_json" (400 otherwise); word timestamps are included even when timestamp_granularities[] omits "word". Only supported by some providers; 400 when the selected model cannot diarize. | -| `File` | [*operations.CreateAudioTranscriptionsMultipartFile](../../models/operations/createaudiotranscriptionsmultipartfile.mdx) | ➖ | The audio file to transcribe. The format is derived from the filename extension or the file part content type. Max 25 MB; send larger files as base64 JSON via input_audio, or by URL via source_url. Exactly one of file or source_url is required. | -| `Keyterms` | []`string` | ➖ | Domain terms, names, or phrases to bias recognition toward; repeat the part once per term (keyterms=... is also accepted). Only supported by some providers; 400 when the selected model cannot use keyterms. | -| `Language` | `*string` | ➖ | The language of the input audio (ISO-639-1). | -| `Model` | `string` | ✅ | The model to use for transcription. | -| `Provider` | `*string` | ➖ | JSON-encoded provider preferences object, the same shape as the JSON body field: \{ "zdr": true, "data_collection": "deny", "options": \{ "\": \{ ... } } }. Only options for the matched provider are forwarded. Must decode to a JSON object. | -| `ResponseFormat` | [*operations.ResponseFormat](../../models/operations/responseformat.mdx) | ➖ | The response format. "json" (default) returns \{ text, usage }; "verbose_json" additionally returns task, language, duration, and segment-level timestamps (OpenAI-compatible providers only). | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. | -| `SourceURL` | `*string` | ➖ | Publicly reachable http(s) URL of the audio file, downloaded by the provider directly (no size limit on our side). The format is derived from the URL path extension. Only supported by some providers; exactly one of file or source_url is required. | -| `Temperature` | `*float64` | ➖ | The sampling temperature. | -| `TimestampGranularities` | [][operations.TimestampGranularities](../../models/operations/timestampgranularities.mdx) | ➖ | Timestamp detail levels to include when response_format is "verbose_json". "word" additionally returns word-level timestamps in the words array. | -| `Trace` | `*string` | ➖ | JSON-encoded trace metadata object (trace_id, trace_name, span_name, generation_name, parent_span_id and custom keys) attached to the Broadcast trace. Must decode to a JSON object. | -| `User` | `*string` | ➖ | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | \ No newline at end of file +| `Diarize` | `*bool` | :heavy_minus_sign: | Label each word with the speaker who said it (words[].speaker, words[].speaker_label). Requires response_format "verbose_json" (400 otherwise); word timestamps are included even when timestamp_granularities[] omits "word". Only supported by some providers; 400 when the selected model cannot diarize. | +| `File` | [*operations.CreateAudioTranscriptionsMultipartFile](../../models/operations/createaudiotranscriptionsmultipartfile.mdx) | :heavy_minus_sign: | The audio file to transcribe. The format is derived from the filename extension or the file part content type. Max 25 MB; send larger files as base64 JSON via input_audio, or by URL via source_url. Exactly one of file or source_url is required. | +| `Keyterms` | []`string` | :heavy_minus_sign: | Domain terms, names, or phrases to bias recognition toward; repeat the part once per term (keyterms=... is also accepted). Only supported by some providers; 400 when the selected model cannot use keyterms. | +| `Language` | `*string` | :heavy_minus_sign: | The language of the input audio (ISO-639-1). | +| `Model` | `string` | :heavy_check_mark: | The model to use for transcription. | +| `Provider` | `*string` | :heavy_minus_sign: | JSON-encoded provider preferences object, the same shape as the JSON body field: \{ "zdr": true, "data_collection": "deny", "options": \{ "\": \{ ... } } }. Only options for the matched provider are forwarded. Must decode to a JSON object. | +| `ResponseFormat` | [*operations.ResponseFormat](../../models/operations/responseformat.mdx) | :heavy_minus_sign: | The response format. "json" (default) returns \{ text, usage }; "verbose_json" additionally returns task, language, duration, and segment-level timestamps (OpenAI-compatible providers only). | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. | +| `SourceURL` | `*string` | :heavy_minus_sign: | Publicly reachable http(s) URL of the audio file, downloaded by the provider directly (no size limit on our side). The format is derived from the URL path extension. Only supported by some providers; exactly one of file or source_url is required. | +| `Temperature` | `*float64` | :heavy_minus_sign: | The sampling temperature. | +| `TimestampGranularities` | [][operations.TimestampGranularities](../../models/operations/timestampgranularities.mdx) | :heavy_minus_sign: | Timestamp detail levels to include when response_format is "verbose_json". "word" additionally returns word-level timestamps in the words array. | +| `Trace` | `*string` | :heavy_minus_sign: | JSON-encoded trace metadata object (trace_id, trace_name, span_name, generation_name, parent_span_id and custom keys) attached to the Broadcast trace. Must decode to a JSON object. | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | \ No newline at end of file diff --git a/docs/models/operations/createauthkeyscodedata.mdx b/docs/models/operations/createauthkeyscodedata.mdx index 26e35d493..309d665be 100644 --- a/docs/models/operations/createauthkeyscodedata.mdx +++ b/docs/models/operations/createauthkeyscodedata.mdx @@ -9,6 +9,6 @@ Auth code data | Field | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `AppID` | `int64` | ✅ | The application ID associated with this auth code | 12345 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the auth code was created | 2025-08-24T10:30:00Z | -| `ID` | `string` | ✅ | The authorization code ID to use in the exchange request | auth_code_xyz789 | \ No newline at end of file +| `AppID` | `int64` | :heavy_check_mark: | The application ID associated with this auth code | 12345 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the auth code was created | 2025-08-24T10:30:00Z | +| `ID` | `string` | :heavy_check_mark: | The authorization code ID to use in the exchange request | auth_code_xyz789 | \ No newline at end of file diff --git a/docs/models/operations/createauthkeyscoderequest.mdx b/docs/models/operations/createauthkeyscoderequest.mdx index f4148f67e..4577c3334 100644 --- a/docs/models/operations/createauthkeyscoderequest.mdx +++ b/docs/models/operations/createauthkeyscoderequest.mdx @@ -6,11 +6,11 @@ title: "CreateAuthKeysCodeRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CallbackURL` | `string` | ✅ | The callback URL to redirect to after authorization. Supports https URLs and localhost/127.0.0.1 URLs on any port for local CLI tools. | https://myapp.com/auth/callback | -| `CodeChallenge` | `*string` | ➖ | PKCE code challenge for enhanced security | E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM | -| `CodeChallengeMethod` | [*operations.CreateAuthKeysCodeCodeChallengeMethod](../../models/operations/createauthkeyscodecodechallengemethod.mdx) | ➖ | The method used to generate the code challenge | S256 | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | -| `KeyLabel` | `*string` | ➖ | Optional custom label for the API key. Defaults to the app name if not provided. | My Custom Key | -| `Limit` | `*float64` | ➖ | Credit limit for the API key to be created | 100 | -| `UsageLimitType` | [*operations.UsageLimitType](../../models/operations/usagelimittype.mdx) | ➖ | Optional credit limit reset interval. When set, the credit limit resets on this interval. | monthly | -| `WorkspaceID` | `*string` | ➖ | Optional workspace ID to associate the API key with | | \ No newline at end of file +| `CallbackURL` | `string` | :heavy_check_mark: | The callback URL to redirect to after authorization. Supports https URLs and localhost/127.0.0.1 URLs on any port for local CLI tools. | https://myapp.com/auth/callback | +| `CodeChallenge` | `*string` | :heavy_minus_sign: | PKCE code challenge for enhanced security | E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM | +| `CodeChallengeMethod` | [*operations.CreateAuthKeysCodeCodeChallengeMethod](../../models/operations/createauthkeyscodecodechallengemethod.mdx) | :heavy_minus_sign: | The method used to generate the code challenge | S256 | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | +| `KeyLabel` | `*string` | :heavy_minus_sign: | Optional custom label for the API key. Defaults to the app name if not provided. | My Custom Key | +| `Limit` | `*float64` | :heavy_minus_sign: | Credit limit for the API key to be created | 100 | +| `UsageLimitType` | [*operations.UsageLimitType](../../models/operations/usagelimittype.mdx) | :heavy_minus_sign: | Optional credit limit reset interval. When set, the credit limit resets on this interval. | monthly | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to associate the API key with | | \ No newline at end of file diff --git a/docs/models/operations/createauthkeyscoderesponse.mdx b/docs/models/operations/createauthkeyscoderesponse.mdx index 00dad49a4..90fd1b3fa 100644 --- a/docs/models/operations/createauthkeyscoderesponse.mdx +++ b/docs/models/operations/createauthkeyscoderesponse.mdx @@ -9,4 +9,4 @@ Successfully created authorization code | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [operations.CreateAuthKeysCodeData](../../models/operations/createauthkeyscodedata.mdx) | ✅ | Auth code data | \{
"app_id": 12345,
"created_at": "2025-08-24T10:30:00Z",
"id": "auth_code_xyz789"
} | \ No newline at end of file +| `Data` | [operations.CreateAuthKeysCodeData](../../models/operations/createauthkeyscodedata.mdx) | :heavy_check_mark: | Auth code data | \{
"app_id": 12345,
"created_at": "2025-08-24T10:30:00Z",
"id": "auth_code_xyz789"
} | \ No newline at end of file diff --git a/docs/models/operations/createembeddingsdata.mdx b/docs/models/operations/createembeddingsdata.mdx index 00829e7ae..297e417ac 100644 --- a/docs/models/operations/createembeddingsdata.mdx +++ b/docs/models/operations/createembeddingsdata.mdx @@ -9,6 +9,6 @@ A single embedding object | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Embedding` | [operations.Embedding](../../models/operations/embedding.mdx) | ✅ | Embedding vector as an array of floats or a base64 string | [
0.0023064255,
-0.009327292,
0.015797347
] | -| `Index` | `*int64` | ➖ | Index of the embedding in the input list | 0 | -| `Object` | [operations.ObjectEmbedding](../../models/operations/objectembedding.mdx) | ✅ | N/A | | \ No newline at end of file +| `Embedding` | [operations.Embedding](../../models/operations/embedding.mdx) | :heavy_check_mark: | Embedding vector as an array of floats or a base64 string | [
0.0023064255,
-0.009327292,
0.015797347
] | +| `Index` | `*int64` | :heavy_minus_sign: | Index of the embedding in the input list | 0 | +| `Object` | [operations.ObjectEmbedding](../../models/operations/objectembedding.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/createembeddingsrequest.mdx b/docs/models/operations/createembeddingsrequest.mdx index 35dc4afba..2a36bede8 100644 --- a/docs/models/operations/createembeddingsrequest.mdx +++ b/docs/models/operations/createembeddingsrequest.mdx @@ -9,12 +9,12 @@ Embeddings request input | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Dimensions` | `*int64` | ➖ | The number of dimensions for the output embeddings | 1536 | -| `EncodingFormat` | [*operations.EncodingFormat](../../models/operations/encodingformat.mdx) | ➖ | The format of the output embeddings | float | -| `Input` | [operations.InputUnion](../../models/operations/inputunion.mdx) | ✅ | Text, token, or multimodal input(s) to embed | The quick brown fox jumps over the lazy dog | -| `InputType` | `*string` | ➖ | The type of input (e.g. search_query, search_document) | search_query | -| `Model` | `string` | ✅ | The model to use for embeddings | openai/text-embedding-3-small | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | N/A | \{
"allow_fallbacks": true
} | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A unique identifier for the end-user | user-1234 | \ No newline at end of file +| `Dimensions` | `*int64` | :heavy_minus_sign: | The number of dimensions for the output embeddings | 1536 | +| `EncodingFormat` | [*operations.EncodingFormat](../../models/operations/encodingformat.mdx) | :heavy_minus_sign: | The format of the output embeddings | float | +| `Input` | [operations.InputUnion](../../models/operations/inputunion.mdx) | :heavy_check_mark: | Text, token, or multimodal input(s) to embed | The quick brown fox jumps over the lazy dog | +| `InputType` | `*string` | :heavy_minus_sign: | The type of input (e.g. search_query, search_document) | search_query | +| `Model` | `string` | :heavy_check_mark: | The model to use for embeddings | openai/text-embedding-3-small | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | N/A | \{
"allow_fallbacks": true
} | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier for the end-user | user-1234 | \ No newline at end of file diff --git a/docs/models/operations/createembeddingsresponsebody.mdx b/docs/models/operations/createembeddingsresponsebody.mdx index a6e0ecf32..321bb0f0f 100644 --- a/docs/models/operations/createembeddingsresponsebody.mdx +++ b/docs/models/operations/createembeddingsresponsebody.mdx @@ -9,8 +9,8 @@ Embeddings response containing embedding vectors | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `Data` | [][operations.CreateEmbeddingsData](../../models/operations/createembeddingsdata.mdx) | ✅ | List of embedding objects | [
\{
"embedding": [
0.0023064255,
-0.009327292,
0.015797347
],
"index": 0,
"object": "embedding"
}
] | -| `ID` | `*string` | ➖ | Unique identifier for the embeddings response | embd-1234567890 | -| `Model` | `string` | ✅ | The model used for embeddings | openai/text-embedding-3-small | -| `Object` | [operations.Object](../../models/operations/object.mdx) | ✅ | N/A | | -| `Usage` | [*operations.CreateEmbeddingsUsage](../../models/operations/createembeddingsusage.mdx) | ➖ | Token usage statistics | \{
"prompt_tokens": 8,
"total_tokens": 8
} | \ No newline at end of file +| `Data` | [][operations.CreateEmbeddingsData](../../models/operations/createembeddingsdata.mdx) | :heavy_check_mark: | List of embedding objects | [
\{
"embedding": [
0.0023064255,
-0.009327292,
0.015797347
],
"index": 0,
"object": "embedding"
}
] | +| `ID` | `*string` | :heavy_minus_sign: | Unique identifier for the embeddings response | embd-1234567890 | +| `Model` | `string` | :heavy_check_mark: | The model used for embeddings | openai/text-embedding-3-small | +| `Object` | [operations.Object](../../models/operations/object.mdx) | :heavy_check_mark: | N/A | | +| `Usage` | [*operations.CreateEmbeddingsUsage](../../models/operations/createembeddingsusage.mdx) | :heavy_minus_sign: | Token usage statistics | \{
"prompt_tokens": 8,
"total_tokens": 8
} | \ No newline at end of file diff --git a/docs/models/operations/createembeddingsusage.mdx b/docs/models/operations/createembeddingsusage.mdx index 798597f81..5cdc0579c 100644 --- a/docs/models/operations/createembeddingsusage.mdx +++ b/docs/models/operations/createembeddingsusage.mdx @@ -9,9 +9,9 @@ Token usage statistics | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Cost` | `*float64` | ➖ | Cost of the request in credits | 0.0001 | -| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | ➖ | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | -| `IsBYOK` | `*bool` | ➖ | Whether a request was made using a Bring Your Own Key configuration | | -| `PromptTokens` | `int64` | ✅ | Number of tokens in the input | 8 | -| `PromptTokensDetails` | [*operations.PromptTokensDetails](../../models/operations/prompttokensdetails.mdx) | ➖ | Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included. | | -| `TotalTokens` | `int64` | ✅ | Total number of tokens used | 8 | \ No newline at end of file +| `Cost` | `*float64` | :heavy_minus_sign: | Cost of the request in credits | 0.0001 | +| `CostDetails` | optionalnullable.OptionalNullable[[components.CostDetails](../../models/components/costdetails.mdx)] | :heavy_minus_sign: | Breakdown of upstream inference costs | \{
"upstream_inference_completions_cost": 0.0004,
"upstream_inference_cost": null,
"upstream_inference_prompt_cost": 0.0008
} | +| `IsBYOK` | `*bool` | :heavy_minus_sign: | Whether a request was made using a Bring Your Own Key configuration | | +| `PromptTokens` | `int64` | :heavy_check_mark: | Number of tokens in the input | 8 | +| `PromptTokensDetails` | [*operations.PromptTokensDetails](../../models/operations/prompttokensdetails.mdx) | :heavy_minus_sign: | Per-modality token breakdown. Only present when the input contains 2+ modalities (e.g. text + image) and the upstream provider returns modality-level usage data. Only non-zero modality counts are included. | | +| `TotalTokens` | `int64` | :heavy_check_mark: | Total number of tokens used | 8 | \ No newline at end of file diff --git a/docs/models/operations/createinternchatcompletionrequest.mdx b/docs/models/operations/createinternchatcompletionrequest.mdx deleted file mode 100644 index 4cee3b309..000000000 --- a/docs/models/operations/createinternchatcompletionrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "CreateInternChatCompletionRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | The intern to talk to. | a11e0000-0000-4000-8000-000000000005 | -| `InternChatCompletionRequest` | [components.InternChatCompletionRequest](../../models/components/internchatcompletionrequest.mdx) | ✅ | N/A | \{
"approval_mode": "manual",
"messages": [
\{
"content": "Summarize the open pull requests.",
"role": "user"
}
],
"stream": true
} | \ No newline at end of file diff --git a/docs/models/operations/createinternchatcompletionresponse.mdx b/docs/models/operations/createinternchatcompletionresponse.mdx deleted file mode 100644 index 42ed28f51..000000000 --- a/docs/models/operations/createinternchatcompletionresponse.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "CreateInternChatCompletionResponse" ---- - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | -| `Result` | [operations.CreateInternChatCompletionResponseResult](../../models/operations/createinternchatcompletionresponseresult.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/operations/createinternchatcompletionresponseresult.mdx b/docs/models/operations/createinternchatcompletionresponseresult.mdx deleted file mode 100644 index c2d0c925a..000000000 --- a/docs/models/operations/createinternchatcompletionresponseresult.mdx +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "CreateInternChatCompletionResponseResult" ---- - -## Supported Types - -### - -```go -createInternChatCompletionResponseResult := operations.CreateCreateInternChatCompletionResponseResultEventStream(*stream.EventStream[components.InternChatStreamingResponse]{/* values here */}) -``` - -### InternChatSteeredResponse - -```go -createInternChatCompletionResponseResult := operations.CreateCreateInternChatCompletionResponseResultInternChatSteeredResponse(components.InternChatSteeredResponse{/* values here */}) -``` - -## Union Discrimination - -Use the `Type` field to determine which variant is active, then access the corresponding field: - -```go -switch createInternChatCompletionResponseResult.Type { - case operations.CreateInternChatCompletionResponseResultTypeEventStream: - // createInternChatCompletionResponseResult.EventStream is populated - case operations.CreateInternChatCompletionResponseResultTypeInternChatSteeredResponse: - // createInternChatCompletionResponseResult.InternChatSteeredResponse is populated -} -``` diff --git a/docs/models/operations/createinternrequest.mdx b/docs/models/operations/createinternrequest.mdx deleted file mode 100644 index 43b7ae194..000000000 --- a/docs/models/operations/createinternrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "CreateInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `IdempotencyKey` | `*string` | ➖ | Key that makes retries resume the same create operation, from 1 through 255 characters. An empty or longer key is refused with 400. Without the header, the server derives a stable key from the request body. | create-research-assistant-2026-09-16 | -| `CreateInternRequest` | [components.CreateInternRequest](../../models/components/createinternrequest.mdx) | ✅ | N/A | \{
"name": "research-assistant",
"provision": true,
"workspace_id": "89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb"
} | \ No newline at end of file diff --git a/docs/models/operations/createkeysdata.mdx b/docs/models/operations/createkeysdata.mdx index 55c06bd83..4aaec927a 100644 --- a/docs/models/operations/createkeysdata.mdx +++ b/docs/models/operations/createkeysdata.mdx @@ -9,26 +9,26 @@ The created API key information | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOKUsage` | `float64` | ✅ | Total external BYOK usage (in USD) for the API key | 17.38 | -| `BYOKUsageDaily` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC day | 17.38 | -| `BYOKUsageMonthly` | `float64` | ✅ | External BYOK usage (in USD) for current UTC month | 17.38 | -| `BYOKUsageWeekly` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | -| `CreatorUserID` | `*string` | ✅ | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | -| `Disabled` | `bool` | ✅ | Whether the API key is disabled | false | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | -| `ExternalUser` | `*string` | ✅ | Partner's end-user identifier used for attribution. | null | -| `Hash` | `string` | ✅ | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `IncludeBYOKInLimit` | `bool` | ✅ | Whether to include external BYOK usage in the credit limit | false | -| `Label` | `string` | ✅ | Human-readable label for the API key | sk-or-v1-0e6...1c96 | -| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | -| `Limit` | `*float64` | ✅ | Spending limit for the API key in USD | 100 | -| `LimitRemaining` | `*float64` | ✅ | Remaining spending limit in USD | 74.5 | -| `LimitReset` | `*string` | ✅ | Type of limit reset for the API key | monthly | -| `Name` | `string` | ✅ | Name of the API key | My Production Key | -| `UpdatedAt` | `*string` | ✅ | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | -| `Usage` | `float64` | ✅ | Total OpenRouter credit usage (in USD) for the API key | 25.5 | -| `UsageDaily` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | -| `UsageMonthly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | -| `UsageWeekly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | -| `WorkspaceID` | `string` | ✅ | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `BYOKUsage` | `float64` | :heavy_check_mark: | Total external BYOK usage (in USD) for the API key | 17.38 | +| `BYOKUsageDaily` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC day | 17.38 | +| `BYOKUsageMonthly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 | +| `BYOKUsageWeekly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | +| `CreatorUserID` | `*string` | :heavy_check_mark: | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | +| `Disabled` | `bool` | :heavy_check_mark: | Whether the API key is disabled | false | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | +| `ExternalUser` | `*string` | :heavy_check_mark: | Partner's end-user identifier used for attribution. | null | +| `Hash` | `string` | :heavy_check_mark: | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `IncludeBYOKInLimit` | `bool` | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the API key | sk-or-v1-0e6...1c96 | +| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | +| `Limit` | `*float64` | :heavy_check_mark: | Spending limit for the API key in USD | 100 | +| `LimitRemaining` | `*float64` | :heavy_check_mark: | Remaining spending limit in USD | 74.5 | +| `LimitReset` | `*string` | :heavy_check_mark: | Type of limit reset for the API key | monthly | +| `Name` | `string` | :heavy_check_mark: | Name of the API key | My Production Key | +| `UpdatedAt` | `*string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | +| `Usage` | `float64` | :heavy_check_mark: | Total OpenRouter credit usage (in USD) for the API key | 25.5 | +| `UsageDaily` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | +| `UsageMonthly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | +| `UsageWeekly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | +| `WorkspaceID` | `string` | :heavy_check_mark: | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/createkeysrequest.mdx b/docs/models/operations/createkeysrequest.mdx index 1080055c6..e0341964a 100644 --- a/docs/models/operations/createkeysrequest.mdx +++ b/docs/models/operations/createkeysrequest.mdx @@ -6,11 +6,11 @@ title: "CreateKeysRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CreatorUserID` | optionalnullable.OptionalNullable[`string`] | ➖ | Optional user ID of the key creator. Only meaningful for organization-owned keys where a specific member is creating the key. | user_2dHFtVWx2n56w6HkM0000000000 | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | -| `External` | [*operations.External](../../models/operations/external.mdx) | ➖ | Optional partner-defined identity associated with the created API key. | | -| `IncludeBYOKInLimit` | `*bool` | ➖ | Whether to include BYOK usage in the limit | true | -| `Limit` | optionalnullable.OptionalNullable[`float64`] | ➖ | Optional spending limit for the API key in USD | 50 | -| `LimitReset` | optionalnullable.OptionalNullable[[operations.CreateKeysLimitReset](../../models/operations/createkeyslimitreset.mdx)] | ➖ | Type of limit reset for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday. | monthly | -| `Name` | `string` | ✅ | Name for the new API key | My New API Key | -| `WorkspaceID` | `*string` | ➖ | The workspace to create the API key in. Defaults to the default workspace if not provided. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `CreatorUserID` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | Optional user ID of the key creator. Only meaningful for organization-owned keys where a specific member is creating the key. | user_2dHFtVWx2n56w6HkM0000000000 | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | Optional ISO 8601 UTC expiration timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | +| `External` | [*operations.External](../../models/operations/external.mdx) | :heavy_minus_sign: | Optional partner-defined identity associated with the created API key. | | +| `IncludeBYOKInLimit` | `*bool` | :heavy_minus_sign: | Whether to include BYOK usage in the limit | true | +| `Limit` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Optional spending limit for the API key in USD | 50 | +| `LimitReset` | optionalnullable.OptionalNullable[[operations.CreateKeysLimitReset](../../models/operations/createkeyslimitreset.mdx)] | :heavy_minus_sign: | Type of limit reset for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday. | monthly | +| `Name` | `string` | :heavy_check_mark: | Name for the new API key | My New API Key | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | The workspace to create the API key in. Defaults to the default workspace if not provided. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/createkeysresponse.mdx b/docs/models/operations/createkeysresponse.mdx index 6d183d1db..e35f6c24d 100644 --- a/docs/models/operations/createkeysresponse.mdx +++ b/docs/models/operations/createkeysresponse.mdx @@ -9,5 +9,5 @@ API key created successfully | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [operations.CreateKeysData](../../models/operations/createkeysdata.mdx) | ✅ | The created API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | -| `Key` | `string` | ✅ | The actual API key string (only shown once) | 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 | \ No newline at end of file +| `Data` | [operations.CreateKeysData](../../models/operations/createkeysdata.mdx) | :heavy_check_mark: | The created API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | +| `Key` | `string` | :heavy_check_mark: | The actual API key string (only shown once) | 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 | \ No newline at end of file diff --git a/docs/models/operations/createpresetschatcompletionsrequest.mdx b/docs/models/operations/createpresetschatcompletionsrequest.mdx index 1c9d6fdc9..1d0cf03af 100644 --- a/docs/models/operations/createpresetschatcompletionsrequest.mdx +++ b/docs/models/operations/createpresetschatcompletionsrequest.mdx @@ -6,5 +6,5 @@ title: "CreatePresetsChatCompletionsRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `ChatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | ✅ | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `ChatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | \ No newline at end of file diff --git a/docs/models/operations/createpresetsmessagesrequest.mdx b/docs/models/operations/createpresetsmessagesrequest.mdx index fb0a25627..30d1a19bc 100644 --- a/docs/models/operations/createpresetsmessagesrequest.mdx +++ b/docs/models/operations/createpresetsmessagesrequest.mdx @@ -6,5 +6,5 @@ title: "CreatePresetsMessagesRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `MessagesRequest` | [components.MessagesRequest](../../models/components/messagesrequest.mdx) | ✅ | N/A | \{
"max_tokens": 1024,
"messages": [
\{
"content": "Hello, how are you?",
"role": "user"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7
} | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `MessagesRequest` | [components.MessagesRequest](../../models/components/messagesrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 1024,
"messages": [
\{
"content": "Hello, how are you?",
"role": "user"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7
} | \ No newline at end of file diff --git a/docs/models/operations/createpresetsresponsesrequest.mdx b/docs/models/operations/createpresetsresponsesrequest.mdx index 61dc0be3d..6bb668f9e 100644 --- a/docs/models/operations/createpresetsresponsesrequest.mdx +++ b/docs/models/operations/createpresetsresponsesrequest.mdx @@ -6,5 +6,5 @@ title: "CreatePresetsResponsesRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `ResponsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | ✅ | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `ResponsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | \ No newline at end of file diff --git a/docs/models/operations/createprivateendpointrequest.mdx b/docs/models/operations/createprivateendpointrequest.mdx index 5e5266d31..fa8fcbf24 100644 --- a/docs/models/operations/createprivateendpointrequest.mdx +++ b/docs/models/operations/createprivateendpointrequest.mdx @@ -6,5 +6,5 @@ title: "CreatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `IdempotencyKey` | `*string` | ➖ | Retry-safe create: a repeated create with the same key from the same organization returns the endpoint the first request created instead of creating another. The endpoint is returned as it is now. Reusing a key with a different request body (model, provider, base URL, upstream model ID, declared ZDR or region, or pricing) is rejected with 422 `idempotency_key_reused`. `activate` is not compared, and later edits to the endpoint do not affect the comparison. | wayfair-gpt-4o-eastus-2026-09 | -| `CreatePrivateEndpointRequest` | [components.CreatePrivateEndpointRequest](../../models/components/createprivateendpointrequest.mdx) | ✅ | N/A | | \ No newline at end of file +| `IdempotencyKey` | `*string` | :heavy_minus_sign: | Retry-safe create: a repeated create with the same key from the same organization returns the endpoint the first request created instead of creating another. The endpoint is returned as it is now. Reusing a key with a different request body (model, provider, base URL, upstream model ID, declared ZDR or region, or pricing) is rejected with 422 `idempotency_key_reused`. `activate` is not compared, and later edits to the endpoint do not affect the comparison. | wayfair-gpt-4o-eastus-2026-09 | +| `CreatePrivateEndpointRequest` | [components.CreatePrivateEndpointRequest](../../models/components/createprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/creatererankrequest.mdx b/docs/models/operations/creatererankrequest.mdx index 760b4c654..2172a222f 100644 --- a/docs/models/operations/creatererankrequest.mdx +++ b/docs/models/operations/creatererankrequest.mdx @@ -9,11 +9,11 @@ Rerank request input | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Documents` | [][operations.Document](../../models/operations/document.mdx) | ✅ | The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models. | [
"Paris is the capital of France.",
"Berlin is the capital of Germany."
] | -| `Model` | `string` | ✅ | The rerank model to use | cohere/rerank-v3.5 | -| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | ➖ | N/A | \{
"allow_fallbacks": true
} | -| `Query` | `string` | ✅ | The search query to rerank documents against | What is the capital of France? | -| `SessionID` | `*string` | ➖ | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | -| `TopN` | `*int64` | ➖ | Number of most relevant documents to return | 3 | -| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | ➖ | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | -| `User` | `*string` | ➖ | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file +| `Documents` | [][operations.Document](../../models/operations/document.mdx) | :heavy_check_mark: | The list of documents to rerank. Documents may be plain strings, or structured objects with `text` and/or `image` for multimodal models. | [
"Paris is the capital of France.",
"Berlin is the capital of Germany."
] | +| `Model` | `string` | :heavy_check_mark: | The rerank model to use | cohere/rerank-v3.5 | +| `Provider` | optionalnullable.OptionalNullable[[components.ProviderPreferences](../../models/components/providerpreferences.mdx)] | :heavy_minus_sign: | N/A | \{
"allow_fallbacks": true
} | +| `Query` | `string` | :heavy_check_mark: | The search query to rerank documents against | What is the capital of France? | +| `SessionID` | `*string` | :heavy_minus_sign: | A unique identifier for grouping related requests (e.g., a conversation or agent workflow). Used for observability grouping in Broadcast and private logging; never sent to the provider. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 256 characters. | session-1234 | +| `TopN` | `*int64` | :heavy_minus_sign: | Number of most relevant documents to return | 3 | +| `Trace` | [*components.TraceConfig](../../models/components/traceconfig.mdx) | :heavy_minus_sign: | Metadata for observability and tracing. Known keys (trace_id, trace_name, span_name, generation_name, parent_span_id) have special handling. Additional keys are passed through as custom metadata to configured broadcast destinations. | \{
"trace_id": "trace-abc123",
"trace_name": "my-app-trace"
} | +| `User` | `*string` | :heavy_minus_sign: | A unique identifier representing your end-user. Forwarded to Broadcast and private logging as the end-user id; never sent to the provider. | user-1234 | \ No newline at end of file diff --git a/docs/models/operations/creatererankresponsebody.mdx b/docs/models/operations/creatererankresponsebody.mdx index 812f9579d..d9d8a5dbd 100644 --- a/docs/models/operations/creatererankresponsebody.mdx +++ b/docs/models/operations/creatererankresponsebody.mdx @@ -9,8 +9,8 @@ Rerank response containing ranked results | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ID` | `*string` | ➖ | Unique identifier for the rerank response (ORID format) | gen-rerank-1234567890-abc | -| `Model` | `string` | ✅ | The model used for reranking | cohere/rerank-v3.5 | -| `Provider` | `*string` | ➖ | The provider that served the rerank request | Cohere | -| `Results` | [][operations.Result](../../models/operations/result.mdx) | ✅ | List of rerank results sorted by relevance | [
\{
"document": \{
"text": "Paris is the capital of France."
},
"index": 0,
"relevance_score": 0.98
}
] | -| `Usage` | [*operations.CreateRerankUsage](../../models/operations/creatererankusage.mdx) | ➖ | Usage statistics | \{
"search_units": 1,
"total_tokens": 150
} | \ No newline at end of file +| `ID` | `*string` | :heavy_minus_sign: | Unique identifier for the rerank response (ORID format) | gen-rerank-1234567890-abc | +| `Model` | `string` | :heavy_check_mark: | The model used for reranking | cohere/rerank-v3.5 | +| `Provider` | `*string` | :heavy_minus_sign: | The provider that served the rerank request | Cohere | +| `Results` | [][operations.Result](../../models/operations/result.mdx) | :heavy_check_mark: | List of rerank results sorted by relevance | [
\{
"document": \{
"text": "Paris is the capital of France."
},
"index": 0,
"relevance_score": 0.98
}
] | +| `Usage` | [*operations.CreateRerankUsage](../../models/operations/creatererankusage.mdx) | :heavy_minus_sign: | Usage statistics | \{
"search_units": 1,
"total_tokens": 150
} | \ No newline at end of file diff --git a/docs/models/operations/creatererankusage.mdx b/docs/models/operations/creatererankusage.mdx index 2f8127ec7..f9934ff28 100644 --- a/docs/models/operations/creatererankusage.mdx +++ b/docs/models/operations/creatererankusage.mdx @@ -9,6 +9,6 @@ Usage statistics | Field | Type | Required | Description | Example | | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | -| `Cost` | `*float64` | ➖ | Cost of the request in credits | 0.001 | -| `SearchUnits` | `*int64` | ➖ | Number of search units consumed (Cohere billing) | 1 | -| `TotalTokens` | `*int64` | ➖ | Total number of tokens used | 150 | \ No newline at end of file +| `Cost` | `*float64` | :heavy_minus_sign: | Cost of the request in credits | 0.001 | +| `SearchUnits` | `*int64` | :heavy_minus_sign: | Number of search units consumed (Cohere billing) | 1 | +| `TotalTokens` | `*int64` | :heavy_minus_sign: | Total number of tokens used | 150 | \ No newline at end of file diff --git a/docs/models/operations/createresponsesrequest.mdx b/docs/models/operations/createresponsesrequest.mdx index 9d7795b93..3af4a4167 100644 --- a/docs/models/operations/createresponsesrequest.mdx +++ b/docs/models/operations/createresponsesrequest.mdx @@ -6,5 +6,5 @@ title: "CreateResponsesRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `XOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | ➖ | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | -| `ResponsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | ✅ | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | \ No newline at end of file +| `XOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | :heavy_minus_sign: | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | +| `ResponsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | \ No newline at end of file diff --git a/docs/models/operations/createscimsyncjobresponse.mdx b/docs/models/operations/createscimsyncjobresponse.mdx index 9fd78a6a7..3105b213b 100644 --- a/docs/models/operations/createscimsyncjobresponse.mdx +++ b/docs/models/operations/createscimsyncjobresponse.mdx @@ -6,5 +6,5 @@ title: "CreateScimSyncJobResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | -| `Result` | [components.CreateScimSyncJobResponse](../../models/components/createscimsyncjobresponse.mdx) | ✅ | N/A | \ No newline at end of file +| `Headers` | map[string][]`string` | :heavy_check_mark: | N/A | +| `Result` | [components.CreateScimSyncJobResponse](../../models/components/createscimsyncjobresponse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/deletebatchrequest.mdx b/docs/models/operations/deletebatchrequest.mdx index 70d2b1a75..eec48db98 100644 --- a/docs/models/operations/deletebatchrequest.mdx +++ b/docs/models/operations/deletebatchrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteBatchRequest" | Field | Type | Required | Description | Example | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| `ID` | `string` | ✅ | The batch job id returned from submit. | batch_abc123 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The batch job id returned from submit. | batch_abc123 | \ No newline at end of file diff --git a/docs/models/operations/deletebyokkeyrequest.mdx b/docs/models/operations/deletebyokkeyrequest.mdx index c898aa437..d5e78b429 100644 --- a/docs/models/operations/deletebyokkeyrequest.mdx +++ b/docs/models/operations/deletebyokkeyrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteBYOKKeyRequest" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `ID` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | \ No newline at end of file diff --git a/docs/models/operations/deleteexternaluserrequest.mdx b/docs/models/operations/deleteexternaluserrequest.mdx index 350359f45..771be3c6e 100644 --- a/docs/models/operations/deleteexternaluserrequest.mdx +++ b/docs/models/operations/deleteexternaluserrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteExternalUserRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `User` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file +| `User` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file diff --git a/docs/models/operations/deletefilerequest.mdx b/docs/models/operations/deletefilerequest.mdx index 694972222..1167b1c09 100644 --- a/docs/models/operations/deletefilerequest.mdx +++ b/docs/models/operations/deletefilerequest.mdx @@ -6,6 +6,6 @@ title: "DeleteFileRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `FileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `WorkspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file diff --git a/docs/models/operations/deleteguardrailrequest.mdx b/docs/models/operations/deleteguardrailrequest.mdx index 8eb08ea42..a89dfc012 100644 --- a/docs/models/operations/deleteguardrailrequest.mdx +++ b/docs/models/operations/deleteguardrailrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteGuardrailRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | ------------------------------------------------ | -| `ID` | `string` | ✅ | The unique identifier of the guardrail to delete | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to delete | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/operations/deleteinternrequest.mdx b/docs/models/operations/deleteinternrequest.mdx deleted file mode 100644 index 969a92eb3..000000000 --- a/docs/models/operations/deleteinternrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "DeleteInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `DeleteInternRequest` | [components.DeleteInternRequest](../../models/components/deleteinternrequest.mdx) | ✅ | N/A | \{
"acknowledge_workspace_loss": true
} | \ No newline at end of file diff --git a/docs/models/operations/deleteinternvaultsecretrequest.mdx b/docs/models/operations/deleteinternvaultsecretrequest.mdx index 5246355f4..276ef5144 100644 --- a/docs/models/operations/deleteinternvaultsecretrequest.mdx +++ b/docs/models/operations/deleteinternvaultsecretrequest.mdx @@ -6,5 +6,5 @@ title: "DeleteInternVaultSecretRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `Name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `Name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | \ No newline at end of file diff --git a/docs/models/operations/deletekeysrequest.mdx b/docs/models/operations/deletekeysrequest.mdx index 34409f513..ed98c7c54 100644 --- a/docs/models/operations/deletekeysrequest.mdx +++ b/docs/models/operations/deletekeysrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteKeysRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Hash` | `string` | ✅ | The hash identifier of the API key to delete | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | \ No newline at end of file +| `Hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to delete | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | \ No newline at end of file diff --git a/docs/models/operations/deletekeysresponse.mdx b/docs/models/operations/deletekeysresponse.mdx index 8b98c2ee4..47d73b329 100644 --- a/docs/models/operations/deletekeysresponse.mdx +++ b/docs/models/operations/deletekeysresponse.mdx @@ -9,4 +9,4 @@ API key deleted successfully | Field | Type | Required | Description | Example | | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | -| `Deleted` | `bool` | ✅ | Confirmation that the API key was deleted | true | \ No newline at end of file +| `Deleted` | `bool` | :heavy_check_mark: | Confirmation that the API key was deleted | true | \ No newline at end of file diff --git a/docs/models/operations/deleteobservabilitydestinationrequest.mdx b/docs/models/operations/deleteobservabilitydestinationrequest.mdx index 261205288..e9b969080 100644 --- a/docs/models/operations/deleteobservabilitydestinationrequest.mdx +++ b/docs/models/operations/deleteobservabilitydestinationrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteObservabilityDestinationRequest" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `ID` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | \ No newline at end of file diff --git a/docs/models/operations/deleteprivateendpointrequest.mdx b/docs/models/operations/deleteprivateendpointrequest.mdx index 17f8cd3bd..dec053747 100644 --- a/docs/models/operations/deleteprivateendpointrequest.mdx +++ b/docs/models/operations/deleteprivateendpointrequest.mdx @@ -6,5 +6,5 @@ title: "DeletePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `DraftOnly` | [*operations.DraftOnly](../../models/operations/draftonly.mdx) | ➖ | When `true`, only delete the endpoint if it is still a draft (409 otherwise). | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `DraftOnly` | [*operations.DraftOnly](../../models/operations/draftonly.mdx) | :heavy_minus_sign: | When `true`, only delete the endpoint if it is still a draft (409 otherwise). | | \ No newline at end of file diff --git a/docs/models/operations/deletescimgroupmappingrequest.mdx b/docs/models/operations/deletescimgroupmappingrequest.mdx index a45b693af..13e0fc78a 100644 --- a/docs/models/operations/deletescimgroupmappingrequest.mdx +++ b/docs/models/operations/deletescimgroupmappingrequest.mdx @@ -6,5 +6,5 @@ title: "DeleteScimGroupMappingRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | | -| `KeepMembers` | [operations.KeepMembers](../../models/operations/keepmembers.mdx) | ✅ | Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required. | false | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | | +| `KeepMembers` | [operations.KeepMembers](../../models/operations/keepmembers.mdx) | :heavy_check_mark: | Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required. | false | \ No newline at end of file diff --git a/docs/models/operations/deletevaultsecretrequest.mdx b/docs/models/operations/deletevaultsecretrequest.mdx index 3f778906a..26eae4534 100644 --- a/docs/models/operations/deletevaultsecretrequest.mdx +++ b/docs/models/operations/deletevaultsecretrequest.mdx @@ -6,4 +6,4 @@ title: "DeleteVaultSecretRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `Name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | \ No newline at end of file diff --git a/docs/models/operations/deleteworkspacebudgetrequest.mdx b/docs/models/operations/deleteworkspacebudgetrequest.mdx index 37bc8bb00..50c31c754 100644 --- a/docs/models/operations/deleteworkspacebudgetrequest.mdx +++ b/docs/models/operations/deleteworkspacebudgetrequest.mdx @@ -6,5 +6,5 @@ title: "DeleteWorkspaceBudgetRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `WorkspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | \ No newline at end of file +| `WorkspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | \ No newline at end of file diff --git a/docs/models/operations/deleteworkspacerequest.mdx b/docs/models/operations/deleteworkspacerequest.mdx index 2f9df026c..76bee53e8 100644 --- a/docs/models/operations/deleteworkspacerequest.mdx +++ b/docs/models/operations/deleteworkspacerequest.mdx @@ -6,5 +6,5 @@ title: "DeleteWorkspaceRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `ConfirmDefaultWorkspaceDeletion` | `*bool` | ➖ | Required to delete the default workspace. Deleting it permanently disables the account’s unscoped inference API keys (management/provisioning keys are retained) and its budgets, guardrails, classifiers, and broadcast destinations. Ignored for non-default workspaces. | false | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `ConfirmDefaultWorkspaceDeletion` | `*bool` | :heavy_minus_sign: | Required to delete the default workspace. Deleting it permanently disables the account’s unscoped inference API keys (management/provisioning keys are retained) and its budgets, guardrails, classifiers, and broadcast destinations. Ignored for non-default workspaces. | false | \ No newline at end of file diff --git a/docs/models/operations/dimension.mdx b/docs/models/operations/dimension.mdx index f38e616ee..2f6ade1b0 100644 --- a/docs/models/operations/dimension.mdx +++ b/docs/models/operations/dimension.mdx @@ -6,5 +6,5 @@ title: "Dimension" | Field | Type | Required | Description | Example | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `DisplayLabel` | `string` | ✅ | Human-readable label | Model | -| `Name` | `string` | ✅ | Dimension identifier used in query requests | model | \ No newline at end of file +| `DisplayLabel` | `string` | :heavy_check_mark: | Human-readable label | Model | +| `Name` | `string` | :heavy_check_mark: | Dimension identifier used in query requests | model | \ No newline at end of file diff --git a/docs/models/operations/disableprivateendpointrequest.mdx b/docs/models/operations/disableprivateendpointrequest.mdx index e87d68061..50d492737 100644 --- a/docs/models/operations/disableprivateendpointrequest.mdx +++ b/docs/models/operations/disableprivateendpointrequest.mdx @@ -6,4 +6,4 @@ title: "DisablePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file diff --git a/docs/models/operations/documentrequest.mdx b/docs/models/operations/documentrequest.mdx index 2fe807485..dde687d58 100644 --- a/docs/models/operations/documentrequest.mdx +++ b/docs/models/operations/documentrequest.mdx @@ -9,5 +9,5 @@ A structured document with optional text and/or image content. At least one of ` | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Image` | `*string` | ➖ | An image associated with the document, as a remote URL (http/https) or a base64-encoded data URI (data:image/...). | https://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Phytogenic.png | -| `Text` | `*string` | ➖ | The document text | AI enables robots to perceive, plan, and act autonomously. | \ No newline at end of file +| `Image` | `*string` | :heavy_minus_sign: | An image associated with the document, as a remote URL (http/https) or a base64-encoded data URI (data:image/...). | https://upload.wikimedia.org/wikipedia/commons/thumb/8/8b/Phytogenic.png | +| `Text` | `*string` | :heavy_minus_sign: | The document text | AI enables robots to perceive, plan, and act autonomously. | \ No newline at end of file diff --git a/docs/models/operations/documentresponse.mdx b/docs/models/operations/documentresponse.mdx index f0f9dd4e0..8fa1f1795 100644 --- a/docs/models/operations/documentresponse.mdx +++ b/docs/models/operations/documentresponse.mdx @@ -9,5 +9,5 @@ The document object echoing the original input (text and/or image) | Field | Type | Required | Description | Example | | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `Image` | `*string` | ➖ | The image (URL or data URI) from the original document | https://example.com/image.png | -| `Text` | `*string` | ➖ | The document text | Paris is the capital of France. | \ No newline at end of file +| `Image` | `*string` | :heavy_minus_sign: | The image (URL or data URI) from the original document | https://example.com/image.png | +| `Text` | `*string` | :heavy_minus_sign: | The document text | Paris is the capital of France. | \ No newline at end of file diff --git a/docs/models/operations/downloadcontainerfilecontentrequest.mdx b/docs/models/operations/downloadcontainerfilecontentrequest.mdx index e56d30e0c..67d867374 100644 --- a/docs/models/operations/downloadcontainerfilecontentrequest.mdx +++ b/docs/models/operations/downloadcontainerfilecontentrequest.mdx @@ -6,5 +6,5 @@ title: "DownloadContainerFileContentRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `FileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `FileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file diff --git a/docs/models/operations/downloadfilecontentrequest.mdx b/docs/models/operations/downloadfilecontentrequest.mdx index ddd67d891..6f311f374 100644 --- a/docs/models/operations/downloadfilecontentrequest.mdx +++ b/docs/models/operations/downloadfilecontentrequest.mdx @@ -6,6 +6,6 @@ title: "DownloadFileContentRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `FileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `WorkspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file diff --git a/docs/models/operations/enableprivateendpointrequest.mdx b/docs/models/operations/enableprivateendpointrequest.mdx index 8f29c4906..6abebf4fd 100644 --- a/docs/models/operations/enableprivateendpointrequest.mdx +++ b/docs/models/operations/enableprivateendpointrequest.mdx @@ -6,4 +6,4 @@ title: "EnablePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file diff --git a/docs/models/operations/exchangeauthcodeforapikeyrequest.mdx b/docs/models/operations/exchangeauthcodeforapikeyrequest.mdx index 023ef1c82..728bab699 100644 --- a/docs/models/operations/exchangeauthcodeforapikeyrequest.mdx +++ b/docs/models/operations/exchangeauthcodeforapikeyrequest.mdx @@ -6,6 +6,6 @@ title: "ExchangeAuthCodeForAPIKeyRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Code` | `string` | ✅ | The authorization code received from the OAuth redirect | auth_code_abc123def456 | -| `CodeChallengeMethod` | optionalnullable.OptionalNullable[[operations.ExchangeAuthCodeForAPIKeyCodeChallengeMethod](../../models/operations/exchangeauthcodeforapikeycodechallengemethod.mdx)] | ➖ | The method used to generate the code challenge | S256 | -| `CodeVerifier` | `*string` | ➖ | The code verifier if code_challenge was used in the authorization request | dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk | \ No newline at end of file +| `Code` | `string` | :heavy_check_mark: | The authorization code received from the OAuth redirect | auth_code_abc123def456 | +| `CodeChallengeMethod` | optionalnullable.OptionalNullable[[operations.ExchangeAuthCodeForAPIKeyCodeChallengeMethod](../../models/operations/exchangeauthcodeforapikeycodechallengemethod.mdx)] | :heavy_minus_sign: | The method used to generate the code challenge | S256 | +| `CodeVerifier` | `*string` | :heavy_minus_sign: | The code verifier if code_challenge was used in the authorization request | dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk | \ No newline at end of file diff --git a/docs/models/operations/exchangeauthcodeforapikeyresponse.mdx b/docs/models/operations/exchangeauthcodeforapikeyresponse.mdx index 4dc064e10..09ca68538 100644 --- a/docs/models/operations/exchangeauthcodeforapikeyresponse.mdx +++ b/docs/models/operations/exchangeauthcodeforapikeyresponse.mdx @@ -9,5 +9,5 @@ Successfully exchanged code for an API key | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Key` | `string` | ✅ | The API key to use for OpenRouter requests | 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 | -| `UserID` | `*string` | ✅ | User ID associated with the API key | user_2yOPcMpKoQhcd4bVgSMlELRaIah | \ No newline at end of file +| `Key` | `string` | :heavy_check_mark: | The API key to use for OpenRouter requests | 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 | +| `UserID` | `*string` | :heavy_check_mark: | User ID associated with the API key | user_2yOPcMpKoQhcd4bVgSMlELRaIah | \ No newline at end of file diff --git a/docs/models/operations/external.mdx b/docs/models/operations/external.mdx index 253501b1e..8ac7dfaa3 100644 --- a/docs/models/operations/external.mdx +++ b/docs/models/operations/external.mdx @@ -9,5 +9,5 @@ Optional partner-defined identity associated with the created API key. | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `APIKey` | `*string` | ➖ | Optional partner-supplied API key with a minimum length of 32 characters and sufficient entropy. Stored as a SHA-256 hash and never returned. | | -| `User` | `string` | ✅ | Partner's end-user identifier for attribution. | partner-user-123 | \ No newline at end of file +| `APIKey` | `*string` | :heavy_minus_sign: | Optional partner-supplied API key with a minimum length of 32 characters and sufficient entropy. Stored as a SHA-256 hash and never returned. | | +| `User` | `string` | :heavy_check_mark: | Partner's end-user identifier for attribution. | partner-user-123 | \ No newline at end of file diff --git a/docs/models/operations/filter.mdx b/docs/models/operations/filter.mdx index 33f54c268..928761d40 100644 --- a/docs/models/operations/filter.mdx +++ b/docs/models/operations/filter.mdx @@ -6,7 +6,7 @@ title: "Filter" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Field` | `string` | ✅ | Dimension to filter on. Use the /meta endpoint for available dimensions. | model | -| `IncludeUnset` | `*bool` | ➖ | Include rows where the dimension has no value. Applies only to the `in` and `not_in` operators and dimensions that have an unset bucket. | | -| `Operator` | `string` | ✅ | Filter operator | eq | -| `Value` | [operations.Value1](../../models/operations/value1.mdx) | ✅ | Filter value (scalar or array depending on operator). Several dimensions are enriched in responses (returned as human-readable labels), but filters must use the underlying ID: `api_key_id` — numeric ID (from generation metadata) or key hash (64-char hex from GET /api/v1/keys, resolved server-side); `user` — Clerk user ID (e.g. "user_abc123"), not the display name; `workspace` — workspace UUID, not the workspace name (filtering or grouping by the account default workspace also covers activity recorded before workspace resolution existed, which is attributed to that default workspace); `app` — numeric app ID, not the app title; `model` — permaslug (e.g. "openai/gpt-4o"), not the display name. Other dimensions (provider, origin, country, etc.) are not enriched and accept the value as returned. | | \ No newline at end of file +| `Field` | `string` | :heavy_check_mark: | Dimension to filter on. Use the /meta endpoint for available dimensions. | model | +| `IncludeUnset` | `*bool` | :heavy_minus_sign: | Include rows where the dimension has no value. Applies only to the `in` and `not_in` operators and dimensions that have an unset bucket. | | +| `Operator` | `string` | :heavy_check_mark: | Filter operator | eq | +| `Value` | [operations.Value1](../../models/operations/value1.mdx) | :heavy_check_mark: | Filter value (scalar or array depending on operator). Several dimensions are enriched in responses (returned as human-readable labels), but filters must use the underlying ID: `api_key_id` — numeric ID (from generation metadata) or key hash (64-char hex from GET /api/v1/keys, resolved server-side); `user` — Clerk user ID (e.g. "user_abc123"), not the display name; `workspace` — workspace UUID, not the workspace name (filtering or grouping by the account default workspace also covers activity recorded before workspace resolution existed, which is attributed to that default workspace); `app` — numeric app ID, not the app title; `model` — permaslug (e.g. "openai/gpt-4o"), not the display name. Other dimensions (provider, origin, country, etc.) are not enriched and accept the value as returned. | | \ No newline at end of file diff --git a/docs/models/operations/getanalyticsmetadata.mdx b/docs/models/operations/getanalyticsmetadata.mdx index 4e444c9e6..d984d60ef 100644 --- a/docs/models/operations/getanalyticsmetadata.mdx +++ b/docs/models/operations/getanalyticsmetadata.mdx @@ -6,7 +6,7 @@ title: "GetAnalyticsMetaData" | Field | Type | Required | Description | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Dimensions` | [][operations.Dimension](../../models/operations/dimension.mdx) | ✅ | N/A | -| `Granularities` | [][operations.Granularity](../../models/operations/granularity.mdx) | ✅ | N/A | -| `Metrics` | [][operations.Metric](../../models/operations/metric.mdx) | ✅ | N/A | -| `Operators` | [][operations.Operator](../../models/operations/operator.mdx) | ✅ | N/A | \ No newline at end of file +| `Dimensions` | [][operations.Dimension](../../models/operations/dimension.mdx) | :heavy_check_mark: | N/A | +| `Granularities` | [][operations.Granularity](../../models/operations/granularity.mdx) | :heavy_check_mark: | N/A | +| `Metrics` | [][operations.Metric](../../models/operations/metric.mdx) | :heavy_check_mark: | N/A | +| `Operators` | [][operations.Operator](../../models/operations/operator.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getanalyticsmetaresponse.mdx b/docs/models/operations/getanalyticsmetaresponse.mdx index a54dcc403..3c59f3543 100644 --- a/docs/models/operations/getanalyticsmetaresponse.mdx +++ b/docs/models/operations/getanalyticsmetaresponse.mdx @@ -9,4 +9,4 @@ Returns analytics query metadata | Field | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `Data` | [operations.GetAnalyticsMetaData](../../models/operations/getanalyticsmetadata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [operations.GetAnalyticsMetaData](../../models/operations/getanalyticsmetadata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getapprankingsrequest.mdx b/docs/models/operations/getapprankingsrequest.mdx index 09f3ba851..062c2050c 100644 --- a/docs/models/operations/getapprankingsrequest.mdx +++ b/docs/models/operations/getapprankingsrequest.mdx @@ -6,10 +6,10 @@ title: "GetAppRankingsRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Category` | [*operations.GetAppRankingsCategory](../../models/operations/getapprankingscategory.mdx) | ➖ | Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group. | coding | -| `Subcategory` | [*operations.Subcategory](../../models/operations/subcategory.mdx) | ➖ | Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent. | cli-agent | -| `Sort` | [*operations.GetAppRankingsSort](../../models/operations/getapprankingssort.mdx) | ➖ | `popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results. | popular | -| `StartDate` | `*string` | ➖ | Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`. | 2026-04-12 | -| `EndDate` | `*string` | ➖ | End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400. | 2026-05-11 | -| `Limit` | `*int64` | ➖ | Maximum number of apps to return (1-100). Defaults to 50. | 50 | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`. | 0 | \ No newline at end of file +| `Category` | [*operations.GetAppRankingsCategory](../../models/operations/getapprankingscategory.mdx) | :heavy_minus_sign: | Marketplace category group to filter by (e.g. `coding`). Only apps tagged with a subcategory inside this group are returned. Mutually combinable with `subcategory` — when both are supplied the `subcategory` must belong to the `category` group. | coding | +| `Subcategory` | [*operations.Subcategory](../../models/operations/subcategory.mdx) | :heavy_minus_sign: | Marketplace subcategory to filter by (e.g. `cli-agent`). Takes precedence over `category` for the actual filter; when `category` is also supplied the pair must be consistent. | cli-agent | +| `Sort` | [*operations.GetAppRankingsSort](../../models/operations/getapprankingssort.mdx) | :heavy_minus_sign: | `popular` ranks apps by total token volume inside the date window. `trending` ranks apps by absolute excess token growth: window volume minus the average volume of the three equal-length periods immediately preceding the window. Apps with no excess growth are omitted from `trending` results. | popular | +| `StartDate` | `*string` | :heavy_minus_sign: | Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`. | 2026-04-12 | +| `EndDate` | `*string` | :heavy_minus_sign: | End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400. | 2026-05-11 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of apps to return (1-100). Defaults to 50. | 50 | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of ranked apps to skip before the first returned row (0-100). Defaults to 0. `rank` stays absolute, so the first row of `offset=50` is `rank: 51`. | 0 | \ No newline at end of file diff --git a/docs/models/operations/getapprankingsresponse.mdx b/docs/models/operations/getapprankingsresponse.mdx index bf0c5da30..e1bd436e3 100644 --- a/docs/models/operations/getapprankingsresponse.mdx +++ b/docs/models/operations/getapprankingsresponse.mdx @@ -6,4 +6,4 @@ title: "GetAppRankingsResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.AppRankingsResponse](../../models/components/apprankingsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"app_id": 12345,
"app_name": "Cline",
"rank": 1,
"total_requests": 4321,
"total_tokens": "12345678"
},
\{
"app_id": 67890,
"app_name": "Roo Code",
"rank": 2,
"total_requests": 2109,
"total_tokens": "9876543"
}
],
"meta": \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
}
} | \ No newline at end of file +| `Result` | [components.AppRankingsResponse](../../models/components/apprankingsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"app_id": 12345,
"app_name": "Cline",
"rank": 1,
"total_requests": 4321,
"total_tokens": "12345678"
},
\{
"app_id": 67890,
"app_name": "Roo Code",
"rank": 2,
"total_requests": 2109,
"total_tokens": "9876543"
}
],
"meta": \{
"as_of": "2026-05-12T02:00:00.000Z",
"end_date": "2026-05-11",
"start_date": "2026-04-12",
"version": "v1"
}
} | \ No newline at end of file diff --git a/docs/models/operations/getbatchesrequest.mdx b/docs/models/operations/getbatchesrequest.mdx index 92c68a92c..b3f3e9b10 100644 --- a/docs/models/operations/getbatchesrequest.mdx +++ b/docs/models/operations/getbatchesrequest.mdx @@ -6,4 +6,4 @@ title: "GetBatchesRequest" | Field | Type | Required | Description | Example | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| `ID` | `string` | ✅ | The batch job id returned from submit. | batch_abc123 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The batch job id returned from submit. | batch_abc123 | \ No newline at end of file diff --git a/docs/models/operations/getbenchmarksrequest.mdx b/docs/models/operations/getbenchmarksrequest.mdx index b8ea3b585..256e326ac 100644 --- a/docs/models/operations/getbenchmarksrequest.mdx +++ b/docs/models/operations/getbenchmarksrequest.mdx @@ -6,12 +6,12 @@ title: "GetBenchmarksRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Source` | [*operations.Source](../../models/operations/source.mdx) | ➖ | Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources. | artificial-analysis | -| `TaskType` | [*operations.TaskType](../../models/operations/tasktype.mdx) | ➖ | Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only. | coding | -| `BenchmarkType` | [*operations.BenchmarkType](../../models/operations/benchmarktype.mdx) | ➖ | Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources' items as they are. | search_widesearch | -| `IncludeRunConfig` | `*bool` | ➖ | Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract. | true | -| `SearchEngine` | `*string` | ➖ | OpenRouter search benchmarks only: filter by the search engine used. | exa | -| `SearchSurface` | [*operations.SearchSurface](../../models/operations/searchsurface.mdx) | ➖ | OpenRouter search benchmarks only: filter by the request surface the lane ran on. | server-tool | -| `Arena` | [*operations.Arena](../../models/operations/arena.mdx) | ➖ | Design Arena only: arena to query. Defaults to `models` when source is `design-arena`. | models | -| `Category` | `*string` | ➖ | Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories. | codecategories | -| `MaxResults` | `*int64` | ➖ | Maximum number of items to return. When omitted, all matching results are returned. | 50 | \ No newline at end of file +| `Source` | [*operations.Source](../../models/operations/source.mdx) | :heavy_minus_sign: | Benchmark source to query. Determines the shape of the returned items. When omitted, returns results from all sources. | artificial-analysis | +| `TaskType` | [*operations.TaskType](../../models/operations/tasktype.mdx) | :heavy_minus_sign: | Filter results by task type. For Artificial Analysis, maps to the corresponding index. For Design Arena, maps to the matching category. `search` returns OpenRouter search benchmark results only. | coding | +| `BenchmarkType` | [*operations.BenchmarkType](../../models/operations/benchmarktype.mdx) | :heavy_minus_sign: | Return results for one exact OpenRouter benchmark. A `search_*` value narrows the response to search results only; a classic value narrows the OpenRouter items and leaves other sources' items as they are. | search_widesearch | +| `IncludeRunConfig` | `*bool` | :heavy_minus_sign: | Search benchmarks only: include the published lane configuration whitelist in each search item. Defaults to false. The whitelist is limited to agent turn count, reasoning effort, and temperature so future harness configuration changes do not change the public contract. | true | +| `SearchEngine` | `*string` | :heavy_minus_sign: | OpenRouter search benchmarks only: filter by the search engine used. | exa | +| `SearchSurface` | [*operations.SearchSurface](../../models/operations/searchsurface.mdx) | :heavy_minus_sign: | OpenRouter search benchmarks only: filter by the request surface the lane ran on. | server-tool | +| `Arena` | [*operations.Arena](../../models/operations/arena.mdx) | :heavy_minus_sign: | Design Arena only: arena to query. Defaults to `models` when source is `design-arena`. | models | +| `Category` | `*string` | :heavy_minus_sign: | Design Arena only: category within the arena (e.g. `codecategories`, `uicomponent`, `gamedev`, `3d`, `dataviz`, `image`, `video`, `svg`). When omitted, returns all categories. | codecategories | +| `MaxResults` | `*int64` | :heavy_minus_sign: | Maximum number of items to return. When omitted, all matching results are returned. | 50 | \ No newline at end of file diff --git a/docs/models/operations/getbyokkeyrequest.mdx b/docs/models/operations/getbyokkeyrequest.mdx index 8f82cd9d7..a89b223c2 100644 --- a/docs/models/operations/getbyokkeyrequest.mdx +++ b/docs/models/operations/getbyokkeyrequest.mdx @@ -6,4 +6,4 @@ title: "GetBYOKKeyRequest" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `ID` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | \ No newline at end of file diff --git a/docs/models/operations/getcontainerfilerequest.mdx b/docs/models/operations/getcontainerfilerequest.mdx index 402ea6e01..4799b6493 100644 --- a/docs/models/operations/getcontainerfilerequest.mdx +++ b/docs/models/operations/getcontainerfilerequest.mdx @@ -6,5 +6,5 @@ title: "GetContainerFileRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `FileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `FileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file diff --git a/docs/models/operations/getcreditsdata.mdx b/docs/models/operations/getcreditsdata.mdx index 79c61fe3b..25280a314 100644 --- a/docs/models/operations/getcreditsdata.mdx +++ b/docs/models/operations/getcreditsdata.mdx @@ -6,5 +6,5 @@ title: "GetCreditsData" | Field | Type | Required | Description | Example | | ----------------------- | ----------------------- | ----------------------- | ----------------------- | ----------------------- | -| `TotalCredits` | `float64` | ✅ | Total credits purchased | 100.5 | -| `TotalUsage` | `float64` | ✅ | Total credits used | 25.75 | \ No newline at end of file +| `TotalCredits` | `float64` | :heavy_check_mark: | Total credits purchased | 100.5 | +| `TotalUsage` | `float64` | :heavy_check_mark: | Total credits used | 25.75 | \ No newline at end of file diff --git a/docs/models/operations/getcreditsresponse.mdx b/docs/models/operations/getcreditsresponse.mdx index 89a735654..11dc4d56f 100644 --- a/docs/models/operations/getcreditsresponse.mdx +++ b/docs/models/operations/getcreditsresponse.mdx @@ -9,4 +9,4 @@ Total credits purchased and used | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `Data` | [operations.GetCreditsData](../../models/operations/getcreditsdata.mdx) | ✅ | N/A | \{
"total_credits": 100.5,
"total_usage": 25.75
} | \ No newline at end of file +| `Data` | [operations.GetCreditsData](../../models/operations/getcreditsdata.mdx) | :heavy_check_mark: | N/A | \{
"total_credits": 100.5,
"total_usage": 25.75
} | \ No newline at end of file diff --git a/docs/models/operations/getcurrentkeydata.mdx b/docs/models/operations/getcurrentkeydata.mdx index b2a173c70..694eb3a54 100644 --- a/docs/models/operations/getcurrentkeydata.mdx +++ b/docs/models/operations/getcurrentkeydata.mdx @@ -9,28 +9,28 @@ Current API key information | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `AllowedDataRegions` | [][operations.AllowedDataRegion](../../models/operations/alloweddataregion.mdx) | ✅ | Data regions permitted for this API key by the guardrail policies on the key and the account regional-routing entitlement. Empty when no region is permitted. Reflects region policy only: other key restrictions, such as management keys being blocked from inference, still apply. | [
"global",
"europe",
"us"
] | -| `Budgets` | [][components.KeyBudget](../../models/components/keybudget.mdx) | ✅ | Every budget layer enforcement checks for requests made with this key, in the order it checks them: guardrail budgets, workspace budgets, then the key's own limit. Empty when nothing is budgeted. `effective_budget` is the budget that blocks requests first: the entry enforcement rejects on when one is already spent, otherwise the entry with the least `remaining_usd`; null when nothing is budgeted. `limit` and `limit_remaining` above describe only the key's own limit. | [
\{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
}
] | -| `BYOKUsage` | `float64` | ✅ | Total external BYOK usage (in USD) for the API key | 17.38 | -| `BYOKUsageDaily` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC day | 17.38 | -| `BYOKUsageMonthly` | `float64` | ✅ | External BYOK usage (in USD) for current UTC month | 17.38 | -| `BYOKUsageWeekly` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | -| `CreatorUserID` | `*string` | ✅ | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | -| `EffectiveBudget` | [*components.KeyBudget](../../models/components/keybudget.mdx) | ✅ | N/A | \{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
} | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | -| `FreeModelDailyRequests` | [components.FreeModelDailyRequests](../../models/components/freemodeldailyrequests.mdx) | ✅ | Free-model (`:free` variant) daily request quota for the account that owns the key. Reports the same counter and tier limit that free-model enforcement reads for accounts subject to the free-model limits; the counter resets at UTC midnight. Accounts and endpoints exempt from free-model limits, and BYOK requests, are not gated by it, so `remaining` is the tier policy rather than an enforced ceiling for them. | \{
"limit": 50,
"remaining": 38,
"used": 12
} | -| `IncludeBYOKInLimit` | `bool` | ✅ | Whether to include external BYOK usage in the credit limit | false | -| `IsFreeTier` | `bool` | ✅ | Whether this is a free tier API key | false | -| `IsManagementKey` | `bool` | ✅ | Whether this is a management key | false | -| ~~`IsProvisioningKey`~~ | `bool` | ✅ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Whether this is a management key | false | -| `Label` | `string` | ✅ | Human-readable label for the API key | sk-or-v1-0e6...1c96 | -| `Limit` | `*float64` | ✅ | Spending limit for the API key in USD | 100 | -| `LimitRemaining` | `*float64` | ✅ | Remaining spending limit in USD | 74.5 | -| `LimitReset` | `*string` | ✅ | Type of limit reset for the API key | monthly | -| `OrganizationID` | `*string` | ✅ | The ID of the organization that owns this API key, or null when an individual account owns it. | null | -| ~~`RateLimit`~~ | [operations.RateLimit](../../models/operations/ratelimit.mdx) | ✅ | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Legacy rate limit information about a key. Will always return -1. | \{
"interval": "1h",
"note": "This field is deprecated and safe to ignore.",
"requests": 1000
} | -| `Usage` | `float64` | ✅ | Total OpenRouter credit usage (in USD) for the API key | 25.5 | -| `UsageDaily` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | -| `UsageMonthly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | -| `UsageWeekly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | -| `WorkspaceID` | `*string` | ✅ | The ID of the workspace this API key spends in, or null when no active workspace resolved for it, for example because the key's workspace was deleted. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `AllowedDataRegions` | [][operations.AllowedDataRegion](../../models/operations/alloweddataregion.mdx) | :heavy_check_mark: | Data regions permitted for this API key by the guardrail policies on the key and the account regional-routing entitlement. Empty when no region is permitted. Reflects region policy only: other key restrictions, such as management keys being blocked from inference, still apply. | [
"global",
"europe",
"us"
] | +| `Budgets` | [][components.KeyBudget](../../models/components/keybudget.mdx) | :heavy_check_mark: | Every budget layer enforcement checks for requests made with this key, in the order it checks them: guardrail budgets, workspace budgets, then the key's own limit. Empty when nothing is budgeted. `effective_budget` is the budget that blocks requests first: the entry enforcement rejects on when one is already spent, otherwise the entry with the least `remaining_usd`; null when nothing is budgeted. `limit` and `limit_remaining` above describe only the key's own limit. | [
\{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
}
] | +| `BYOKUsage` | `float64` | :heavy_check_mark: | Total external BYOK usage (in USD) for the API key | 17.38 | +| `BYOKUsageDaily` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC day | 17.38 | +| `BYOKUsageMonthly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 | +| `BYOKUsageWeekly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | +| `CreatorUserID` | `*string` | :heavy_check_mark: | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | +| `EffectiveBudget` | [*components.KeyBudget](../../models/components/keybudget.mdx) | :heavy_check_mark: | N/A | \{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
} | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | +| `FreeModelDailyRequests` | [components.FreeModelDailyRequests](../../models/components/freemodeldailyrequests.mdx) | :heavy_check_mark: | Free-model (`:free` variant) daily request quota for the account that owns the key. Reports the same counter and tier limit that free-model enforcement reads for accounts subject to the free-model limits; the counter resets at UTC midnight. Accounts and endpoints exempt from free-model limits, and BYOK requests, are not gated by it, so `remaining` is the tier policy rather than an enforced ceiling for them. | \{
"limit": 50,
"remaining": 38,
"used": 12
} | +| `IncludeBYOKInLimit` | `bool` | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false | +| `IsFreeTier` | `bool` | :heavy_check_mark: | Whether this is a free tier API key | false | +| `IsManagementKey` | `bool` | :heavy_check_mark: | Whether this is a management key | false | +| ~~`IsProvisioningKey`~~ | `bool` | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Whether this is a management key | false | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the API key | sk-or-v1-0e6...1c96 | +| `Limit` | `*float64` | :heavy_check_mark: | Spending limit for the API key in USD | 100 | +| `LimitRemaining` | `*float64` | :heavy_check_mark: | Remaining spending limit in USD | 74.5 | +| `LimitReset` | `*string` | :heavy_check_mark: | Type of limit reset for the API key | monthly | +| `OrganizationID` | `*string` | :heavy_check_mark: | The ID of the organization that owns this API key, or null when an individual account owns it. | null | +| ~~`RateLimit`~~ | [operations.RateLimit](../../models/operations/ratelimit.mdx) | :heavy_check_mark: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Legacy rate limit information about a key. Will always return -1. | \{
"interval": "1h",
"note": "This field is deprecated and safe to ignore.",
"requests": 1000
} | +| `Usage` | `float64` | :heavy_check_mark: | Total OpenRouter credit usage (in USD) for the API key | 25.5 | +| `UsageDaily` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | +| `UsageMonthly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | +| `UsageWeekly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | +| `WorkspaceID` | `*string` | :heavy_check_mark: | The ID of the workspace this API key spends in, or null when no active workspace resolved for it, for example because the key's workspace was deleted. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/getcurrentkeyresponse.mdx b/docs/models/operations/getcurrentkeyresponse.mdx index df0436424..3cf236e7d 100644 --- a/docs/models/operations/getcurrentkeyresponse.mdx +++ b/docs/models/operations/getcurrentkeyresponse.mdx @@ -9,4 +9,4 @@ API key details | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [operations.GetCurrentKeyData](../../models/operations/getcurrentkeydata.mdx) | ✅ | Current API key information | \{
"allowed_data_regions": [
"global",
"europe",
"us"
],
"budgets": [
\{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
}
],
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"effective_budget": \{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
},
"expires_at": "2027-12-31T23:59:59Z",
"free_model_daily_requests": \{
"limit": 50,
"remaining": 38,
"used": 12
},
"include_byok_in_limit": false,
"is_free_tier": false,
"is_management_key": false,
"is_provisioning_key": false,
"label": "sk-or-v1-au7...890",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"rate_limit": \{
"interval": "1h",
"note": "This field is deprecated and safe to ignore.",
"requests": 1000
},
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5
} | \ No newline at end of file +| `Data` | [operations.GetCurrentKeyData](../../models/operations/getcurrentkeydata.mdx) | :heavy_check_mark: | Current API key information | \{
"allowed_data_regions": [
"global",
"europe",
"us"
],
"budgets": [
\{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
}
],
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"effective_budget": \{
"budget_id": null,
"guardrail_id": "0df9e665-d932-5740-b2c7-b52af166bc11",
"include_byok": false,
"limit_usd": 50,
"remaining_usd": 17.5,
"reset_interval": "weekly",
"resets_at": "2026-10-12T00:00:00.000Z",
"scope": "member",
"spend_usd": 32.5
},
"expires_at": "2027-12-31T23:59:59Z",
"free_model_daily_requests": \{
"limit": 50,
"remaining": 38,
"used": 12
},
"include_byok_in_limit": false,
"is_free_tier": false,
"is_management_key": false,
"is_provisioning_key": false,
"label": "sk-or-v1-au7...890",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"rate_limit": \{
"interval": "1h",
"note": "This field is deprecated and safe to ignore.",
"requests": 1000
},
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5
} | \ No newline at end of file diff --git a/docs/models/operations/getexternaluserrequest.mdx b/docs/models/operations/getexternaluserrequest.mdx index eb5a5831b..9226dd447 100644 --- a/docs/models/operations/getexternaluserrequest.mdx +++ b/docs/models/operations/getexternaluserrequest.mdx @@ -6,4 +6,4 @@ title: "GetExternalUserRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `User` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file +| `User` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | \ No newline at end of file diff --git a/docs/models/operations/getfilemetadatarequest.mdx b/docs/models/operations/getfilemetadatarequest.mdx index d78f1a667..f75dd8493 100644 --- a/docs/models/operations/getfilemetadatarequest.mdx +++ b/docs/models/operations/getfilemetadatarequest.mdx @@ -6,6 +6,6 @@ title: "GetFileMetadataRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `FileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `WorkspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file +| `FileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | \ No newline at end of file diff --git a/docs/models/operations/getgenerationrequest.mdx b/docs/models/operations/getgenerationrequest.mdx index eaed892c9..fffa9af2d 100644 --- a/docs/models/operations/getgenerationrequest.mdx +++ b/docs/models/operations/getgenerationrequest.mdx @@ -6,4 +6,4 @@ title: "GetGenerationRequest" | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `ID` | `string` | ✅ | The generation ID | gen-1234567890 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The generation ID | gen-1234567890 | \ No newline at end of file diff --git a/docs/models/operations/getguardrailrequest.mdx b/docs/models/operations/getguardrailrequest.mdx index 684137c8b..f66e886eb 100644 --- a/docs/models/operations/getguardrailrequest.mdx +++ b/docs/models/operations/getguardrailrequest.mdx @@ -6,4 +6,4 @@ title: "GetGuardrailRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail to retrieve | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to retrieve | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/operations/getinternconnectionsrequest.mdx b/docs/models/operations/getinternconnectionsrequest.mdx deleted file mode 100644 index 18e54a514..000000000 --- a/docs/models/operations/getinternconnectionsrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "GetInternConnectionsRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/getinterndaemonaccessrequest.mdx b/docs/models/operations/getinterndaemonaccessrequest.mdx deleted file mode 100644 index a05847c1d..000000000 --- a/docs/models/operations/getinterndaemonaccessrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "GetInternDaemonAccessRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/getinterndaemonrequest.mdx b/docs/models/operations/getinterndaemonrequest.mdx deleted file mode 100644 index b0bed2a70..000000000 --- a/docs/models/operations/getinterndaemonrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "GetInternDaemonRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/getinterniconrequest.mdx b/docs/models/operations/getinterniconrequest.mdx deleted file mode 100644 index 4661efd73..000000000 --- a/docs/models/operations/getinterniconrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "GetInternIconRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `V` | `*string` | ➖ | The `icon_sha256` the caller expects. | | \ No newline at end of file diff --git a/docs/models/operations/getinternrequest.mdx b/docs/models/operations/getinternrequest.mdx deleted file mode 100644 index 9a9cc7e87..000000000 --- a/docs/models/operations/getinternrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "GetInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/getkeydata.mdx b/docs/models/operations/getkeydata.mdx index 006a53a4b..bf565b953 100644 --- a/docs/models/operations/getkeydata.mdx +++ b/docs/models/operations/getkeydata.mdx @@ -9,26 +9,26 @@ The API key information | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOKUsage` | `float64` | ✅ | Total external BYOK usage (in USD) for the API key | 17.38 | -| `BYOKUsageDaily` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC day | 17.38 | -| `BYOKUsageMonthly` | `float64` | ✅ | External BYOK usage (in USD) for current UTC month | 17.38 | -| `BYOKUsageWeekly` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | -| `CreatorUserID` | `*string` | ✅ | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | -| `Disabled` | `bool` | ✅ | Whether the API key is disabled | false | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | -| `ExternalUser` | `*string` | ✅ | Partner's end-user identifier used for attribution. | null | -| `Hash` | `string` | ✅ | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `IncludeBYOKInLimit` | `bool` | ✅ | Whether to include external BYOK usage in the credit limit | false | -| `Label` | `string` | ✅ | Human-readable label for the API key | sk-or-v1-0e6...1c96 | -| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | -| `Limit` | `*float64` | ✅ | Spending limit for the API key in USD | 100 | -| `LimitRemaining` | `*float64` | ✅ | Remaining spending limit in USD | 74.5 | -| `LimitReset` | `*string` | ✅ | Type of limit reset for the API key | monthly | -| `Name` | `string` | ✅ | Name of the API key | My Production Key | -| `UpdatedAt` | `*string` | ✅ | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | -| `Usage` | `float64` | ✅ | Total OpenRouter credit usage (in USD) for the API key | 25.5 | -| `UsageDaily` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | -| `UsageMonthly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | -| `UsageWeekly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | -| `WorkspaceID` | `string` | ✅ | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `BYOKUsage` | `float64` | :heavy_check_mark: | Total external BYOK usage (in USD) for the API key | 17.38 | +| `BYOKUsageDaily` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC day | 17.38 | +| `BYOKUsageMonthly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 | +| `BYOKUsageWeekly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | +| `CreatorUserID` | `*string` | :heavy_check_mark: | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | +| `Disabled` | `bool` | :heavy_check_mark: | Whether the API key is disabled | false | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | +| `ExternalUser` | `*string` | :heavy_check_mark: | Partner's end-user identifier used for attribution. | null | +| `Hash` | `string` | :heavy_check_mark: | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `IncludeBYOKInLimit` | `bool` | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the API key | sk-or-v1-0e6...1c96 | +| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | +| `Limit` | `*float64` | :heavy_check_mark: | Spending limit for the API key in USD | 100 | +| `LimitRemaining` | `*float64` | :heavy_check_mark: | Remaining spending limit in USD | 74.5 | +| `LimitReset` | `*string` | :heavy_check_mark: | Type of limit reset for the API key | monthly | +| `Name` | `string` | :heavy_check_mark: | Name of the API key | My Production Key | +| `UpdatedAt` | `*string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | +| `Usage` | `float64` | :heavy_check_mark: | Total OpenRouter credit usage (in USD) for the API key | 25.5 | +| `UsageDaily` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | +| `UsageMonthly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | +| `UsageWeekly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | +| `WorkspaceID` | `string` | :heavy_check_mark: | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/getkeyrequest.mdx b/docs/models/operations/getkeyrequest.mdx index 0117d7c4c..365e1df5d 100644 --- a/docs/models/operations/getkeyrequest.mdx +++ b/docs/models/operations/getkeyrequest.mdx @@ -6,4 +6,4 @@ title: "GetKeyRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `Hash` | `string` | ✅ | The hash identifier of the API key to retrieve | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | \ No newline at end of file +| `Hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to retrieve | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | \ No newline at end of file diff --git a/docs/models/operations/getkeyresponse.mdx b/docs/models/operations/getkeyresponse.mdx index 31ef24b76..127ba142f 100644 --- a/docs/models/operations/getkeyresponse.mdx +++ b/docs/models/operations/getkeyresponse.mdx @@ -9,4 +9,4 @@ API key details | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [operations.GetKeyData](../../models/operations/getkeydata.mdx) | ✅ | The API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file +| `Data` | [operations.GetKeyData](../../models/operations/getkeydata.mdx) | :heavy_check_mark: | The API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file diff --git a/docs/models/operations/getmodelrequest.mdx b/docs/models/operations/getmodelrequest.mdx index f9bba6641..576eb6b1e 100644 --- a/docs/models/operations/getmodelrequest.mdx +++ b/docs/models/operations/getmodelrequest.mdx @@ -6,5 +6,5 @@ title: "GetModelRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Author` | `string` | ✅ | The author/organization of the model | openai | -| `Slug` | `string` | ✅ | The model slug, optionally including a variant suffix (e.g. gpt-4 or gpt-4:free) | gpt-4 | \ No newline at end of file +| `Author` | `string` | :heavy_check_mark: | The author/organization of the model | openai | +| `Slug` | `string` | :heavy_check_mark: | The model slug, optionally including a variant suffix (e.g. gpt-4 or gpt-4:free) | gpt-4 | \ No newline at end of file diff --git a/docs/models/operations/getmodelsrequest.mdx b/docs/models/operations/getmodelsrequest.mdx index ab38567d1..14caaa839 100644 --- a/docs/models/operations/getmodelsrequest.mdx +++ b/docs/models/operations/getmodelsrequest.mdx @@ -6,32 +6,32 @@ title: "GetModelsRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `Category` | [*operations.GetModelsCategory](../../models/operations/getmodelscategory.mdx) | ➖ | Filter models by use case category | programming | -| `SupportedParameters` | `*string` | ➖ | Filter models by supported parameter (comma-separated) | temperature | -| `OutputModalities` | `*string` | ➖ | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | -| `Sort` | [*operations.GetModelsSort](../../models/operations/getmodelssort.mdx) | ➖ | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | -| `Q` | `*string` | ➖ | Free-text search by model name or slug. | gpt-4 | -| `InputModalities` | `*string` | ➖ | Filter models by input modality. Comma-separated list of: text, image, audio, file. | text,image | -| `Context` | `*int64` | ➖ | Minimum context length (tokens). Models with smaller context are excluded. | 128000 | -| `MinPrice` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum prompt price in $/M tokens. | 0 | -| `MaxPrice` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum prompt price in $/M tokens. | 10 | -| `Arch` | `*string` | ➖ | Filter models by architecture/model family (e.g. GPT, Claude, Gemini, Llama). | GPT | -| `ModelAuthors` | `*string` | ➖ | Filter models by the organization that created the model. Comma-separated list of author slugs. | openai,anthropic | -| `Providers` | `*string` | ➖ | Filter models by hosting provider. Comma-separated list of provider names. | OpenAI,Anthropic | -| `Distillable` | [*operations.Distillable](../../models/operations/distillable.mdx) | ➖ | Filter by distillation capability. "true" returns only distillable models, "false" excludes them. | true | -| `Zdr` | [*operations.Zdr](../../models/operations/zdr.mdx) | ➖ | When set to "true", return only models with zero data retention endpoints. | true | -| `Region` | [*operations.Region](../../models/operations/region.mdx) | ➖ | Filter to models with endpoints in the given data region ("eu" or "us"). | eu | -| `MinOutputPrice` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum completion (output) price in $/M tokens. | 0 | -| `MaxOutputPrice` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum completion (output) price in $/M tokens. | 10 | -| `MinAgeDays` | optionalnullable.OptionalNullable[`int64`] | ➖ | Minimum model age in days since its creation date. | 0 | -| `MaxAgeDays` | optionalnullable.OptionalNullable[`int64`] | ➖ | Maximum model age in days since its creation date. | 90 | -| `MinIntelligenceIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum Artificial Analysis intelligence index. | 50 | -| `MaxIntelligenceIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum Artificial Analysis intelligence index. | 100 | -| `MinCodingIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum Artificial Analysis coding index. | 50 | -| `MaxCodingIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum Artificial Analysis coding index. | 100 | -| `MinAgenticIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum Artificial Analysis agentic index. | 50 | -| `MaxAgenticIndex` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum Artificial Analysis agentic index. | 100 | -| `MinToolSuccessRate` | optionalnullable.OptionalNullable[`float64`] | ➖ | Minimum tool-calling success rate, as a fraction in [0, 1] (e.g. 0.9 = 90% of requests finishing with a tool_calls finish reason). | 0.9 | -| `MaxToolSuccessRate` | optionalnullable.OptionalNullable[`float64`] | ➖ | Maximum tool-calling success rate, as a fraction in [0, 1]. | 1 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `Category` | [*operations.GetModelsCategory](../../models/operations/getmodelscategory.mdx) | :heavy_minus_sign: | Filter models by use case category | programming | +| `SupportedParameters` | `*string` | :heavy_minus_sign: | Filter models by supported parameter (comma-separated) | temperature | +| `OutputModalities` | `*string` | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `Sort` | [*operations.GetModelsSort](../../models/operations/getmodelssort.mdx) | :heavy_minus_sign: | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | +| `Q` | `*string` | :heavy_minus_sign: | Free-text search by model name or slug. | gpt-4 | +| `InputModalities` | `*string` | :heavy_minus_sign: | Filter models by input modality. Comma-separated list of: text, image, audio, file. | text,image | +| `Context` | `*int64` | :heavy_minus_sign: | Minimum context length (tokens). Models with smaller context are excluded. | 128000 | +| `MinPrice` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum prompt price in $/M tokens. | 0 | +| `MaxPrice` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum prompt price in $/M tokens. | 10 | +| `Arch` | `*string` | :heavy_minus_sign: | Filter models by architecture/model family (e.g. GPT, Claude, Gemini, Llama). | GPT | +| `ModelAuthors` | `*string` | :heavy_minus_sign: | Filter models by the organization that created the model. Comma-separated list of author slugs. | openai,anthropic | +| `Providers` | `*string` | :heavy_minus_sign: | Filter models by hosting provider. Comma-separated list of provider names. | OpenAI,Anthropic | +| `Distillable` | [*operations.Distillable](../../models/operations/distillable.mdx) | :heavy_minus_sign: | Filter by distillation capability. "true" returns only distillable models, "false" excludes them. | true | +| `Zdr` | [*operations.Zdr](../../models/operations/zdr.mdx) | :heavy_minus_sign: | When set to "true", return only models with zero data retention endpoints. | true | +| `Region` | [*operations.Region](../../models/operations/region.mdx) | :heavy_minus_sign: | Filter to models with endpoints in the given data region ("eu" or "us"). | eu | +| `MinOutputPrice` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum completion (output) price in $/M tokens. | 0 | +| `MaxOutputPrice` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum completion (output) price in $/M tokens. | 10 | +| `MinAgeDays` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Minimum model age in days since its creation date. | 0 | +| `MaxAgeDays` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Maximum model age in days since its creation date. | 90 | +| `MinIntelligenceIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum Artificial Analysis intelligence index. | 50 | +| `MaxIntelligenceIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum Artificial Analysis intelligence index. | 100 | +| `MinCodingIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum Artificial Analysis coding index. | 50 | +| `MaxCodingIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum Artificial Analysis coding index. | 100 | +| `MinAgenticIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum Artificial Analysis agentic index. | 50 | +| `MaxAgenticIndex` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum Artificial Analysis agentic index. | 100 | +| `MinToolSuccessRate` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Minimum tool-calling success rate, as a fraction in [0, 1] (e.g. 0.9 = 90% of requests finishing with a tool_calls finish reason). | 0.9 | +| `MaxToolSuccessRate` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | Maximum tool-calling success rate, as a fraction in [0, 1]. | 1 | \ No newline at end of file diff --git a/docs/models/operations/getmodelsresponse.mdx b/docs/models/operations/getmodelsresponse.mdx index 8c224f892..dc7254dd0 100644 --- a/docs/models/operations/getmodelsresponse.mdx +++ b/docs/models/operations/getmodelsresponse.mdx @@ -6,4 +6,4 @@ title: "GetModelsResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file +| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file diff --git a/docs/models/operations/getobservabilitydestinationrequest.mdx b/docs/models/operations/getobservabilitydestinationrequest.mdx index 266e0c718..1b7ebf195 100644 --- a/docs/models/operations/getobservabilitydestinationrequest.mdx +++ b/docs/models/operations/getobservabilitydestinationrequest.mdx @@ -6,4 +6,4 @@ title: "GetObservabilityDestinationRequest" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `ID` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | \ No newline at end of file diff --git a/docs/models/operations/getorganizationsettingsresponse.mdx b/docs/models/operations/getorganizationsettingsresponse.mdx index 033b2a96f..e432f771c 100644 --- a/docs/models/operations/getorganizationsettingsresponse.mdx +++ b/docs/models/operations/getorganizationsettingsresponse.mdx @@ -9,4 +9,4 @@ Organization settings | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [components.OrganizationSettings](../../models/components/organizationsettings.mdx) | ✅ | N/A | \{
"id": "org_2dHFtVWx2n56w6HkM0000000000",
"is_filtered_model_catalog_enabled": true
} | \ No newline at end of file +| `Data` | [components.OrganizationSettings](../../models/components/organizationsettings.mdx) | :heavy_check_mark: | N/A | \{
"id": "org_2dHFtVWx2n56w6HkM0000000000",
"is_filtered_model_catalog_enabled": true
} | \ No newline at end of file diff --git a/docs/models/operations/getpresetrequest.mdx b/docs/models/operations/getpresetrequest.mdx index d214c7a32..c24f183c9 100644 --- a/docs/models/operations/getpresetrequest.mdx +++ b/docs/models/operations/getpresetrequest.mdx @@ -6,4 +6,4 @@ title: "GetPresetRequest" | Field | Type | Required | Description | Example | | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | \ No newline at end of file diff --git a/docs/models/operations/getpresetversionrequest.mdx b/docs/models/operations/getpresetversionrequest.mdx index 3733c88a0..519f31f1d 100644 --- a/docs/models/operations/getpresetversionrequest.mdx +++ b/docs/models/operations/getpresetversionrequest.mdx @@ -6,5 +6,5 @@ title: "GetPresetVersionRequest" | Field | Type | Required | Description | Example | | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | -| `Version` | `string` | ✅ | Version number of the preset. | 1 | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | +| `Version` | `string` | :heavy_check_mark: | Version number of the preset. | 1 | \ No newline at end of file diff --git a/docs/models/operations/getprivateendpointrequest.mdx b/docs/models/operations/getprivateendpointrequest.mdx index e7b82f35b..bcc6ebac6 100644 --- a/docs/models/operations/getprivateendpointrequest.mdx +++ b/docs/models/operations/getprivateendpointrequest.mdx @@ -6,4 +6,4 @@ title: "GetPrivateEndpointRequest" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | \ No newline at end of file diff --git a/docs/models/operations/getrankingsdailyrequest.mdx b/docs/models/operations/getrankingsdailyrequest.mdx index b11f0134b..45ad08830 100644 --- a/docs/models/operations/getrankingsdailyrequest.mdx +++ b/docs/models/operations/getrankingsdailyrequest.mdx @@ -6,10 +6,10 @@ title: "GetRankingsDailyRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `StartDate` | `*string` | ➖ | Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`. | 2026-04-12 | -| `EndDate` | `*string` | ➖ | End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400. | 2026-05-11 | -| `Period` | [*operations.Period](../../models/operations/period.mdx) | ➖ | Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries. | day | -| `Modality` | [*operations.Modality](../../models/operations/modality.mdx) | ➖ | Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`. | text | -| `ContextBucket` | [*operations.ContextBucket](../../models/operations/contextbucket.mdx) | ➖ | Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`. | 100K | -| `Category` | [*operations.GetRankingsDailyCategory](../../models/operations/getrankingsdailycategory.mdx) | ➖ | Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`. | programming | -| `LanguageType` | [*operations.LanguageType](../../models/operations/languagetype.mdx) | ➖ | Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`. | natural | \ No newline at end of file +| `StartDate` | `*string` | :heavy_minus_sign: | Start of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to 30 days before `end_date`. The dataset begins at 2025-01-01; earlier values are clamped forward to that floor and the resolved value is echoed in `meta.start_date`. | 2026-04-12 | +| `EndDate` | `*string` | :heavy_minus_sign: | End of the date window in YYYY-MM-DD (UTC), inclusive. Defaults to the most recent completed UTC day. Must be on or after 2025-01-01; earlier values are rejected with a 400. | 2026-05-11 | +| `Period` | [*operations.Period](../../models/operations/period.mdx) | :heavy_minus_sign: | Time grain of each row. `day` (default) returns the per-UTC-day series; `week` buckets by ISO week start; `month` buckets by month start. With `category` or `language_type` only `week` (default) and `month` are available — `day` is rejected with a 400 because those datasets are aggregated weekly. For those sampled datasets `period=month` buckets each week by its week-start month, so totals are approximate at month boundaries. | day | +| `Modality` | [*operations.Modality](../../models/operations/modality.mdx) | :heavy_minus_sign: | Restrict to models for a modality surface: `text` / `image_output` match output modality, `image` / `audio` match input modality, and `tool_calling` keeps only rows that recorded at least one tool call. Exact dataset — cannot be combined with `category` or `language_type`. | text | +| `ContextBucket` | [*operations.ContextBucket](../../models/operations/contextbucket.mdx) | :heavy_minus_sign: | Restrict to requests whose context length falls in this bucket (`1K`, `10K`, `100K`, `1M`, or `10M`). Exact dataset — cannot be combined with `category` or `language_type`. | 100K | +| `Category` | [*operations.GetRankingsDailyCategory](../../models/operations/getrankingsdailycategory.mdx) | :heavy_minus_sign: | Restrict to a use-case category (e.g. `programming`, `roleplay`). Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `language_type`. | programming | +| `LanguageType` | [*operations.LanguageType](../../models/operations/languagetype.mdx) | :heavy_minus_sign: | Restrict to natural-language or programming-language tagged activity. Sourced from a sampled, upsampled dataset, so `total_tokens` is an estimate and is aggregated weekly (the trailing weekly bucket may include traffic past `end_date`). Cannot be combined with `modality`, `context_bucket`, or `category`. | natural | \ No newline at end of file diff --git a/docs/models/operations/getscimgroupmappingrequest.mdx b/docs/models/operations/getscimgroupmappingrequest.mdx index bc7b15c70..6efec4dd2 100644 --- a/docs/models/operations/getscimgroupmappingrequest.mdx +++ b/docs/models/operations/getscimgroupmappingrequest.mdx @@ -6,4 +6,4 @@ title: "GetScimGroupMappingRequest" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ID` | `string` | ✅ | N/A | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getscimsyncjobrequest.mdx b/docs/models/operations/getscimsyncjobrequest.mdx index 91b97e4a9..6a2de6f63 100644 --- a/docs/models/operations/getscimsyncjobrequest.mdx +++ b/docs/models/operations/getscimsyncjobrequest.mdx @@ -6,4 +6,4 @@ title: "GetScimSyncJobRequest" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `ID` | `string` | ✅ | N/A | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getsessioncostrequest.mdx b/docs/models/operations/getsessioncostrequest.mdx index 7730c906b..1a3b5e044 100644 --- a/docs/models/operations/getsessioncostrequest.mdx +++ b/docs/models/operations/getsessioncostrequest.mdx @@ -6,8 +6,8 @@ title: "GetSessionCostRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `AppSlug` | `*string` | ➖ | Filter to one published harness slug. | hermes-agent | -| `Model` | `*string` | ➖ | Exact model permaslug filter. Works across all harness apps. | anthropic/claude-4.8-opus | -| `TurnRange` | [*operations.TurnRange](../../models/operations/turnrange.mdx) | ➖ | Filter by the inclusive number of turns in a session. | 10-49-turns | -| `Limit` | `*int64` | ➖ | Maximum number of cells to return (1-500). Defaults to 100. | 100 | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of sorted cells to skip (0-5000). Defaults to 0. | 0 | \ No newline at end of file +| `AppSlug` | `*string` | :heavy_minus_sign: | Filter to one published harness slug. | hermes-agent | +| `Model` | `*string` | :heavy_minus_sign: | Exact model permaslug filter. Works across all harness apps. | anthropic/claude-4.8-opus | +| `TurnRange` | [*operations.TurnRange](../../models/operations/turnrange.mdx) | :heavy_minus_sign: | Filter by the inclusive number of turns in a session. | 10-49-turns | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of cells to return (1-500). Defaults to 100. | 100 | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of sorted cells to skip (0-5000). Defaults to 0. | 0 | \ No newline at end of file diff --git a/docs/models/operations/getsessioncostresponse.mdx b/docs/models/operations/getsessioncostresponse.mdx index b95ccae59..c319e4565 100644 --- a/docs/models/operations/getsessioncostresponse.mdx +++ b/docs/models/operations/getsessioncostresponse.mdx @@ -6,4 +6,4 @@ title: "GetSessionCostResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Result` | [components.SessionCostResponse](../../models/components/sessioncostresponse.mdx) | ✅ | N/A | \ No newline at end of file +| `Result` | [components.SessionCostResponse](../../models/components/sessioncostresponse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/gettaskclassificationsrequest.mdx b/docs/models/operations/gettaskclassificationsrequest.mdx index ca08656c2..a80174e69 100644 --- a/docs/models/operations/gettaskclassificationsrequest.mdx +++ b/docs/models/operations/gettaskclassificationsrequest.mdx @@ -6,4 +6,4 @@ title: "GetTaskClassificationsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `Window` | [*operations.Window](../../models/operations/window.mdx) | ➖ | Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported. | 7d | \ No newline at end of file +| `Window` | [*operations.Window](../../models/operations/window.mdx) | :heavy_minus_sign: | Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported. | 7d | \ No newline at end of file diff --git a/docs/models/operations/gettoolrequest.mdx b/docs/models/operations/gettoolrequest.mdx index 9daab90a4..3fafe4f61 100644 --- a/docs/models/operations/gettoolrequest.mdx +++ b/docs/models/operations/gettoolrequest.mdx @@ -6,4 +6,4 @@ title: "GetToolRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Name` | `string` | ✅ | Canonical `openrouter:*` name or any accepted `tools[].type` alias | openrouter:web_search | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | Canonical `openrouter:*` name or any accepted `tools[].type` alias | openrouter:web_search | \ No newline at end of file diff --git a/docs/models/operations/gettoolresponse.mdx b/docs/models/operations/gettoolresponse.mdx index 605a89853..1fa45c0b5 100644 --- a/docs/models/operations/gettoolresponse.mdx +++ b/docs/models/operations/gettoolresponse.mdx @@ -6,5 +6,5 @@ title: "GetToolResponse" | Field | Type | Required | Description | | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | -| `Result` | [*components.GetToolResponse](../../models/components/gettoolresponse.mdx) | ➖ | N/A | \ No newline at end of file +| `Headers` | map[string][]`string` | :heavy_check_mark: | N/A | +| `Result` | [*components.GetToolResponse](../../models/components/gettoolresponse.mdx) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/operations/gettoolsecurity.mdx b/docs/models/operations/gettoolsecurity.mdx index 56f9fe66a..95a591f90 100644 --- a/docs/models/operations/gettoolsecurity.mdx +++ b/docs/models/operations/gettoolsecurity.mdx @@ -6,4 +6,4 @@ title: "GetToolSecurity" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bearer` | `string` | ✅ | N/A | \ No newline at end of file +| `Bearer` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/getuseractivityrequest.mdx b/docs/models/operations/getuseractivityrequest.mdx index 144953a56..08fa27a64 100644 --- a/docs/models/operations/getuseractivityrequest.mdx +++ b/docs/models/operations/getuseractivityrequest.mdx @@ -6,8 +6,8 @@ title: "GetUserActivityRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Date` | `*string` | ➖ | Filter by a single UTC date in the last 30 days (YYYY-MM-DD format). | 2025-08-24 | -| `APIKeyHash` | `*string` | ➖ | Filter by API key hash (SHA-256 hex string, as returned by the keys API). | abc123def456... | -| `UserID` | `*string` | ➖ | Filter by org member user ID. Only applicable for organization accounts. | user_abc123 | -| `GroupBy` | [*operations.GroupBy](../../models/operations/groupby.mdx) | ➖ | Set to 'workspace' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape. | workspace | -| `WorkspaceID` | `*string` | ➖ | Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `Date` | `*string` | :heavy_minus_sign: | Filter by a single UTC date in the last 30 days (YYYY-MM-DD format). | 2025-08-24 | +| `APIKeyHash` | `*string` | :heavy_minus_sign: | Filter by API key hash (SHA-256 hex string, as returned by the keys API). | abc123def456... | +| `UserID` | `*string` | :heavy_minus_sign: | Filter by org member user ID. Only applicable for organization accounts. | user_abc123 | +| `GroupBy` | [*operations.GroupBy](../../models/operations/groupby.mdx) | :heavy_minus_sign: | Set to 'workspace' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape. | workspace | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/operations/getvideosrequest.mdx b/docs/models/operations/getvideosrequest.mdx index c7c6cb8e7..195169bbe 100644 --- a/docs/models/operations/getvideosrequest.mdx +++ b/docs/models/operations/getvideosrequest.mdx @@ -6,4 +6,4 @@ title: "GetVideosRequest" | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `JobID` | `string` | ✅ | N/A | job-abc123 | \ No newline at end of file +| `JobID` | `string` | :heavy_check_mark: | N/A | job-abc123 | \ No newline at end of file diff --git a/docs/models/operations/getworkspacebudgetrequest.mdx b/docs/models/operations/getworkspacebudgetrequest.mdx index 3d6766acc..f9c1bade8 100644 --- a/docs/models/operations/getworkspacebudgetrequest.mdx +++ b/docs/models/operations/getworkspacebudgetrequest.mdx @@ -6,5 +6,5 @@ title: "GetWorkspaceBudgetRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `WorkspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | \ No newline at end of file +| `WorkspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | \ No newline at end of file diff --git a/docs/models/operations/getworkspacerequest.mdx b/docs/models/operations/getworkspacerequest.mdx index 6deaba1d4..f55c4a768 100644 --- a/docs/models/operations/getworkspacerequest.mdx +++ b/docs/models/operations/getworkspacerequest.mdx @@ -6,4 +6,4 @@ title: "GetWorkspaceRequest" | Field | Type | Required | Description | Example | | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | \ No newline at end of file diff --git a/docs/models/operations/granularity.mdx b/docs/models/operations/granularity.mdx index 3f84c2969..e63f71fac 100644 --- a/docs/models/operations/granularity.mdx +++ b/docs/models/operations/granularity.mdx @@ -6,5 +6,5 @@ title: "Granularity" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `DisplayLabel` | `string` | ✅ | Human-readable label | Day | -| `Name` | [operations.GranularityName](../../models/operations/granularityname.mdx) | ✅ | Granularity identifier | day | \ No newline at end of file +| `DisplayLabel` | `string` | :heavy_check_mark: | Human-readable label | Day | +| `Name` | [operations.GranularityName](../../models/operations/granularityname.mdx) | :heavy_check_mark: | Granularity identifier | day | \ No newline at end of file diff --git a/docs/models/operations/imageurl.mdx b/docs/models/operations/imageurl.mdx index 791103a25..5503dd2ce 100644 --- a/docs/models/operations/imageurl.mdx +++ b/docs/models/operations/imageurl.mdx @@ -6,4 +6,4 @@ title: "ImageURL" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `URL` | `string` | ✅ | N/A | \ No newline at end of file +| `URL` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/input.mdx b/docs/models/operations/input.mdx index 46f907ef1..560e8b396 100644 --- a/docs/models/operations/input.mdx +++ b/docs/models/operations/input.mdx @@ -6,4 +6,4 @@ title: "Input" | Field | Type | Required | Description | | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- | -| `Content` | [][operations.Content](../../models/operations/content.mdx) | ✅ | N/A | \ No newline at end of file +| `Content` | [][operations.Content](../../models/operations/content.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/invokeinternrequest.mdx b/docs/models/operations/invokeinternrequest.mdx deleted file mode 100644 index 3d514eb07..000000000 --- a/docs/models/operations/invokeinternrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "InvokeInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `InternID` | `string` | ✅ | The intern to run. | a11e0000-0000-4000-8000-000000000005 | -| `InternInvokeRequest` | [components.InternInvokeRequest](../../models/components/interninvokerequest.mdx) | ✅ | N/A | \{
"input": "New support ticket 48213. Case token: ct_9f2c. Investigate and reply."
} | \ No newline at end of file diff --git a/docs/models/operations/invokeinternresponse.mdx b/docs/models/operations/invokeinternresponse.mdx deleted file mode 100644 index c740f088b..000000000 --- a/docs/models/operations/invokeinternresponse.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "InvokeInternResponse" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | | -| `Result` | [components.InternInvokeAcceptedResponse](../../models/components/interninvokeacceptedresponse.mdx) | ✅ | N/A | \{
"session_id": "b51a0e21-368b-4780-a220-14655bf28c55",
"status": "started"
} | \ No newline at end of file diff --git a/docs/models/operations/listbatchesrequest.mdx b/docs/models/operations/listbatchesrequest.mdx index 9e4e7f371..c5ac6fd04 100644 --- a/docs/models/operations/listbatchesrequest.mdx +++ b/docs/models/operations/listbatchesrequest.mdx @@ -6,8 +6,8 @@ title: "ListBatchesRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | -| `Limit` | `*int64` | ➖ | Maximum number of batches to return, from 1 through 100. | 20 | -| `After` | `*string` | ➖ | Batch id from the previous page's `last_id`. | batch_7a4b02 | -| `Status` | [][components.BatchListStatus](../../models/components/batchliststatus.mdx) | ➖ | Repeat this parameter to include more than one status. | [
"completed",
"failed"
] | -| `CreatedAfter` | [*components.BatchListTimestamp](../../models/components/batchlisttimestamp.mdx) | ➖ | Only include batches created strictly after this timestamp. | 2026-08-20T00:00:00Z | -| `CreatedBefore` | [*components.BatchListTimestamp](../../models/components/batchlisttimestamp.mdx) | ➖ | Only include batches created strictly before this timestamp. | 2026-08-20T00:00:00Z | \ No newline at end of file +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of batches to return, from 1 through 100. | 20 | +| `After` | `*string` | :heavy_minus_sign: | Batch id from the previous page's `last_id`. | batch_7a4b02 | +| `Status` | [][components.BatchListStatus](../../models/components/batchliststatus.mdx) | :heavy_minus_sign: | Repeat this parameter to include more than one status. | [
"completed",
"failed"
] | +| `CreatedAfter` | [*components.BatchListTimestamp](../../models/components/batchlisttimestamp.mdx) | :heavy_minus_sign: | Only include batches created strictly after this timestamp. | 2026-08-20T00:00:00Z | +| `CreatedBefore` | [*components.BatchListTimestamp](../../models/components/batchlisttimestamp.mdx) | :heavy_minus_sign: | Only include batches created strictly before this timestamp. | 2026-08-20T00:00:00Z | \ No newline at end of file diff --git a/docs/models/operations/listbatchesresponse.mdx b/docs/models/operations/listbatchesresponse.mdx index 2c89581f1..a8d828c07 100644 --- a/docs/models/operations/listbatchesresponse.mdx +++ b/docs/models/operations/listbatchesresponse.mdx @@ -6,4 +6,4 @@ title: "ListBatchesResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Result` | [components.BatchListResponse](../../models/components/batchlistresponse.mdx) | ✅ | N/A | \{
"data": [],
"first_id": null,
"has_more": false,
"last_id": null,
"object": "list"
} | \ No newline at end of file +| `Result` | [components.BatchListResponse](../../models/components/batchlistresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [],
"first_id": null,
"has_more": false,
"last_id": null,
"object": "list"
} | \ No newline at end of file diff --git a/docs/models/operations/listbyokkeysrequest.mdx b/docs/models/operations/listbyokkeysrequest.mdx index f9fe882db..66b2ffa3e 100644 --- a/docs/models/operations/listbyokkeysrequest.mdx +++ b/docs/models/operations/listbyokkeysrequest.mdx @@ -6,7 +6,7 @@ title: "ListBYOKKeysRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `WorkspaceID` | `*string` | ➖ | Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | -| `Provider` | [*operations.Provider](../../models/operations/provider.mdx) | ➖ | Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | +| `Provider` | [*operations.Provider](../../models/operations/provider.mdx) | :heavy_minus_sign: | Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | \ No newline at end of file diff --git a/docs/models/operations/listbyokkeysresponse.mdx b/docs/models/operations/listbyokkeysresponse.mdx index e566fd1c9..8cdcc228f 100644 --- a/docs/models/operations/listbyokkeysresponse.mdx +++ b/docs/models/operations/listbyokkeysresponse.mdx @@ -6,4 +6,4 @@ title: "ListBYOKKeysResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Result` | [components.ListBYOKKeysResponse](../../models/components/listbyokkeysresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListBYOKKeysResponse](../../models/components/listbyokkeysresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"allowed_api_key_hashes": null,
"allowed_models": null,
"allowed_user_ids": null,
"created_at": "2025-08-24T10:30:00Z",
"declared_region": null,
"declared_zdr": null,
"disabled": false,
"id": "11111111-2222-3333-4444-555555555555",
"is_byok_only": false,
"is_fallback": false,
"is_required": false,
"label": "sk-...AbCd",
"name": "Production OpenAI Key",
"provider": "openai",
"sort_order": 0,
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listcontainerfilesrequest.mdx b/docs/models/operations/listcontainerfilesrequest.mdx index ecfa78cb0..3074faa6b 100644 --- a/docs/models/operations/listcontainerfilesrequest.mdx +++ b/docs/models/operations/listcontainerfilesrequest.mdx @@ -6,6 +6,6 @@ title: "ListContainerFilesRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `Limit` | `*int64` | ➖ | Maximum number of files to return (1-1000). Defaults to 100 when absent. | 100 | -| `After` | `*string` | ➖ | Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted. | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of files to return (1-1000). Defaults to 100 when absent. | 100 | +| `After` | `*string` | :heavy_minus_sign: | Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted. | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file diff --git a/docs/models/operations/listdata.mdx b/docs/models/operations/listdata.mdx index 8d00f1f4b..ba0704639 100644 --- a/docs/models/operations/listdata.mdx +++ b/docs/models/operations/listdata.mdx @@ -6,26 +6,26 @@ title: "ListData" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOKUsage` | `float64` | ✅ | Total external BYOK usage (in USD) for the API key | 17.38 | -| `BYOKUsageDaily` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC day | 17.38 | -| `BYOKUsageMonthly` | `float64` | ✅ | External BYOK usage (in USD) for current UTC month | 17.38 | -| `BYOKUsageWeekly` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | -| `CreatorUserID` | `*string` | ✅ | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | -| `Disabled` | `bool` | ✅ | Whether the API key is disabled | false | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | -| `ExternalUser` | `*string` | ✅ | Partner's end-user identifier used for attribution. | null | -| `Hash` | `string` | ✅ | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `IncludeBYOKInLimit` | `bool` | ✅ | Whether to include external BYOK usage in the credit limit | false | -| `Label` | `string` | ✅ | Human-readable label for the API key | sk-or-v1-0e6...1c96 | -| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | -| `Limit` | `*float64` | ✅ | Spending limit for the API key in USD | 100 | -| `LimitRemaining` | `*float64` | ✅ | Remaining spending limit in USD | 74.5 | -| `LimitReset` | `*string` | ✅ | Type of limit reset for the API key | monthly | -| `Name` | `string` | ✅ | Name of the API key | My Production Key | -| `UpdatedAt` | `*string` | ✅ | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | -| `Usage` | `float64` | ✅ | Total OpenRouter credit usage (in USD) for the API key | 25.5 | -| `UsageDaily` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | -| `UsageMonthly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | -| `UsageWeekly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | -| `WorkspaceID` | `string` | ✅ | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `BYOKUsage` | `float64` | :heavy_check_mark: | Total external BYOK usage (in USD) for the API key | 17.38 | +| `BYOKUsageDaily` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC day | 17.38 | +| `BYOKUsageMonthly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 | +| `BYOKUsageWeekly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | +| `CreatorUserID` | `*string` | :heavy_check_mark: | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | +| `Disabled` | `bool` | :heavy_check_mark: | Whether the API key is disabled | false | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | +| `ExternalUser` | `*string` | :heavy_check_mark: | Partner's end-user identifier used for attribution. | null | +| `Hash` | `string` | :heavy_check_mark: | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `IncludeBYOKInLimit` | `bool` | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the API key | sk-or-v1-0e6...1c96 | +| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | +| `Limit` | `*float64` | :heavy_check_mark: | Spending limit for the API key in USD | 100 | +| `LimitRemaining` | `*float64` | :heavy_check_mark: | Remaining spending limit in USD | 74.5 | +| `LimitReset` | `*string` | :heavy_check_mark: | Type of limit reset for the API key | monthly | +| `Name` | `string` | :heavy_check_mark: | Name of the API key | My Production Key | +| `UpdatedAt` | `*string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | +| `Usage` | `float64` | :heavy_check_mark: | Total OpenRouter credit usage (in USD) for the API key | 25.5 | +| `UsageDaily` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | +| `UsageMonthly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | +| `UsageWeekly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | +| `WorkspaceID` | `string` | :heavy_check_mark: | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/listembeddingsmodelsrequest.mdx b/docs/models/operations/listembeddingsmodelsrequest.mdx index a76440dfb..98242d430 100644 --- a/docs/models/operations/listembeddingsmodelsrequest.mdx +++ b/docs/models/operations/listembeddingsmodelsrequest.mdx @@ -6,5 +6,5 @@ title: "ListEmbeddingsModelsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | \ No newline at end of file diff --git a/docs/models/operations/listembeddingsmodelsresponse.mdx b/docs/models/operations/listembeddingsmodelsresponse.mdx index c033d393f..2512a3f51 100644 --- a/docs/models/operations/listembeddingsmodelsresponse.mdx +++ b/docs/models/operations/listembeddingsmodelsresponse.mdx @@ -6,4 +6,4 @@ title: "ListEmbeddingsModelsResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file +| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file diff --git a/docs/models/operations/listendpointsrequest.mdx b/docs/models/operations/listendpointsrequest.mdx index 54fa8fdbd..5addbc78d 100644 --- a/docs/models/operations/listendpointsrequest.mdx +++ b/docs/models/operations/listendpointsrequest.mdx @@ -6,5 +6,5 @@ title: "ListEndpointsRequest" | Field | Type | Required | Description | Example | | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | -| `Author` | `string` | ✅ | The author/organization of the model | openai | -| `Slug` | `string` | ✅ | The model slug | gpt-4 | \ No newline at end of file +| `Author` | `string` | :heavy_check_mark: | The author/organization of the model | openai | +| `Slug` | `string` | :heavy_check_mark: | The model slug | gpt-4 | \ No newline at end of file diff --git a/docs/models/operations/listendpointsresponse.mdx b/docs/models/operations/listendpointsresponse.mdx index cd61b3d87..6b2d020ed 100644 --- a/docs/models/operations/listendpointsresponse.mdx +++ b/docs/models/operations/listendpointsresponse.mdx @@ -9,4 +9,4 @@ Returns a list of endpoints | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.ListEndpointsResponse](../../models/components/listendpointsresponse.mdx) | ✅ | List of available endpoints for a model | \{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"created": 1692901234,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"endpoints": [
\{
"context_length": 8192,
"latency_last_30m": \{
"p50": 0.25,
"p75": 0.35,
"p90": 0.48,
"p99": 0.85
},
"max_completion_tokens": 4096,
"max_prompt_tokens": 8192,
"model_id": "openai/gpt-4",
"model_name": "GPT-4",
"name": "OpenAI: GPT-4",
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"provider_name": "OpenAI",
"quantization": "fp16",
"status": 0,
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supports_diarization": false,
"supports_implicit_caching": true,
"tag": "openai",
"throughput_last_30m": \{
"p50": 45.2,
"p75": 38.5,
"p90": 28.3,
"p99": 15.1
},
"uptime_last_1d": 99.8,
"uptime_last_30m": 99.5,
"uptime_last_5m": 100
}
],
"id": "openai/gpt-4",
"name": "GPT-4"
} | \ No newline at end of file +| `Data` | [components.ListEndpointsResponse](../../models/components/listendpointsresponse.mdx) | :heavy_check_mark: | List of available endpoints for a model | \{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"created": 1692901234,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"endpoints": [
\{
"context_length": 8192,
"latency_last_30m": \{
"p50": 0.25,
"p75": 0.35,
"p90": 0.48,
"p99": 0.85
},
"max_completion_tokens": 4096,
"max_prompt_tokens": 8192,
"model_id": "openai/gpt-4",
"model_name": "GPT-4",
"name": "OpenAI: GPT-4",
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"provider_name": "OpenAI",
"quantization": "fp16",
"status": 0,
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supports_diarization": false,
"supports_implicit_caching": true,
"tag": "openai",
"throughput_last_30m": \{
"p50": 45.2,
"p75": 38.5,
"p90": 28.3,
"p99": 15.1
},
"uptime_last_1d": 99.8,
"uptime_last_30m": 99.5,
"uptime_last_5m": 100
}
],
"id": "openai/gpt-4",
"name": "GPT-4"
} | \ No newline at end of file diff --git a/docs/models/operations/listendpointszdrresponse.mdx b/docs/models/operations/listendpointszdrresponse.mdx index 101eb01be..3aed99b5d 100644 --- a/docs/models/operations/listendpointszdrresponse.mdx +++ b/docs/models/operations/listendpointszdrresponse.mdx @@ -9,4 +9,4 @@ Returns a list of endpoints | Field | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `Data` | [][components.PublicEndpoint](../../models/components/publicendpoint.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][components.PublicEndpoint](../../models/components/publicendpoint.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listexternalusersrequest.mdx b/docs/models/operations/listexternalusersrequest.mdx index f6d1cd46b..a379b1670 100644 --- a/docs/models/operations/listexternalusersrequest.mdx +++ b/docs/models/operations/listexternalusersrequest.mdx @@ -6,7 +6,7 @@ title: "ListExternalUsersRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `User` | `*string` | ➖ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `IncludeInactive` | `*bool` | ➖ | Include deactivated registrations. | false | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `User` | `*string` | :heavy_minus_sign: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `IncludeInactive` | `*bool` | :heavy_minus_sign: | Include deactivated registrations. | false | \ No newline at end of file diff --git a/docs/models/operations/listexternalusersresponse.mdx b/docs/models/operations/listexternalusersresponse.mdx index fbb14e08f..91225a122 100644 --- a/docs/models/operations/listexternalusersresponse.mdx +++ b/docs/models/operations/listexternalusersresponse.mdx @@ -6,4 +6,4 @@ title: "ListExternalUsersResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListExternalUsersResponse](../../models/components/listexternalusersresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"created_at": "2026-09-16T12:00:00Z",
"is_active": true,
"updated_at": "2026-09-16T12:00:00Z",
"user": "employee_123"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListExternalUsersResponse](../../models/components/listexternalusersresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"created_at": "2026-09-16T12:00:00Z",
"is_active": true,
"updated_at": "2026-09-16T12:00:00Z",
"user": "employee_123"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listfilesrequest.mdx b/docs/models/operations/listfilesrequest.mdx index d7b639027..b4ae6e399 100644 --- a/docs/models/operations/listfilesrequest.mdx +++ b/docs/models/operations/listfilesrequest.mdx @@ -6,11 +6,11 @@ title: "ListFilesRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Limit` | `*int64` | ➖ | Maximum number of files to return (1–1000). | 100 | -| `Cursor` | `*string` | ➖ | Opaque pagination cursor from a previous response. | eyJjdXJzb3IiOiJvcl9maWxlXzAxMUNOaGE4aUNKY1Uxd1hOUjZxNFY4dyJ9 | -| `WorkspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `After` | `*string` | ➖ | OpenAI-style forward cursor: the id to list after. | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `AfterID` | `*string` | ➖ | Anthropic-style forward cursor: the id to list after. | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `BeforeID` | `*string` | ➖ | Anthropic-style reverse cursor. Not supported by OpenRouter storage. | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `Order` | [*operations.Order](../../models/operations/order.mdx) | ➖ | Sort direction. Only `asc` is supported by OpenRouter storage. | asc | \ No newline at end of file +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of files to return (1–1000). | 100 | +| `Cursor` | `*string` | :heavy_minus_sign: | Opaque pagination cursor from a previous response. | eyJjdXJzb3IiOiJvcl9maWxlXzAxMUNOaGE4aUNKY1Uxd1hOUjZxNFY4dyJ9 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `After` | `*string` | :heavy_minus_sign: | OpenAI-style forward cursor: the id to list after. | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `AfterID` | `*string` | :heavy_minus_sign: | Anthropic-style forward cursor: the id to list after. | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `BeforeID` | `*string` | :heavy_minus_sign: | Anthropic-style reverse cursor. Not supported by OpenRouter storage. | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `Order` | [*operations.Order](../../models/operations/order.mdx) | :heavy_minus_sign: | Sort direction. Only `asc` is supported by OpenRouter storage. | asc | \ No newline at end of file diff --git a/docs/models/operations/listfilesresponse.mdx b/docs/models/operations/listfilesresponse.mdx index 46d09bb4d..eae01171a 100644 --- a/docs/models/operations/listfilesresponse.mdx +++ b/docs/models/operations/listfilesresponse.mdx @@ -6,4 +6,4 @@ title: "ListFilesResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `Result` | [components.FileListResponse](../../models/components/filelistresponse.mdx) | ✅ | N/A | \{
"_shape": "openrouter",
"cursor": null,
"data": [],
"first_id": null,
"has_more": false,
"last_id": null
} | \ No newline at end of file +| `Result` | [components.FileListResponse](../../models/components/filelistresponse.mdx) | :heavy_check_mark: | N/A | \{
"_shape": "openrouter",
"cursor": null,
"data": [],
"first_id": null,
"has_more": false,
"last_id": null
} | \ No newline at end of file diff --git a/docs/models/operations/listgenerationcontentrequest.mdx b/docs/models/operations/listgenerationcontentrequest.mdx index 16c99e27d..8ea15cc26 100644 --- a/docs/models/operations/listgenerationcontentrequest.mdx +++ b/docs/models/operations/listgenerationcontentrequest.mdx @@ -6,4 +6,4 @@ title: "ListGenerationContentRequest" | Field | Type | Required | Description | Example | | ------------------ | ------------------ | ------------------ | ------------------ | ------------------ | -| `ID` | `string` | ✅ | The generation ID | gen-1234567890 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The generation ID | gen-1234567890 | \ No newline at end of file diff --git a/docs/models/operations/listguardrailkeyassignmentsrequest.mdx b/docs/models/operations/listguardrailkeyassignmentsrequest.mdx index 54a9449db..f6c4df2bf 100644 --- a/docs/models/operations/listguardrailkeyassignmentsrequest.mdx +++ b/docs/models/operations/listguardrailkeyassignmentsrequest.mdx @@ -6,6 +6,6 @@ title: "ListGuardrailKeyAssignmentsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listguardrailkeyassignmentsresponse.mdx b/docs/models/operations/listguardrailkeyassignmentsresponse.mdx index 9c45755a1..b1a2c2e2c 100644 --- a/docs/models/operations/listguardrailkeyassignmentsresponse.mdx +++ b/docs/models/operations/listguardrailkeyassignmentsresponse.mdx @@ -6,4 +6,4 @@ title: "ListGuardrailKeyAssignmentsResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListKeyAssignmentsResponse](../../models/components/listkeyassignmentsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"key_hash": "c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93",
"key_label": "prod-key",
"key_name": "Production Key"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListKeyAssignmentsResponse](../../models/components/listkeyassignmentsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"key_hash": "c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93",
"key_label": "prod-key",
"key_name": "Production Key"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listguardrailmemberassignmentsrequest.mdx b/docs/models/operations/listguardrailmemberassignmentsrequest.mdx index d3b7037a1..3af73135c 100644 --- a/docs/models/operations/listguardrailmemberassignmentsrequest.mdx +++ b/docs/models/operations/listguardrailmemberassignmentsrequest.mdx @@ -6,6 +6,6 @@ title: "ListGuardrailMemberAssignmentsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listguardrailmemberassignmentsresponse.mdx b/docs/models/operations/listguardrailmemberassignmentsresponse.mdx index 1d584934d..ee830a1c2 100644 --- a/docs/models/operations/listguardrailmemberassignmentsresponse.mdx +++ b/docs/models/operations/listguardrailmemberassignmentsresponse.mdx @@ -6,4 +6,4 @@ title: "ListGuardrailMemberAssignmentsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListMemberAssignmentsResponse](../../models/components/listmemberassignmentsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_xyz789",
"user_id": "user_abc123"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListMemberAssignmentsResponse](../../models/components/listmemberassignmentsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_xyz789",
"user_id": "user_abc123"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listguardrailsrequest.mdx b/docs/models/operations/listguardrailsrequest.mdx index cfe6be5ac..260892889 100644 --- a/docs/models/operations/listguardrailsrequest.mdx +++ b/docs/models/operations/listguardrailsrequest.mdx @@ -6,6 +6,6 @@ title: "ListGuardrailsRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `WorkspaceID` | `*string` | ➖ | Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/listguardrailsresponse.mdx b/docs/models/operations/listguardrailsresponse.mdx index 8b4bae811..67526da8e 100644 --- a/docs/models/operations/listguardrailsresponse.mdx +++ b/docs/models/operations/listguardrailsresponse.mdx @@ -6,4 +6,4 @@ title: "ListGuardrailsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListGuardrailsResponse](../../models/components/listguardrailsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListGuardrailsResponse](../../models/components/listguardrailsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"allowed_models": null,
"allowed_providers": [
"openai",
"anthropic",
"google"
],
"content_filter_builtins": [
\{
"action": "redact",
"label": "[EMAIL]",
"slug": "email"
}
],
"content_filters": null,
"created_at": "2025-08-24T10:30:00Z",
"description": "Guardrail for production environment",
"enable_free_model_publication": false,
"enable_free_model_training": true,
"enable_paid_model_training": true,
"enforce_zdr": null,
"enforce_zdr_anthropic": true,
"enforce_zdr_google": false,
"enforce_zdr_openai": true,
"enforce_zdr_other": false,
"enforce_zdr_xai": false,
"id": "550e8400-e29b-41d4-a716-446655440000",
"ignored_models": null,
"ignored_providers": null,
"include_byok_in_budgets": false,
"limit_usd": 100,
"name": "Production Guardrail",
"reset_interval": "monthly",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listimagemodelendpointsrequest.mdx b/docs/models/operations/listimagemodelendpointsrequest.mdx index 2f596beb0..c83a428b0 100644 --- a/docs/models/operations/listimagemodelendpointsrequest.mdx +++ b/docs/models/operations/listimagemodelendpointsrequest.mdx @@ -6,5 +6,5 @@ title: "ListImageModelEndpointsRequest" | Field | Type | Required | Description | Example | | ------------------------- | ------------------------- | ------------------------- | ------------------------- | ------------------------- | -| `Author` | `string` | ✅ | Model author/organization | bytedance-seed | -| `Slug` | `string` | ✅ | Model slug | seedream-4.5 | \ No newline at end of file +| `Author` | `string` | :heavy_check_mark: | Model author/organization | bytedance-seed | +| `Slug` | `string` | :heavy_check_mark: | Model slug | seedream-4.5 | \ No newline at end of file diff --git a/docs/models/operations/listinternconnectionsdata.mdx b/docs/models/operations/listinternconnectionsdata.mdx index 4b361a925..e9dbff62a 100644 --- a/docs/models/operations/listinternconnectionsdata.mdx +++ b/docs/models/operations/listinternconnectionsdata.mdx @@ -6,4 +6,4 @@ title: "ListInternConnectionsData" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Key` | `string` | ✅ | N/A | \ No newline at end of file +| `Key` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listinternconnectionsrequest.mdx b/docs/models/operations/listinternconnectionsrequest.mdx index 0ef8436fb..40a2c3882 100644 --- a/docs/models/operations/listinternconnectionsrequest.mdx +++ b/docs/models/operations/listinternconnectionsrequest.mdx @@ -6,4 +6,4 @@ title: "ListInternConnectionsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/listinternconnectionsresponse.mdx b/docs/models/operations/listinternconnectionsresponse.mdx index c35390759..9bf01ac70 100644 --- a/docs/models/operations/listinternconnectionsresponse.mdx +++ b/docs/models/operations/listinternconnectionsresponse.mdx @@ -9,4 +9,4 @@ The connections the intern can use. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Data` | [][operations.ListInternConnectionsData](../../models/operations/listinternconnectionsdata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][operations.ListInternConnectionsData](../../models/operations/listinternconnectionsdata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listinterneffectivevaultsecretsrequest.mdx b/docs/models/operations/listinterneffectivevaultsecretsrequest.mdx index 78df22a14..aa12d39dd 100644 --- a/docs/models/operations/listinterneffectivevaultsecretsrequest.mdx +++ b/docs/models/operations/listinterneffectivevaultsecretsrequest.mdx @@ -6,6 +6,6 @@ title: "ListInternEffectiveVaultSecretsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `Limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `Offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `Limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `Offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file diff --git a/docs/models/operations/listinternsrequest.mdx b/docs/models/operations/listinternsrequest.mdx deleted file mode 100644 index cb28ac484..000000000 --- a/docs/models/operations/listinternsrequest.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "ListInternsRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `Limit` | `*int64` | ➖ | Maximum number of interns to return, from 1 through 500. | 50 | -| `Status` | [][operations.Status](../../models/operations/status.mdx) | ➖ | Comma-separated lifecycle statuses to include, at most 8. Repeats are collapsed. | [
"queued",
"running"
] | -| `StartingAfter` | `*string` | ➖ | The opaque `next_cursor` of the previous page. Returns the interns that come after it in the newest-first order. A malformed cursor is a 400. | MjAyNi0wOS0xNlQwODozMDowMC4wMDAwMDBafDdjOWU2Njc5LTc0MjUtNDBkZS05NDRiLWUwN2ZjMWY5MGFlNw | -| `WorkspaceID` | `*string` | ➖ | Only return interns in this workspace. It must match the API key workspace. | 89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb | \ No newline at end of file diff --git a/docs/models/operations/listinternvaultsecretsrequest.mdx b/docs/models/operations/listinternvaultsecretsrequest.mdx index 435fe5edb..370d6f143 100644 --- a/docs/models/operations/listinternvaultsecretsrequest.mdx +++ b/docs/models/operations/listinternvaultsecretsrequest.mdx @@ -6,6 +6,6 @@ title: "ListInternVaultSecretsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `Limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `Offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `Limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `Offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file diff --git a/docs/models/operations/listkeyassignmentsrequest.mdx b/docs/models/operations/listkeyassignmentsrequest.mdx index 6b7e92afb..325a6b5de 100644 --- a/docs/models/operations/listkeyassignmentsrequest.mdx +++ b/docs/models/operations/listkeyassignmentsrequest.mdx @@ -6,5 +6,5 @@ title: "ListKeyAssignmentsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listkeyassignmentsresponse.mdx b/docs/models/operations/listkeyassignmentsresponse.mdx index 3b73c0222..02bce345f 100644 --- a/docs/models/operations/listkeyassignmentsresponse.mdx +++ b/docs/models/operations/listkeyassignmentsresponse.mdx @@ -6,4 +6,4 @@ title: "ListKeyAssignmentsResponse" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListKeyAssignmentsResponse](../../models/components/listkeyassignmentsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"key_hash": "c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93",
"key_label": "prod-key",
"key_name": "Production Key"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListKeyAssignmentsResponse](../../models/components/listkeyassignmentsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"key_hash": "c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93",
"key_label": "prod-key",
"key_name": "Production Key"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listmemberassignmentsrequest.mdx b/docs/models/operations/listmemberassignmentsrequest.mdx index b05cc99a5..ac8f63c94 100644 --- a/docs/models/operations/listmemberassignmentsrequest.mdx +++ b/docs/models/operations/listmemberassignmentsrequest.mdx @@ -6,5 +6,5 @@ title: "ListMemberAssignmentsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listmemberassignmentsresponse.mdx b/docs/models/operations/listmemberassignmentsresponse.mdx index da1412e0e..f1ab24007 100644 --- a/docs/models/operations/listmemberassignmentsresponse.mdx +++ b/docs/models/operations/listmemberassignmentsresponse.mdx @@ -6,4 +6,4 @@ title: "ListMemberAssignmentsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListMemberAssignmentsResponse](../../models/components/listmemberassignmentsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_xyz789",
"user_id": "user_abc123"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListMemberAssignmentsResponse](../../models/components/listmemberassignmentsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"assigned_by": "user_abc123",
"created_at": "2025-08-24T10:30:00Z",
"guardrail_id": "550e8400-e29b-41d4-a716-446655440001",
"id": "550e8400-e29b-41d4-a716-446655440000",
"organization_id": "org_xyz789",
"user_id": "user_abc123"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listmodelscountrequest.mdx b/docs/models/operations/listmodelscountrequest.mdx index dfd5dd9f0..9cc8b943a 100644 --- a/docs/models/operations/listmodelscountrequest.mdx +++ b/docs/models/operations/listmodelscountrequest.mdx @@ -6,4 +6,4 @@ title: "ListModelsCountRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `OutputModalities` | `*string` | ➖ | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file +| `OutputModalities` | `*string` | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | \ No newline at end of file diff --git a/docs/models/operations/listmodelsuserrequest.mdx b/docs/models/operations/listmodelsuserrequest.mdx index 5ded594c5..c1c0dc3de 100644 --- a/docs/models/operations/listmodelsuserrequest.mdx +++ b/docs/models/operations/listmodelsuserrequest.mdx @@ -6,7 +6,7 @@ title: "ListModelsUserRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `OutputModalities` | `*string` | ➖ | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | -| `Sort` | [*operations.ListModelsUserSort](../../models/operations/listmodelsusersort.mdx) | ➖ | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `OutputModalities` | `*string` | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `Sort` | [*operations.ListModelsUserSort](../../models/operations/listmodelsusersort.mdx) | :heavy_minus_sign: | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | \ No newline at end of file diff --git a/docs/models/operations/listmodelsuserresponse.mdx b/docs/models/operations/listmodelsuserresponse.mdx index 1a83c42b7..2efd1749a 100644 --- a/docs/models/operations/listmodelsuserresponse.mdx +++ b/docs/models/operations/listmodelsuserresponse.mdx @@ -6,4 +6,4 @@ title: "ListModelsUserResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file +| `Result` | [components.ModelsListResponse](../../models/components/modelslistresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"architecture": \{
"input_modalities": [
"text"
],
"instruct_type": "chatml",
"modality": "text-\u003etext",
"output_modalities": [
"text"
],
"tokenizer": "GPT"
},
"canonical_slug": "openai/gpt-4",
"context_length": 8192,
"created": 1692901234,
"default_parameters": null,
"description": "GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.",
"expiration_date": null,
"id": "openai/gpt-4",
"knowledge_cutoff": null,
"links": \{
"details": "/api/v1/models/openai/gpt-4/endpoints"
},
"name": "GPT-4",
"per_request_limits": null,
"pricing": \{
"completion": "0.00006",
"image": "0",
"prompt": "0.00003",
"request": "0"
},
"supported_parameters": [
"temperature",
"top_p",
"max_tokens",
"frequency_penalty",
"presence_penalty"
],
"supported_voices": null,
"top_provider": \{
"context_length": 8192,
"is_moderated": true,
"max_completion_tokens": 4096
}
}
],
"links": \{
"next": "/api/v1/models?offset=500\u0026limit=500"
},
"total_count": 150
} | \ No newline at end of file diff --git a/docs/models/operations/listmodelsusersecurity.mdx b/docs/models/operations/listmodelsusersecurity.mdx index dd5872669..3f2892bf6 100644 --- a/docs/models/operations/listmodelsusersecurity.mdx +++ b/docs/models/operations/listmodelsusersecurity.mdx @@ -6,4 +6,4 @@ title: "ListModelsUserSecurity" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bearer` | `string` | ✅ | N/A | \ No newline at end of file +| `Bearer` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listobservabilitydestinationsrequest.mdx b/docs/models/operations/listobservabilitydestinationsrequest.mdx index 194c98c2d..9fef8bdc7 100644 --- a/docs/models/operations/listobservabilitydestinationsrequest.mdx +++ b/docs/models/operations/listobservabilitydestinationsrequest.mdx @@ -6,6 +6,6 @@ title: "ListObservabilityDestinationsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `WorkspaceID` | `*string` | ➖ | Optional workspace ID to filter by. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to filter by. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | \ No newline at end of file diff --git a/docs/models/operations/listobservabilitydestinationsresponse.mdx b/docs/models/operations/listobservabilitydestinationsresponse.mdx index 2580bda1b..9e6195387 100644 --- a/docs/models/operations/listobservabilitydestinationsresponse.mdx +++ b/docs/models/operations/listobservabilitydestinationsresponse.mdx @@ -6,4 +6,4 @@ title: "ListObservabilityDestinationsResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListObservabilityDestinationsResponse](../../models/components/listobservabilitydestinationsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListObservabilityDestinationsResponse](../../models/components/listobservabilitydestinationsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"api_key_hashes": null,
"broadcast_generation_cost": false,
"broadcast_generation_cost_allocation": false,
"broadcast_generation_identity": false,
"broadcast_generation_request_context": false,
"config": \{
"baseUrl": "https://us.cloud.langfuse.com",
"publicKey": "pk-l...EfGh",
"secretKey": "sk-l...AbCd"
},
"created_at": "2025-08-24T10:30:00Z",
"enabled": true,
"filter_rules": null,
"id": "99999999-aaaa-bbbb-cccc-dddddddddddd",
"name": "Production Langfuse",
"privacy_mode": false,
"regions": [
"global"
],
"sampling_rate": 1,
"type": "langfuse",
"updated_at": "2025-08-24T15:45:00Z",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listorganizationmembersdata.mdx b/docs/models/operations/listorganizationmembersdata.mdx index f58de7cd3..9f22477b5 100644 --- a/docs/models/operations/listorganizationmembersdata.mdx +++ b/docs/models/operations/listorganizationmembersdata.mdx @@ -6,8 +6,8 @@ title: "ListOrganizationMembersData" | Field | Type | Required | Description | Example | | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -| `Email` | `string` | ✅ | Email address of the member | jane.doe@example.com | -| `FirstName` | `*string` | ✅ | First name of the member | Jane | -| `ID` | `string` | ✅ | User ID of the organization member | user_2dHFtVWx2n56w6HkM0000000000 | -| `LastName` | `*string` | ✅ | Last name of the member | Doe | -| `Role` | [operations.Role](../../models/operations/role.mdx) | ✅ | Role of the member in the organization | org:member | \ No newline at end of file +| `Email` | `string` | :heavy_check_mark: | Email address of the member | jane.doe@example.com | +| `FirstName` | `*string` | :heavy_check_mark: | First name of the member | Jane | +| `ID` | `string` | :heavy_check_mark: | User ID of the organization member | user_2dHFtVWx2n56w6HkM0000000000 | +| `LastName` | `*string` | :heavy_check_mark: | Last name of the member | Doe | +| `Role` | [operations.Role](../../models/operations/role.mdx) | :heavy_check_mark: | Role of the member in the organization | org:member | \ No newline at end of file diff --git a/docs/models/operations/listorganizationmembersrequest.mdx b/docs/models/operations/listorganizationmembersrequest.mdx index 664147d31..672155084 100644 --- a/docs/models/operations/listorganizationmembersrequest.mdx +++ b/docs/models/operations/listorganizationmembersrequest.mdx @@ -6,5 +6,5 @@ title: "ListOrganizationMembersRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listorganizationmembersresponse.mdx b/docs/models/operations/listorganizationmembersresponse.mdx index f282b6608..0dd53b741 100644 --- a/docs/models/operations/listorganizationmembersresponse.mdx +++ b/docs/models/operations/listorganizationmembersresponse.mdx @@ -6,4 +6,4 @@ title: "ListOrganizationMembersResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Result` | [operations.ListOrganizationMembersResponseBody](../../models/operations/listorganizationmembersresponsebody.mdx) | ✅ | N/A | \ No newline at end of file +| `Result` | [operations.ListOrganizationMembersResponseBody](../../models/operations/listorganizationmembersresponsebody.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listorganizationmembersresponsebody.mdx b/docs/models/operations/listorganizationmembersresponsebody.mdx index ca3696304..89160146d 100644 --- a/docs/models/operations/listorganizationmembersresponsebody.mdx +++ b/docs/models/operations/listorganizationmembersresponsebody.mdx @@ -9,5 +9,5 @@ List of organization members | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `Data` | [][operations.ListOrganizationMembersData](../../models/operations/listorganizationmembersdata.mdx) | ✅ | List of organization members | | -| `TotalCount` | `int64` | ✅ | Total number of members in the organization | 25 | \ No newline at end of file +| `Data` | [][operations.ListOrganizationMembersData](../../models/operations/listorganizationmembersdata.mdx) | :heavy_check_mark: | List of organization members | | +| `TotalCount` | `int64` | :heavy_check_mark: | Total number of members in the organization | 25 | \ No newline at end of file diff --git a/docs/models/operations/listpresetsrequest.mdx b/docs/models/operations/listpresetsrequest.mdx index fd403ef08..68006e47c 100644 --- a/docs/models/operations/listpresetsrequest.mdx +++ b/docs/models/operations/listpresetsrequest.mdx @@ -6,5 +6,5 @@ title: "ListPresetsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listpresetsresponse.mdx b/docs/models/operations/listpresetsresponse.mdx index 2ee844986..b2f448b8b 100644 --- a/docs/models/operations/listpresetsresponse.mdx +++ b/docs/models/operations/listpresetsresponse.mdx @@ -6,4 +6,4 @@ title: "ListPresetsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Result` | [components.ListPresetsResponse](../../models/components/listpresetsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListPresetsResponse](../../models/components/listpresetsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"created_at": "2026-04-20T10:00:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"description": null,
"designated_version_id": "550e8400-e29b-41d4-a716-446655440000",
"id": "650e8400-e29b-41d4-a716-446655440001",
"name": "my-preset",
"slug": "my-preset",
"status": "active",
"status_updated_at": null,
"updated_at": "2026-04-20T10:00:00Z",
"workspace_id": "750e8400-e29b-41d4-a716-446655440002"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listpresetversionsrequest.mdx b/docs/models/operations/listpresetversionsrequest.mdx index 69dec98bb..b87256d7c 100644 --- a/docs/models/operations/listpresetversionsrequest.mdx +++ b/docs/models/operations/listpresetversionsrequest.mdx @@ -6,6 +6,6 @@ title: "ListPresetVersionsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listpresetversionsresponse.mdx b/docs/models/operations/listpresetversionsresponse.mdx index 6fdd0c2a4..1e9724a33 100644 --- a/docs/models/operations/listpresetversionsresponse.mdx +++ b/docs/models/operations/listpresetversionsresponse.mdx @@ -6,4 +6,4 @@ title: "ListPresetVersionsResponse" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Result` | [components.ListPresetVersionsResponse](../../models/components/listpresetversionsresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListPresetVersionsResponse](../../models/components/listpresetversionsresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"config": \{
"model": "openai/gpt-4o",
"temperature": 0.7
},
"created_at": "2026-04-20T10:00:00Z",
"creator_id": "user_2dHFtVWx2n56w6HkM0000000000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"preset_id": "650e8400-e29b-41d4-a716-446655440001",
"system_prompt": "You are a helpful assistant.",
"updated_at": "2026-04-20T10:00:00Z",
"version": 1
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listprovidersdata.mdx b/docs/models/operations/listprovidersdata.mdx index f1695d299..d3a2945a0 100644 --- a/docs/models/operations/listprovidersdata.mdx +++ b/docs/models/operations/listprovidersdata.mdx @@ -6,10 +6,10 @@ title: "ListProvidersData" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `Datacenters` | optionalnullable.OptionalNullable[[][operations.Datacenter](../../models/operations/datacenter.mdx)] | ➖ | ISO 3166-1 Alpha-2 country codes of the provider datacenter locations | [
"US",
"IE"
] | -| `Headquarters` | optionalnullable.OptionalNullable[[operations.Headquarters](../../models/operations/headquarters.mdx)] | ➖ | ISO 3166-1 Alpha-2 country code of the provider headquarters | US | -| `Name` | `string` | ✅ | Display name of the provider | OpenAI | -| `PrivacyPolicyURL` | `*string` | ✅ | URL to the provider's privacy policy | https://openai.com/privacy | -| `Slug` | `string` | ✅ | URL-friendly identifier for the provider | openai | -| `StatusPageURL` | optionalnullable.OptionalNullable[`string`] | ➖ | URL to the provider's status page | https://status.openai.com | -| `TermsOfServiceURL` | optionalnullable.OptionalNullable[`string`] | ➖ | URL to the provider's terms of service | https://openai.com/terms | \ No newline at end of file +| `Datacenters` | optionalnullable.OptionalNullable[[][operations.Datacenter](../../models/operations/datacenter.mdx)] | :heavy_minus_sign: | ISO 3166-1 Alpha-2 country codes of the provider datacenter locations | [
"US",
"IE"
] | +| `Headquarters` | optionalnullable.OptionalNullable[[operations.Headquarters](../../models/operations/headquarters.mdx)] | :heavy_minus_sign: | ISO 3166-1 Alpha-2 country code of the provider headquarters | US | +| `Name` | `string` | :heavy_check_mark: | Display name of the provider | OpenAI | +| `PrivacyPolicyURL` | `*string` | :heavy_check_mark: | URL to the provider's privacy policy | https://openai.com/privacy | +| `Slug` | `string` | :heavy_check_mark: | URL-friendly identifier for the provider | openai | +| `StatusPageURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | URL to the provider's status page | https://status.openai.com | +| `TermsOfServiceURL` | optionalnullable.OptionalNullable[`string`] | :heavy_minus_sign: | URL to the provider's terms of service | https://openai.com/terms | \ No newline at end of file diff --git a/docs/models/operations/listprovidersresponse.mdx b/docs/models/operations/listprovidersresponse.mdx index d2a4f58e7..d691c6018 100644 --- a/docs/models/operations/listprovidersresponse.mdx +++ b/docs/models/operations/listprovidersresponse.mdx @@ -9,4 +9,4 @@ Returns a list of providers | Field | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `Data` | [][operations.ListProvidersData](../../models/operations/listprovidersdata.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [][operations.ListProvidersData](../../models/operations/listprovidersdata.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listrequest.mdx b/docs/models/operations/listrequest.mdx index 9c14a6caf..6c701d095 100644 --- a/docs/models/operations/listrequest.mdx +++ b/docs/models/operations/listrequest.mdx @@ -6,7 +6,7 @@ title: "ListRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `IncludeDisabled` | `*bool` | ➖ | Whether to include disabled API keys in the response | false | -| `IncludeExpired` | `*bool` | ➖ | Whether to include expired API keys in the response. Expired keys are excluded by default and returned only when this is true. | false | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of API keys to skip for pagination | 0 | -| `WorkspaceID` | `*string` | ➖ | Filter API keys by workspace ID. By default, keys in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `IncludeDisabled` | `*bool` | :heavy_minus_sign: | Whether to include disabled API keys in the response | false | +| `IncludeExpired` | `*bool` | :heavy_minus_sign: | Whether to include expired API keys in the response. Expired keys are excluded by default and returned only when this is true. | false | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of API keys to skip for pagination | 0 | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Filter API keys by workspace ID. By default, keys in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/listresponse.mdx b/docs/models/operations/listresponse.mdx index cb8d6a829..43ab0b4e8 100644 --- a/docs/models/operations/listresponse.mdx +++ b/docs/models/operations/listresponse.mdx @@ -9,4 +9,4 @@ List of API keys | Field | Type | Required | Description | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `Data` | [][operations.ListData](../../models/operations/listdata.mdx) | ✅ | List of API keys | \ No newline at end of file +| `Data` | [][operations.ListData](../../models/operations/listdata.mdx) | :heavy_check_mark: | List of API keys | \ No newline at end of file diff --git a/docs/models/operations/listscimgroupmappingsrequest.mdx b/docs/models/operations/listscimgroupmappingsrequest.mdx index 68638e51c..4a97e8a5d 100644 --- a/docs/models/operations/listscimgroupmappingsrequest.mdx +++ b/docs/models/operations/listscimgroupmappingsrequest.mdx @@ -6,5 +6,5 @@ title: "ListScimGroupMappingsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listscimgroupmappingsresponse.mdx b/docs/models/operations/listscimgroupmappingsresponse.mdx index 171a46add..1724a2112 100644 --- a/docs/models/operations/listscimgroupmappingsresponse.mdx +++ b/docs/models/operations/listscimgroupmappingsresponse.mdx @@ -6,4 +6,4 @@ title: "ListScimGroupMappingsResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListScimGroupMappingsResponse](../../models/components/listscimgroupmappingsresponse.mdx) | ✅ | N/A | \ No newline at end of file +| `Result` | [components.ListScimGroupMappingsResponse](../../models/components/listscimgroupmappingsresponse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listscimgroupsrequest.mdx b/docs/models/operations/listscimgroupsrequest.mdx index f01cc1b95..e5c722c5e 100644 --- a/docs/models/operations/listscimgroupsrequest.mdx +++ b/docs/models/operations/listscimgroupsrequest.mdx @@ -6,7 +6,7 @@ title: "ListScimGroupsRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `DisplayName` | `*string` | ➖ | Exact match filter on display_name. Omitted or empty returns groups unfiltered by name (subject to offset/limit). When external_id is also present, both must match. | Engineering | -| `ExternalID` | `*string` | ➖ | Exact match filter on external_id, e.g. the identity provider (such as Entra ID) group object ID. Omitted or empty returns groups unfiltered by external_id (subject to offset/limit). When display_name is also present, both must match. | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `DisplayName` | `*string` | :heavy_minus_sign: | Exact match filter on display_name. Omitted or empty returns groups unfiltered by name (subject to offset/limit). When external_id is also present, both must match. | Engineering | +| `ExternalID` | `*string` | :heavy_minus_sign: | Exact match filter on external_id, e.g. the identity provider (such as Entra ID) group object ID. Omitted or empty returns groups unfiltered by external_id (subject to offset/limit). When display_name is also present, both must match. | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | \ No newline at end of file diff --git a/docs/models/operations/listscimgroupsresponse.mdx b/docs/models/operations/listscimgroupsresponse.mdx index 17746edcc..95eac2366 100644 --- a/docs/models/operations/listscimgroupsresponse.mdx +++ b/docs/models/operations/listscimgroupsresponse.mdx @@ -6,4 +6,4 @@ title: "ListScimGroupsResponse" | Field | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Result` | [components.ListScimGroupsResponse](../../models/components/listscimgroupsresponse.mdx) | ✅ | N/A | \ No newline at end of file +| `Result` | [components.ListScimGroupsResponse](../../models/components/listscimgroupsresponse.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listtoolsrequest.mdx b/docs/models/operations/listtoolsrequest.mdx index a5a2efd67..aea2db8b1 100644 --- a/docs/models/operations/listtoolsrequest.mdx +++ b/docs/models/operations/listtoolsrequest.mdx @@ -6,6 +6,6 @@ title: "ListToolsRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100). When both offset and limit are omitted, the full list is returned | 50 | -| `APIFormat` | [*operations.APIFormat](../../models/operations/apiformat.mdx) | ➖ | Only tools usable on this API format | responses | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100). When both offset and limit are omitted, the full list is returned | 50 | +| `APIFormat` | [*operations.APIFormat](../../models/operations/apiformat.mdx) | :heavy_minus_sign: | Only tools usable on this API format | responses | \ No newline at end of file diff --git a/docs/models/operations/listtoolssecurity.mdx b/docs/models/operations/listtoolssecurity.mdx index 0653853e7..5047967a3 100644 --- a/docs/models/operations/listtoolssecurity.mdx +++ b/docs/models/operations/listtoolssecurity.mdx @@ -6,4 +6,4 @@ title: "ListToolsSecurity" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `Bearer` | `string` | ✅ | N/A | \ No newline at end of file +| `Bearer` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/listvaultsecretsrequest.mdx b/docs/models/operations/listvaultsecretsrequest.mdx index 6af570247..404a4739c 100644 --- a/docs/models/operations/listvaultsecretsrequest.mdx +++ b/docs/models/operations/listvaultsecretsrequest.mdx @@ -6,5 +6,5 @@ title: "ListVaultSecretsRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `Limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `Offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file +| `Limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `Offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | \ No newline at end of file diff --git a/docs/models/operations/listvideoscontentrequest.mdx b/docs/models/operations/listvideoscontentrequest.mdx index 00317678a..811aed19b 100644 --- a/docs/models/operations/listvideoscontentrequest.mdx +++ b/docs/models/operations/listvideoscontentrequest.mdx @@ -6,5 +6,5 @@ title: "ListVideosContentRequest" | Field | Type | Required | Description | Example | | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | -| `JobID` | `string` | ✅ | N/A | job-abc123 | -| `Index` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | 0 | \ No newline at end of file +| `JobID` | `string` | :heavy_check_mark: | N/A | job-abc123 | +| `Index` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | 0 | \ No newline at end of file diff --git a/docs/models/operations/listworkspacebudgetsrequest.mdx b/docs/models/operations/listworkspacebudgetsrequest.mdx index 27445053b..285ebe836 100644 --- a/docs/models/operations/listworkspacebudgetsrequest.mdx +++ b/docs/models/operations/listworkspacebudgetsrequest.mdx @@ -6,4 +6,4 @@ title: "ListWorkspaceBudgetsRequest" | Field | Type | Required | Description | Example | | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | ------------------------------- | -| `WorkspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | \ No newline at end of file +| `WorkspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | \ No newline at end of file diff --git a/docs/models/operations/listworkspacemembersrequest.mdx b/docs/models/operations/listworkspacemembersrequest.mdx index b079e7468..1d615f5d3 100644 --- a/docs/models/operations/listworkspacemembersrequest.mdx +++ b/docs/models/operations/listworkspacemembersrequest.mdx @@ -6,6 +6,6 @@ title: "ListWorkspaceMembersRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listworkspacemembersresponse.mdx b/docs/models/operations/listworkspacemembersresponse.mdx index b431f77fb..6aea6b68f 100644 --- a/docs/models/operations/listworkspacemembersresponse.mdx +++ b/docs/models/operations/listworkspacemembersresponse.mdx @@ -6,4 +6,4 @@ title: "ListWorkspaceMembersResponse" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListWorkspaceMembersResponse](../../models/components/listworkspacemembersresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"created_at": "2025-08-24T10:30:00Z",
"id": "660e8400-e29b-41d4-a716-446655440000",
"role": "member",
"user_id": "user_abc123",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListWorkspaceMembersResponse](../../models/components/listworkspacemembersresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"created_at": "2025-08-24T10:30:00Z",
"id": "660e8400-e29b-41d4-a716-446655440000",
"role": "member",
"user_id": "user_abc123",
"workspace_id": "550e8400-e29b-41d4-a716-446655440000"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/listworkspacesrequest.mdx b/docs/models/operations/listworkspacesrequest.mdx index a06c56edc..ce7543051 100644 --- a/docs/models/operations/listworkspacesrequest.mdx +++ b/docs/models/operations/listworkspacesrequest.mdx @@ -6,5 +6,5 @@ title: "ListWorkspacesRequest" | Field | Type | Required | Description | Example | | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | --------------------------------------------- | -| `Offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `Limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | \ No newline at end of file +| `Offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | \ No newline at end of file diff --git a/docs/models/operations/listworkspacesresponse.mdx b/docs/models/operations/listworkspacesresponse.mdx index cadbd892f..856a6e210 100644 --- a/docs/models/operations/listworkspacesresponse.mdx +++ b/docs/models/operations/listworkspacesresponse.mdx @@ -6,4 +6,4 @@ title: "ListWorkspacesResponse" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Result` | [components.ListWorkspacesResponse](../../models/components/listworkspacesresponse.mdx) | ✅ | N/A | \{
"data": [
\{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
}
],
"total_count": 1
} | \ No newline at end of file +| `Result` | [components.ListWorkspacesResponse](../../models/components/listworkspacesresponse.mdx) | :heavy_check_mark: | N/A | \{
"data": [
\{
"created_at": "2025-08-24T10:30:00Z",
"created_by": "user_abc123",
"default_guardrail_id": "595d5849-7e86-51fd-a7c0-705c34e4afff",
"default_image_model": "openai/dall-e-3",
"default_provider_sort": "price",
"default_text_model": "openai/gpt-4o",
"description": "Production environment workspace",
"disabled_server_tools": null,
"id": "550e8400-e29b-41d4-a716-446655440000",
"include_byok_in_budgets": false,
"io_logging_api_key_ids": null,
"io_logging_sampling_rate": 1,
"is_data_discount_logging_enabled": true,
"is_observability_broadcast_enabled": false,
"is_observability_io_logging_enabled": false,
"name": "Production",
"slug": "production",
"updated_at": "2025-08-24T15:45:00Z"
}
],
"total_count": 1
} | \ No newline at end of file diff --git a/docs/models/operations/metadata.mdx b/docs/models/operations/metadata.mdx index 661a437ef..60f9878f4 100644 --- a/docs/models/operations/metadata.mdx +++ b/docs/models/operations/metadata.mdx @@ -6,6 +6,6 @@ title: "Metadata" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `QueryTimeMs` | `float64` | ✅ | N/A | -| `RowCount` | `int64` | ✅ | N/A | -| `Truncated` | `bool` | ✅ | N/A | \ No newline at end of file +| `QueryTimeMs` | `float64` | :heavy_check_mark: | N/A | +| `RowCount` | `int64` | :heavy_check_mark: | N/A | +| `Truncated` | `bool` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/metric.mdx b/docs/models/operations/metric.mdx index 3c7114eba..9c983230a 100644 --- a/docs/models/operations/metric.mdx +++ b/docs/models/operations/metric.mdx @@ -6,7 +6,7 @@ title: "Metric" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `DisplayFormat` | [operations.DisplayFormat](../../models/operations/displayformat.mdx) | ✅ | How this metric value should be formatted for display (e.g. percent → multiply by 100 and append %, currency → prefix with $) | number | -| `DisplayLabel` | `string` | ✅ | Human-readable label | Request Count | -| `IsRate` | `bool` | ✅ | Whether this metric is a rate/ratio (averaged, not summed) | | -| `Name` | `string` | ✅ | Metric identifier used in query requests | request_count | \ No newline at end of file +| `DisplayFormat` | [operations.DisplayFormat](../../models/operations/displayformat.mdx) | :heavy_check_mark: | How this metric value should be formatted for display (e.g. percent → multiply by 100 and append %, currency → prefix with $) | number | +| `DisplayLabel` | `string` | :heavy_check_mark: | Human-readable label | Request Count | +| `IsRate` | `bool` | :heavy_check_mark: | Whether this metric is a rate/ratio (averaged, not summed) | | +| `Name` | `string` | :heavy_check_mark: | Metric identifier used in query requests | request_count | \ No newline at end of file diff --git a/docs/models/operations/operator.mdx b/docs/models/operations/operator.mdx index 5ce4c9608..786e56b5d 100644 --- a/docs/models/operations/operator.mdx +++ b/docs/models/operations/operator.mdx @@ -6,5 +6,5 @@ title: "Operator" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | ------------------------------------------------------------------ | -| `Name` | [operations.OperatorName](../../models/operations/operatorname.mdx) | ✅ | Operator identifier used in filter definitions | eq | -| `ValueType` | [operations.ValueType](../../models/operations/valuetype.mdx) | ✅ | Whether the operator expects a single value or an array | | \ No newline at end of file +| `Name` | [operations.OperatorName](../../models/operations/operatorname.mdx) | :heavy_check_mark: | Operator identifier used in filter definitions | eq | +| `ValueType` | [operations.ValueType](../../models/operations/valuetype.mdx) | :heavy_check_mark: | Whether the operator expects a single value or an array | | \ No newline at end of file diff --git a/docs/models/operations/orderby.mdx b/docs/models/operations/orderby.mdx index 2b32e6627..ddf319027 100644 --- a/docs/models/operations/orderby.mdx +++ b/docs/models/operations/orderby.mdx @@ -6,5 +6,5 @@ title: "OrderBy" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Direction` | [operations.Direction](../../models/operations/direction.mdx) | ✅ | N/A | | -| `Field` | `string` | ✅ | Field to order by: a metric included in `metrics` (or "request_count", which may be ordered by without being requested), a requested dimension, or "date". | request_count | \ No newline at end of file +| `Direction` | [operations.Direction](../../models/operations/direction.mdx) | :heavy_check_mark: | N/A | | +| `Field` | `string` | :heavy_check_mark: | Field to order by: a metric included in `metrics` (or "request_count", which may be ordered by without being requested), a requested dimension, or "date". | request_count | \ No newline at end of file diff --git a/docs/models/operations/promotecontainerfilerequest.mdx b/docs/models/operations/promotecontainerfilerequest.mdx index 88430dcc3..4b11aa693 100644 --- a/docs/models/operations/promotecontainerfilerequest.mdx +++ b/docs/models/operations/promotecontainerfilerequest.mdx @@ -6,5 +6,5 @@ title: "PromoteContainerFileRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ContainerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `FileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file +| `ContainerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `FileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | \ No newline at end of file diff --git a/docs/models/operations/prompttokensdetails.mdx b/docs/models/operations/prompttokensdetails.mdx index 9002770fa..2e4644f4b 100644 --- a/docs/models/operations/prompttokensdetails.mdx +++ b/docs/models/operations/prompttokensdetails.mdx @@ -9,8 +9,8 @@ Per-modality token breakdown. Only present when the input contains 2+ modalities | Field | Type | Required | Description | Example | | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `AudioTokens` | `*int64` | ➖ | Number of audio tokens in the input | | -| `FileTokens` | `*int64` | ➖ | Number of file/document tokens in the input | | -| `ImageTokens` | `*int64` | ➖ | Number of image tokens in the input | 258 | -| `TextTokens` | `*int64` | ➖ | Number of text tokens in the input | 8 | -| `VideoTokens` | `*int64` | ➖ | Number of video tokens in the input | | \ No newline at end of file +| `AudioTokens` | `*int64` | :heavy_minus_sign: | Number of audio tokens in the input | | +| `FileTokens` | `*int64` | :heavy_minus_sign: | Number of file/document tokens in the input | | +| `ImageTokens` | `*int64` | :heavy_minus_sign: | Number of image tokens in the input | 258 | +| `TextTokens` | `*int64` | :heavy_minus_sign: | Number of text tokens in the input | 8 | +| `VideoTokens` | `*int64` | :heavy_minus_sign: | Number of video tokens in the input | | \ No newline at end of file diff --git a/docs/models/operations/provisioninternrequest.mdx b/docs/models/operations/provisioninternrequest.mdx deleted file mode 100644 index 95d772496..000000000 --- a/docs/models/operations/provisioninternrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "ProvisionInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/queryanalyticsdata2.mdx b/docs/models/operations/queryanalyticsdata2.mdx index 6bc62f306..659d18b72 100644 --- a/docs/models/operations/queryanalyticsdata2.mdx +++ b/docs/models/operations/queryanalyticsdata2.mdx @@ -6,7 +6,7 @@ title: "QueryAnalyticsData2" | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `CachedAt` | `*float64` | ➖ | N/A | -| `Data` | [][operations.QueryAnalyticsData1](../../models/operations/queryanalyticsdata1.mdx) | ✅ | N/A | -| `Metadata` | [operations.Metadata](../../models/operations/metadata.mdx) | ✅ | N/A | -| `Warnings` | []`string` | ➖ | Warnings about filter resolution issues (e.g. unresolvable api_key_id hashes). The query still runs normally; these inform the caller that some filter values could not be resolved. | \ No newline at end of file +| `CachedAt` | `*float64` | :heavy_minus_sign: | N/A | +| `Data` | [][operations.QueryAnalyticsData1](../../models/operations/queryanalyticsdata1.mdx) | :heavy_check_mark: | N/A | +| `Metadata` | [operations.Metadata](../../models/operations/metadata.mdx) | :heavy_check_mark: | N/A | +| `Warnings` | []`string` | :heavy_minus_sign: | Warnings about filter resolution issues (e.g. unresolvable api_key_id hashes). The query still runs normally; these inform the caller that some filter values could not be resolved. | \ No newline at end of file diff --git a/docs/models/operations/queryanalyticsrequest.mdx b/docs/models/operations/queryanalyticsrequest.mdx index a3fa0d328..8d6ace311 100644 --- a/docs/models/operations/queryanalyticsrequest.mdx +++ b/docs/models/operations/queryanalyticsrequest.mdx @@ -6,13 +6,13 @@ title: "QueryAnalyticsRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ClassifierDimensions` | [*operations.ClassifierDimensions](../../models/operations/classifierdimensions.mdx) | ➖ | Group results by custom classifier tags, breaking down metrics by the specified dimension values. Requires an active classifier on the workspace. | | -| `ClassifierFilters` | [*operations.ClassifierFilters](../../models/operations/classifierfilters.mdx) | ➖ | Filter results to generations with specific classifier tag values. Can be combined with classifier_dimensions (must use the same classifier_id) or used independently with standard dimensions. | | -| `Dimensions` | []`string` | ➖ | N/A | | -| `Filters` | [][operations.Filter](../../models/operations/filter.mdx) | ➖ | N/A | | -| `Granularity` | `*string` | ➖ | Time granularity | day | -| `GroupLimit` | `*int64` | ➖ | Maximum rows per distinct combination of dimensions. When omitted on time-series queries (granularity + dimensions), auto-computed to avoid truncating time windows. Explicit values override the default and may truncate time buckets if set lower than the number of buckets in the range. Ignored when no dimensions are specified. | 100 | -| `Limit` | `*int64` | ➖ | Maximum total rows returned. Defaults to 1000. On time-series queries with dimensions and no explicit group_limit, the server may raise this to accommodate the expected number of unique time-bucket/dimension combinations. | | -| `Metrics` | []`string` | ✅ | N/A | | -| `OrderBy` | [*operations.OrderBy](../../models/operations/orderby.mdx) | ➖ | N/A | | -| `TimeRange` | [*operations.TimeRange](../../models/operations/timerange.mdx) | ➖ | N/A | | \ No newline at end of file +| `ClassifierDimensions` | [*operations.ClassifierDimensions](../../models/operations/classifierdimensions.mdx) | :heavy_minus_sign: | Group results by custom classifier tags, breaking down metrics by the specified dimension values. Requires an active classifier on the workspace. | | +| `ClassifierFilters` | [*operations.ClassifierFilters](../../models/operations/classifierfilters.mdx) | :heavy_minus_sign: | Filter results to generations with specific classifier tag values. Can be combined with classifier_dimensions (must use the same classifier_id) or used independently with standard dimensions. | | +| `Dimensions` | []`string` | :heavy_minus_sign: | N/A | | +| `Filters` | [][operations.Filter](../../models/operations/filter.mdx) | :heavy_minus_sign: | N/A | | +| `Granularity` | `*string` | :heavy_minus_sign: | Time granularity | day | +| `GroupLimit` | `*int64` | :heavy_minus_sign: | Maximum rows per distinct combination of dimensions. When omitted on time-series queries (granularity + dimensions), auto-computed to avoid truncating time windows. Explicit values override the default and may truncate time buckets if set lower than the number of buckets in the range. Ignored when no dimensions are specified. | 100 | +| `Limit` | `*int64` | :heavy_minus_sign: | Maximum total rows returned. Defaults to 1000. On time-series queries with dimensions and no explicit group_limit, the server may raise this to accommodate the expected number of unique time-bucket/dimension combinations. | | +| `Metrics` | []`string` | :heavy_check_mark: | N/A | | +| `OrderBy` | [*operations.OrderBy](../../models/operations/orderby.mdx) | :heavy_minus_sign: | N/A | | +| `TimeRange` | [*operations.TimeRange](../../models/operations/timerange.mdx) | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/queryanalyticsresponse.mdx b/docs/models/operations/queryanalyticsresponse.mdx index 96c8f451d..1480df4ab 100644 --- a/docs/models/operations/queryanalyticsresponse.mdx +++ b/docs/models/operations/queryanalyticsresponse.mdx @@ -9,4 +9,4 @@ Analytics query results | Field | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `Data` | [operations.QueryAnalyticsData2](../../models/operations/queryanalyticsdata2.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [operations.QueryAnalyticsData2](../../models/operations/queryanalyticsdata2.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/ratelimit.mdx b/docs/models/operations/ratelimit.mdx index 8766c1733..f9429824d 100644 --- a/docs/models/operations/ratelimit.mdx +++ b/docs/models/operations/ratelimit.mdx @@ -4,13 +4,13 @@ title: "~~RateLimit~~" Legacy rate limit information about a key. Will always return -1. -> ⚠️ **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. +> :warning: **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. ## Fields | Field | Type | Required | Description | Example | | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -------------------------------------------- | -| `Interval` | `string` | ✅ | Rate limit interval | 1h | -| `Note` | `string` | ✅ | Note about the rate limit | This field is deprecated and safe to ignore. | -| `Requests` | `int64` | ✅ | Number of requests allowed per interval | 1000 | \ No newline at end of file +| `Interval` | `string` | :heavy_check_mark: | Rate limit interval | 1h | +| `Note` | `string` | :heavy_check_mark: | Note about the rate limit | This field is deprecated and safe to ignore. | +| `Requests` | `int64` | :heavy_check_mark: | Number of requests allowed per interval | 1000 | \ No newline at end of file diff --git a/docs/models/operations/result.mdx b/docs/models/operations/result.mdx index 8786c01d0..6a3ad02a4 100644 --- a/docs/models/operations/result.mdx +++ b/docs/models/operations/result.mdx @@ -9,6 +9,6 @@ A single rerank result | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `Document` | [operations.DocumentResponse](../../models/operations/documentresponse.mdx) | ✅ | The document object echoing the original input (text and/or image) | | -| `Index` | `int64` | ✅ | Index of the document in the original input list | 0 | -| `RelevanceScore` | `float64` | ✅ | Relevance score of the document to the query | 0.98 | \ No newline at end of file +| `Document` | [operations.DocumentResponse](../../models/operations/documentresponse.mdx) | :heavy_check_mark: | The document object echoing the original input (text and/or image) | | +| `Index` | `int64` | :heavy_check_mark: | Index of the document in the original input list | 0 | +| `RelevanceScore` | `float64` | :heavy_check_mark: | Relevance score of the document to the query | 0.98 | \ No newline at end of file diff --git a/docs/models/operations/sendchatcompletionrequestrequest.mdx b/docs/models/operations/sendchatcompletionrequestrequest.mdx index 60c0fab93..c0c00e2aa 100644 --- a/docs/models/operations/sendchatcompletionrequestrequest.mdx +++ b/docs/models/operations/sendchatcompletionrequestrequest.mdx @@ -6,5 +6,5 @@ title: "SendChatCompletionRequestRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `XOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | ➖ | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | -| `ChatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | ✅ | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | \ No newline at end of file +| `XOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | :heavy_minus_sign: | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | +| `ChatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | \ No newline at end of file diff --git a/docs/models/operations/signinterndaemonaccessrequestrequest.mdx b/docs/models/operations/signinterndaemonaccessrequestrequest.mdx deleted file mode 100644 index 87cbe8857..000000000 --- a/docs/models/operations/signinterndaemonaccessrequestrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "SignInternDaemonAccessRequestRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `SignInternDaemonRequest` | [components.SignInternDaemonRequest](../../models/components/signinterndaemonrequest.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/operations/signinterndaemonaccessrequestresponse.mdx b/docs/models/operations/signinterndaemonaccessrequestresponse.mdx deleted file mode 100644 index e5d118fb5..000000000 --- a/docs/models/operations/signinterndaemonaccessrequestresponse.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "SignInternDaemonAccessRequestResponse" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | | -| `Result` | [components.SignInternDaemonResponse](../../models/components/signinterndaemonresponse.mdx) | ✅ | N/A | \{
"x-ori-invoke-signature": "MEUCIQ...",
"x-ori-invoke-timestamp": "1789000000",
"x-ori-invoke-user": "user_2abc"
} | \ No newline at end of file diff --git a/docs/models/operations/signinterndaemonrequestrequest.mdx b/docs/models/operations/signinterndaemonrequestrequest.mdx deleted file mode 100644 index e8f7436c8..000000000 --- a/docs/models/operations/signinterndaemonrequestrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "SignInternDaemonRequestRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `SignInternDaemonRequest` | [components.SignInternDaemonRequest](../../models/components/signinterndaemonrequest.mdx) | ✅ | N/A | | \ No newline at end of file diff --git a/docs/models/operations/signinterndaemonrequestresponse.mdx b/docs/models/operations/signinterndaemonrequestresponse.mdx deleted file mode 100644 index 32b5e602b..000000000 --- a/docs/models/operations/signinterndaemonrequestresponse.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "SignInternDaemonRequestResponse" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -| `Headers` | map[string][]`string` | ✅ | N/A | | -| `Result` | [components.SignInternDaemonResponse](../../models/components/signinterndaemonresponse.mdx) | ✅ | N/A | \{
"x-ori-invoke-signature": "MEUCIQ...",
"x-ori-invoke-timestamp": "1789000000",
"x-ori-invoke-user": "user_2abc"
} | \ No newline at end of file diff --git a/docs/models/operations/status.mdx b/docs/models/operations/status.mdx deleted file mode 100644 index d7733e756..000000000 --- a/docs/models/operations/status.mdx +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Status" ---- - -## Example Usage - -```go -import ( - "github.com/OpenRouterTeam/go-sdk/models/operations" -) - -value := operations.StatusAwaitingSlackInstall - -// Open enum: custom values can be created with a direct type cast -custom := operations.Status("custom_value") -``` - - -## Values - -| Name | Value | -| ---------------------------- | ---------------------------- | -| `StatusAwaitingSlackInstall` | awaiting_slack_install | -| `StatusQueued` | queued | -| `StatusProvisioning` | provisioning | -| `StatusRunning` | running | -| `StatusFailed` | failed | -| `StatusStopped` | stopped | -| `StatusDestroying` | destroying | -| `StatusDestroyFailed` | destroy_failed | \ No newline at end of file diff --git a/docs/models/operations/storeinternvaultsecretrequest.mdx b/docs/models/operations/storeinternvaultsecretrequest.mdx index 9e07cd195..e1a5e3553 100644 --- a/docs/models/operations/storeinternvaultsecretrequest.mdx +++ b/docs/models/operations/storeinternvaultsecretrequest.mdx @@ -6,6 +6,6 @@ title: "StoreInternVaultSecretRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `Name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `VaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | ✅ | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | \ No newline at end of file +| `InternID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `Name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `VaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | :heavy_check_mark: | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | \ No newline at end of file diff --git a/docs/models/operations/storevaultsecretrequest.mdx b/docs/models/operations/storevaultsecretrequest.mdx index b003c000b..cb88f034d 100644 --- a/docs/models/operations/storevaultsecretrequest.mdx +++ b/docs/models/operations/storevaultsecretrequest.mdx @@ -6,5 +6,5 @@ title: "StoreVaultSecretRequest" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `Name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `VaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | ✅ | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | \ No newline at end of file +| `Name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `VaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | :heavy_check_mark: | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | \ No newline at end of file diff --git a/docs/models/operations/suspendinternrequest.mdx b/docs/models/operations/suspendinternrequest.mdx deleted file mode 100644 index 13ed51bfc..000000000 --- a/docs/models/operations/suspendinternrequest.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "SuspendInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | ----------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | \ No newline at end of file diff --git a/docs/models/operations/timerange.mdx b/docs/models/operations/timerange.mdx index 36ae7e8ee..b8a3d5f87 100644 --- a/docs/models/operations/timerange.mdx +++ b/docs/models/operations/timerange.mdx @@ -6,5 +6,5 @@ title: "TimeRange" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | -| `End` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | -| `Start` | [time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | \ No newline at end of file +| `End` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | +| `Start` | [time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp. Must include seconds (YYYY-MM-DDTHH:MM:SSZ; fractional seconds allowed); minute-precision timestamps are rejected. | 2027-12-31T23:59:59Z | \ No newline at end of file diff --git a/docs/models/operations/updatebyokkeyrequest.mdx b/docs/models/operations/updatebyokkeyrequest.mdx index 3260099e3..bc1e0e9cf 100644 --- a/docs/models/operations/updatebyokkeyrequest.mdx +++ b/docs/models/operations/updatebyokkeyrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateBYOKKeyRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | -| `UpdateBYOKKeyRequest` | [components.UpdateBYOKKeyRequest](../../models/components/updatebyokkeyrequest.mdx) | ✅ | N/A | \{
"disabled": false,
"name": "Updated OpenAI Key"
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | +| `UpdateBYOKKeyRequest` | [components.UpdateBYOKKeyRequest](../../models/components/updatebyokkeyrequest.mdx) | :heavy_check_mark: | N/A | \{
"disabled": false,
"name": "Updated OpenAI Key"
} | \ No newline at end of file diff --git a/docs/models/operations/updateexternaluserrequest.mdx b/docs/models/operations/updateexternaluserrequest.mdx index 85e02c1a8..58dba6f4f 100644 --- a/docs/models/operations/updateexternaluserrequest.mdx +++ b/docs/models/operations/updateexternaluserrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateExternalUserRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `User` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `UpdateExternalUserRequest` | [components.UpdateExternalUserRequest](../../models/components/updateexternaluserrequest.mdx) | ✅ | N/A | \{
"is_active": true
} | \ No newline at end of file +| `User` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `UpdateExternalUserRequest` | [components.UpdateExternalUserRequest](../../models/components/updateexternaluserrequest.mdx) | :heavy_check_mark: | N/A | \{
"is_active": true
} | \ No newline at end of file diff --git a/docs/models/operations/updateguardrailrequest.mdx b/docs/models/operations/updateguardrailrequest.mdx index 7a1eb0704..696bfa2bf 100644 --- a/docs/models/operations/updateguardrailrequest.mdx +++ b/docs/models/operations/updateguardrailrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateGuardrailRequest" | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The unique identifier of the guardrail to update | 550e8400-e29b-41d4-a716-446655440000 | -| `UpdateGuardrailRequest` | [components.UpdateGuardrailRequest](../../models/components/updateguardrailrequest.mdx) | ✅ | N/A | \{
"description": "Updated description",
"limit_usd": 75,
"name": "Updated Guardrail Name",
"reset_interval": "weekly"
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to update | 550e8400-e29b-41d4-a716-446655440000 | +| `UpdateGuardrailRequest` | [components.UpdateGuardrailRequest](../../models/components/updateguardrailrequest.mdx) | :heavy_check_mark: | N/A | \{
"description": "Updated description",
"limit_usd": 75,
"name": "Updated Guardrail Name",
"reset_interval": "weekly"
} | \ No newline at end of file diff --git a/docs/models/operations/updateinternrequest.mdx b/docs/models/operations/updateinternrequest.mdx deleted file mode 100644 index 0224581ca..000000000 --- a/docs/models/operations/updateinternrequest.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "UpdateInternRequest" ---- - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `InternID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `UpdateInternRequest` | [components.UpdateInternRequest](../../models/components/updateinternrequest.mdx) | ✅ | N/A | \{
"description": "Researches customer questions",
"model": "openai/gpt-5.4"
} | \ No newline at end of file diff --git a/docs/models/operations/updatekeysdata.mdx b/docs/models/operations/updatekeysdata.mdx index eff153a50..f54cdf5f8 100644 --- a/docs/models/operations/updatekeysdata.mdx +++ b/docs/models/operations/updatekeysdata.mdx @@ -9,26 +9,26 @@ The updated API key information | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `BYOKUsage` | `float64` | ✅ | Total external BYOK usage (in USD) for the API key | 17.38 | -| `BYOKUsageDaily` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC day | 17.38 | -| `BYOKUsageMonthly` | `float64` | ✅ | External BYOK usage (in USD) for current UTC month | 17.38 | -| `BYOKUsageWeekly` | `float64` | ✅ | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | -| `CreatedAt` | `string` | ✅ | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | -| `CreatorUserID` | `*string` | ✅ | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | -| `Disabled` | `bool` | ✅ | Whether the API key is disabled | false | -| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | ➖ | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | -| `ExternalUser` | `*string` | ✅ | Partner's end-user identifier used for attribution. | null | -| `Hash` | `string` | ✅ | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `IncludeBYOKInLimit` | `bool` | ✅ | Whether to include external BYOK usage in the credit limit | false | -| `Label` | `string` | ✅ | Human-readable label for the API key | sk-or-v1-0e6...1c96 | -| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | ✅ | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | -| `Limit` | `*float64` | ✅ | Spending limit for the API key in USD | 100 | -| `LimitRemaining` | `*float64` | ✅ | Remaining spending limit in USD | 74.5 | -| `LimitReset` | `*string` | ✅ | Type of limit reset for the API key | monthly | -| `Name` | `string` | ✅ | Name of the API key | My Production Key | -| `UpdatedAt` | `*string` | ✅ | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | -| `Usage` | `float64` | ✅ | Total OpenRouter credit usage (in USD) for the API key | 25.5 | -| `UsageDaily` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | -| `UsageMonthly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | -| `UsageWeekly` | `float64` | ✅ | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | -| `WorkspaceID` | `string` | ✅ | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `BYOKUsage` | `float64` | :heavy_check_mark: | Total external BYOK usage (in USD) for the API key | 17.38 | +| `BYOKUsageDaily` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC day | 17.38 | +| `BYOKUsageMonthly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for current UTC month | 17.38 | +| `BYOKUsageWeekly` | `float64` | :heavy_check_mark: | External BYOK usage (in USD) for the current UTC week (Monday-Sunday) | 17.38 | +| `CreatedAt` | `string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was created | 2025-08-24T10:30:00Z | +| `CreatorUserID` | `*string` | :heavy_check_mark: | The user ID of the key creator. For organization-owned keys, this is the member who created the key. For individual users, this is the user's own ID. | user_2dHFtVWx2n56w6HkM0000000000 | +| `Disabled` | `bool` | :heavy_check_mark: | Whether the API key is disabled | false | +| `ExpiresAt` | optionalnullable.OptionalNullable[[time.Time](https://pkg.go.dev/time#Time)] | :heavy_minus_sign: | ISO 8601 UTC timestamp when the API key expires, or null if no expiration | 2027-12-31T23:59:59Z | +| `ExternalUser` | `*string` | :heavy_check_mark: | Partner's end-user identifier used for attribution. | null | +| `Hash` | `string` | :heavy_check_mark: | Unique hash identifier for the API key | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `IncludeBYOKInLimit` | `bool` | :heavy_check_mark: | Whether to include external BYOK usage in the credit limit | false | +| `Label` | `string` | :heavy_check_mark: | Human-readable label for the API key | sk-or-v1-0e6...1c96 | +| `LastUsedAt` | [*time.Time](https://pkg.go.dev/time#Time) | :heavy_check_mark: | ISO 8601 UTC timestamp of the most recent usage recorded for the API key, or null if no usage has been recorded since the end of 2025 | 2026-09-15T15:45:00Z | +| `Limit` | `*float64` | :heavy_check_mark: | Spending limit for the API key in USD | 100 | +| `LimitRemaining` | `*float64` | :heavy_check_mark: | Remaining spending limit in USD | 74.5 | +| `LimitReset` | `*string` | :heavy_check_mark: | Type of limit reset for the API key | monthly | +| `Name` | `string` | :heavy_check_mark: | Name of the API key | My Production Key | +| `UpdatedAt` | `*string` | :heavy_check_mark: | ISO 8601 timestamp of when the API key was last updated | 2025-08-24T15:45:00Z | +| `Usage` | `float64` | :heavy_check_mark: | Total OpenRouter credit usage (in USD) for the API key | 25.5 | +| `UsageDaily` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC day | 25.5 | +| `UsageMonthly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC month | 25.5 | +| `UsageWeekly` | `float64` | :heavy_check_mark: | OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday) | 25.5 | +| `WorkspaceID` | `string` | :heavy_check_mark: | The workspace ID this API key belongs to. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/updatekeysrequest.mdx b/docs/models/operations/updatekeysrequest.mdx index ea4ecae6d..b77a48fae 100644 --- a/docs/models/operations/updatekeysrequest.mdx +++ b/docs/models/operations/updatekeysrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateKeysRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -| `Hash` | `string` | ✅ | The hash identifier of the API key to update | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `RequestBody` | [operations.UpdateKeysRequestBody](../../models/operations/updatekeysrequestbody.mdx) | ✅ | N/A | \{
"disabled": false,
"include_byok_in_limit": true,
"limit": 75,
"limit_reset": "daily",
"name": "Updated API Key Name"
} | \ No newline at end of file +| `Hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to update | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `RequestBody` | [operations.UpdateKeysRequestBody](../../models/operations/updatekeysrequestbody.mdx) | :heavy_check_mark: | N/A | \{
"disabled": false,
"include_byok_in_limit": true,
"limit": 75,
"limit_reset": "daily",
"name": "Updated API Key Name"
} | \ No newline at end of file diff --git a/docs/models/operations/updatekeysrequestbody.mdx b/docs/models/operations/updatekeysrequestbody.mdx index 5541a96c4..b00baa04a 100644 --- a/docs/models/operations/updatekeysrequestbody.mdx +++ b/docs/models/operations/updatekeysrequestbody.mdx @@ -6,9 +6,9 @@ title: "UpdateKeysRequestBody" | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Disabled` | `*bool` | ➖ | Whether to disable the API key | false | -| `IncludeBYOKInLimit` | `*bool` | ➖ | Whether to include BYOK usage in the limit | true | -| `Limit` | optionalnullable.OptionalNullable[`float64`] | ➖ | New spending limit for the API key in USD | 75 | -| `LimitReset` | optionalnullable.OptionalNullable[[operations.UpdateKeysLimitReset](../../models/operations/updatekeyslimitreset.mdx)] | ➖ | New limit reset type for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday. | daily | -| `Name` | `*string` | ➖ | New name for the API key | Updated API Key Name | -| `WorkspaceID` | `*string` | ➖ | Move the API key to this workspace. The key keeps its value; guardrail selections move with it, while other workspace-scoped settings (presets, BYOK keys, broadcast destinations, routing rules) do not. Sending the key's current workspace is a no-op. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file +| `Disabled` | `*bool` | :heavy_minus_sign: | Whether to disable the API key | false | +| `IncludeBYOKInLimit` | `*bool` | :heavy_minus_sign: | Whether to include BYOK usage in the limit | true | +| `Limit` | optionalnullable.OptionalNullable[`float64`] | :heavy_minus_sign: | New spending limit for the API key in USD | 75 | +| `LimitReset` | optionalnullable.OptionalNullable[[operations.UpdateKeysLimitReset](../../models/operations/updatekeyslimitreset.mdx)] | :heavy_minus_sign: | New limit reset type for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday. | daily | +| `Name` | `*string` | :heavy_minus_sign: | New name for the API key | Updated API Key Name | +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Move the API key to this workspace. The key keeps its value; guardrail selections move with it, while other workspace-scoped settings (presets, BYOK keys, broadcast destinations, routing rules) do not. Sending the key's current workspace is a no-op. | 0df9e665-d932-5740-b2c7-b52af166bc11 | \ No newline at end of file diff --git a/docs/models/operations/updatekeysresponse.mdx b/docs/models/operations/updatekeysresponse.mdx index 16e18855a..540395465 100644 --- a/docs/models/operations/updatekeysresponse.mdx +++ b/docs/models/operations/updatekeysresponse.mdx @@ -9,4 +9,4 @@ API key updated successfully | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [operations.UpdateKeysData](../../models/operations/updatekeysdata.mdx) | ✅ | The updated API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file +| `Data` | [operations.UpdateKeysData](../../models/operations/updatekeysdata.mdx) | :heavy_check_mark: | The updated API key information | \{
"byok_usage": 17.38,
"byok_usage_daily": 17.38,
"byok_usage_monthly": 17.38,
"byok_usage_weekly": 17.38,
"created_at": "2025-08-24T10:30:00Z",
"creator_user_id": "user_2dHFtVWx2n56w6HkM0000000000",
"disabled": false,
"expires_at": "2027-12-31T23:59:59Z",
"external_user": null,
"hash": "f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943",
"include_byok_in_limit": false,
"label": "sk-or-v1-0e6...1c96",
"last_used_at": "2026-09-15T15:45:00Z",
"limit": 100,
"limit_remaining": 74.5,
"limit_reset": "monthly",
"name": "My Production Key",
"updated_at": "2025-08-24T15:45:00Z",
"usage": 25.5,
"usage_daily": 25.5,
"usage_monthly": 25.5,
"usage_weekly": 25.5,
"workspace_id": "0df9e665-d932-5740-b2c7-b52af166bc11"
} | \ No newline at end of file diff --git a/docs/models/operations/updateobservabilitydestinationrequest.mdx b/docs/models/operations/updateobservabilitydestinationrequest.mdx index c85bd7dfa..a32db161a 100644 --- a/docs/models/operations/updateobservabilitydestinationrequest.mdx +++ b/docs/models/operations/updateobservabilitydestinationrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateObservabilityDestinationRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `UpdateObservabilityDestinationRequest` | [components.UpdateObservabilityDestinationRequest](../../models/components/updateobservabilitydestinationrequest.mdx) | ✅ | N/A | \{
"enabled": false,
"name": "Updated Langfuse"
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `UpdateObservabilityDestinationRequest` | [components.UpdateObservabilityDestinationRequest](../../models/components/updateobservabilitydestinationrequest.mdx) | :heavy_check_mark: | N/A | \{
"enabled": false,
"name": "Updated Langfuse"
} | \ No newline at end of file diff --git a/docs/models/operations/updateorganizationsettingsresponse.mdx b/docs/models/operations/updateorganizationsettingsresponse.mdx index fedc16e52..d635bc072 100644 --- a/docs/models/operations/updateorganizationsettingsresponse.mdx +++ b/docs/models/operations/updateorganizationsettingsresponse.mdx @@ -9,4 +9,4 @@ Organization settings updated successfully | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `Data` | [components.OrganizationSettings](../../models/components/organizationsettings.mdx) | ✅ | N/A | \{
"id": "org_2dHFtVWx2n56w6HkM0000000000",
"is_filtered_model_catalog_enabled": true
} | \ No newline at end of file +| `Data` | [components.OrganizationSettings](../../models/components/organizationsettings.mdx) | :heavy_check_mark: | N/A | \{
"id": "org_2dHFtVWx2n56w6HkM0000000000",
"is_filtered_model_catalog_enabled": true
} | \ No newline at end of file diff --git a/docs/models/operations/updateprivateendpointpricingrequest.mdx b/docs/models/operations/updateprivateendpointpricingrequest.mdx index dfa3c50f1..187463d9b 100644 --- a/docs/models/operations/updateprivateendpointpricingrequest.mdx +++ b/docs/models/operations/updateprivateendpointpricingrequest.mdx @@ -6,5 +6,5 @@ title: "UpdatePrivateEndpointPricingRequest" | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `UpdatePrivateEndpointPricingRequest` | [components.UpdatePrivateEndpointPricingRequest](../../models/components/updateprivateendpointpricingrequest.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `UpdatePrivateEndpointPricingRequest` | [components.UpdatePrivateEndpointPricingRequest](../../models/components/updateprivateendpointpricingrequest.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/updateprivateendpointrequest.mdx b/docs/models/operations/updateprivateendpointrequest.mdx index 988d76d47..41c773456 100644 --- a/docs/models/operations/updateprivateendpointrequest.mdx +++ b/docs/models/operations/updateprivateendpointrequest.mdx @@ -6,5 +6,5 @@ title: "UpdatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `UpdatePrivateEndpointRequest` | [components.UpdatePrivateEndpointRequest](../../models/components/updateprivateendpointrequest.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `UpdatePrivateEndpointRequest` | [components.UpdatePrivateEndpointRequest](../../models/components/updateprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/updatescimgroupmappingrequest.mdx b/docs/models/operations/updatescimgroupmappingrequest.mdx index b83ad3851..4228979be 100644 --- a/docs/models/operations/updatescimgroupmappingrequest.mdx +++ b/docs/models/operations/updatescimgroupmappingrequest.mdx @@ -6,5 +6,5 @@ title: "UpdateScimGroupMappingRequest" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | N/A | -| `UpdateScimGroupMappingRequest` | [components.UpdateScimGroupMappingRequest](../../models/components/updatescimgroupmappingrequest.mdx) | ✅ | N/A | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | N/A | +| `UpdateScimGroupMappingRequest` | [components.UpdateScimGroupMappingRequest](../../models/components/updatescimgroupmappingrequest.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/updateworkspacerequest.mdx b/docs/models/operations/updateworkspacerequest.mdx index d921d3f58..3403cdcee 100644 --- a/docs/models/operations/updateworkspacerequest.mdx +++ b/docs/models/operations/updateworkspacerequest.mdx @@ -6,5 +6,5 @@ title: "UpdateWorkspaceRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ID` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `UpdateWorkspaceRequest` | [components.UpdateWorkspaceRequest](../../models/components/updateworkspacerequest.mdx) | ✅ | N/A | \{
"name": "Updated Workspace",
"slug": "updated-workspace"
} | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `UpdateWorkspaceRequest` | [components.UpdateWorkspaceRequest](../../models/components/updateworkspacerequest.mdx) | :heavy_check_mark: | N/A | \{
"name": "Updated Workspace",
"slug": "updated-workspace"
} | \ No newline at end of file diff --git a/docs/models/operations/uploadfilefile.mdx b/docs/models/operations/uploadfilefile.mdx index 078a2b7c1..8427f36ed 100644 --- a/docs/models/operations/uploadfilefile.mdx +++ b/docs/models/operations/uploadfilefile.mdx @@ -6,5 +6,5 @@ title: "UploadFileFile" | Field | Type | Required | Description | | ------------------ | ------------------ | ------------------ | ------------------ | -| `FileName` | `string` | ✅ | N/A | -| `Content` | `any` | ✅ | N/A | \ No newline at end of file +| `FileName` | `string` | :heavy_check_mark: | N/A | +| `Content` | `any` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/uploadfilerequest.mdx b/docs/models/operations/uploadfilerequest.mdx index bf269f386..673bebcf6 100644 --- a/docs/models/operations/uploadfilerequest.mdx +++ b/docs/models/operations/uploadfilerequest.mdx @@ -6,6 +6,6 @@ title: "UploadFileRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `WorkspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `RequestBody` | [operations.UploadFileRequestBody](../../models/operations/uploadfilerequestbody.mdx) | ✅ | N/A | | \ No newline at end of file +| `WorkspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `Provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `RequestBody` | [operations.UploadFileRequestBody](../../models/operations/uploadfilerequestbody.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/operations/uploadfilerequestbody.mdx b/docs/models/operations/uploadfilerequestbody.mdx index 9a8f78cae..b16519990 100644 --- a/docs/models/operations/uploadfilerequestbody.mdx +++ b/docs/models/operations/uploadfilerequestbody.mdx @@ -6,4 +6,4 @@ title: "UploadFileRequestBody" | Field | Type | Required | Description | | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `File` | [operations.UploadFileFile](../../models/operations/uploadfilefile.mdx) | ✅ | N/A | \ No newline at end of file +| `File` | [operations.UploadFileFile](../../models/operations/uploadfilefile.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/operations/upsertworkspacebudgetrequest.mdx b/docs/models/operations/upsertworkspacebudgetrequest.mdx index d84d52215..d30a305eb 100644 --- a/docs/models/operations/upsertworkspacebudgetrequest.mdx +++ b/docs/models/operations/upsertworkspacebudgetrequest.mdx @@ -6,6 +6,6 @@ title: "UpsertWorkspaceBudgetRequest" | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `WorkspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | -| `UpsertWorkspaceBudgetRequest` | [components.UpsertWorkspaceBudgetRequest](../../models/components/upsertworkspacebudgetrequest.mdx) | ✅ | N/A | \{
"include_byok_in_budgets": true,
"limit_usd": 100
} | \ No newline at end of file +| `WorkspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `Interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | +| `UpsertWorkspaceBudgetRequest` | [components.UpsertWorkspaceBudgetRequest](../../models/components/upsertworkspacebudgetrequest.mdx) | :heavy_check_mark: | N/A | \{
"include_byok_in_budgets": true,
"limit_usd": 100
} | \ No newline at end of file diff --git a/docs/models/operations/validateprivateendpointrequest.mdx b/docs/models/operations/validateprivateendpointrequest.mdx index afc0b7231..7903e1900 100644 --- a/docs/models/operations/validateprivateendpointrequest.mdx +++ b/docs/models/operations/validateprivateendpointrequest.mdx @@ -6,5 +6,5 @@ title: "ValidatePrivateEndpointRequest" | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ID` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `ValidatePrivateEndpointRequest` | [components.ValidatePrivateEndpointRequest](../../models/components/validateprivateendpointrequest.mdx) | ✅ | N/A | | \ No newline at end of file +| `ID` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `ValidatePrivateEndpointRequest` | [components.ValidatePrivateEndpointRequest](../../models/components/validateprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/badgatewayresponseerror.mdx b/docs/models/sdkerrors/badgatewayresponseerror.mdx index 0ae8aed94..4686d845f 100644 --- a/docs/models/sdkerrors/badgatewayresponseerror.mdx +++ b/docs/models/sdkerrors/badgatewayresponseerror.mdx @@ -9,6 +9,6 @@ Bad Gateway - Provider/upstream API failure | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Error` | [components.BadGatewayResponseErrorData](../../models/components/badgatewayresponseerrordata.mdx) | ✅ | Error data for BadGatewayResponse | \{
"code": 502,
"message": "Provider returned error"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.BadGatewayResponseErrorData](../../models/components/badgatewayresponseerrordata.mdx) | :heavy_check_mark: | Error data for BadGatewayResponse | \{
"code": 502,
"message": "Provider returned error"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/badrequestresponseerror.mdx b/docs/models/sdkerrors/badrequestresponseerror.mdx index 9f6eec8d6..2010057af 100644 --- a/docs/models/sdkerrors/badrequestresponseerror.mdx +++ b/docs/models/sdkerrors/badrequestresponseerror.mdx @@ -9,6 +9,6 @@ Bad Request - Invalid request parameters or malformed input | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `Error` | [components.BadRequestResponseErrorData](../../models/components/badrequestresponseerrordata.mdx) | ✅ | Error data for BadRequestResponse | \{
"code": 400,
"message": "Invalid request parameters"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.BadRequestResponseErrorData](../../models/components/badrequestresponseerrordata.mdx) | :heavy_check_mark: | Error data for BadRequestResponse | \{
"code": 400,
"message": "Invalid request parameters"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/batcherrorresponse.mdx b/docs/models/sdkerrors/batcherrorresponse.mdx index 4b6e5d63f..864644026 100644 --- a/docs/models/sdkerrors/batcherrorresponse.mdx +++ b/docs/models/sdkerrors/batcherrorresponse.mdx @@ -6,4 +6,4 @@ title: "BatchErrorResponse" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `Error` | [components.BatchErrorResponseError](../../models/components/batcherrorresponseerror.mdx) | ✅ | N/A | \ No newline at end of file +| `Error` | [components.BatchErrorResponseError](../../models/components/batcherrorresponseerror.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/sdkerrors/batchpaymentrequiredresponseerror.mdx b/docs/models/sdkerrors/batchpaymentrequiredresponseerror.mdx index 05510baa1..08576a4b5 100644 --- a/docs/models/sdkerrors/batchpaymentrequiredresponseerror.mdx +++ b/docs/models/sdkerrors/batchpaymentrequiredresponseerror.mdx @@ -9,17 +9,17 @@ Batch metadata with results withheld (results: null) plus the standard error env | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `CompletionWindow` | [components.BatchPaymentRequiredResponseCompletionWindow](../../models/components/batchpaymentrequiredresponsecompletionwindow.mdx) | ✅ | N/A | -| `CreatedAt` | `int64` | ✅ | N/A | -| `Endpoint` | `string` | ✅ | N/A | -| `Error` | [components.BatchPaymentRequiredResponseError](../../models/components/batchpaymentrequiredresponseerror.mdx) | ✅ | N/A | -| `ExpiresAt` | `*int64` | ✅ | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | -| `FinalizedAt` | `*int64` | ✅ | N/A | -| `ID` | `string` | ✅ | N/A | -| `Model` | `string` | ✅ | N/A | -| `Object` | [components.BatchPaymentRequiredResponseObject](../../models/components/batchpaymentrequiredresponseobject.mdx) | ✅ | N/A | -| `Provider` | `*string` | ✅ | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | -| `RequestCounts` | [components.BatchPaymentRequiredResponseRequestCounts](../../models/components/batchpaymentrequiredresponserequestcounts.mdx) | ✅ | N/A | -| `Results` | `any` | ✅ | Always null: results are withheld until the batch charge is covered. | -| `Status` | [components.BatchPaymentRequiredResponseStatus](../../models/components/batchpaymentrequiredresponsestatus.mdx) | ✅ | N/A | -| `Usage` | [*components.BatchPaymentRequiredResponseUsage](../../models/components/batchpaymentrequiredresponseusage.mdx) | ✅ | N/A | \ No newline at end of file +| `CompletionWindow` | [components.BatchPaymentRequiredResponseCompletionWindow](../../models/components/batchpaymentrequiredresponsecompletionwindow.mdx) | :heavy_check_mark: | N/A | +| `CreatedAt` | `int64` | :heavy_check_mark: | N/A | +| `Endpoint` | `string` | :heavy_check_mark: | N/A | +| `Error` | [components.BatchPaymentRequiredResponseError](../../models/components/batchpaymentrequiredresponseerror.mdx) | :heavy_check_mark: | N/A | +| `ExpiresAt` | `*int64` | :heavy_check_mark: | Unix timestamp after which the assigned provider no longer completes unfinished requests. Derived from the provider's documented batch window, so it can exceed `created_at` plus `completion_window` (Google Vertex can take up to 96 hours). `null` when the provider documents no hard expiry. | +| `FinalizedAt` | `*int64` | :heavy_check_mark: | N/A | +| `ID` | `string` | :heavy_check_mark: | N/A | +| `Model` | `string` | :heavy_check_mark: | N/A | +| `Object` | [components.BatchPaymentRequiredResponseObject](../../models/components/batchpaymentrequiredresponseobject.mdx) | :heavy_check_mark: | N/A | +| `Provider` | `*string` | :heavy_check_mark: | Provider OpenRouter assigned to run the batch, using the same name as the `provider` field of sync responses. | +| `RequestCounts` | [components.BatchPaymentRequiredResponseRequestCounts](../../models/components/batchpaymentrequiredresponserequestcounts.mdx) | :heavy_check_mark: | N/A | +| `Results` | `any` | :heavy_check_mark: | Always null: results are withheld until the batch charge is covered. | +| `Status` | [components.BatchPaymentRequiredResponseStatus](../../models/components/batchpaymentrequiredresponsestatus.mdx) | :heavy_check_mark: | N/A | +| `Usage` | [*components.BatchPaymentRequiredResponseUsage](../../models/components/batchpaymentrequiredresponseusage.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/sdkerrors/clientclosedrequestresponseerror.mdx b/docs/models/sdkerrors/clientclosedrequestresponseerror.mdx index 15fcf80d2..945fc82b3 100644 --- a/docs/models/sdkerrors/clientclosedrequestresponseerror.mdx +++ b/docs/models/sdkerrors/clientclosedrequestresponseerror.mdx @@ -9,6 +9,6 @@ Client Closed Request - The caller cancelled the request | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Error` | [components.ClientClosedRequestResponseErrorData](../../models/components/clientclosedrequestresponseerrordata.mdx) | ✅ | Error data for ClientClosedRequestResponse | \{
"code": 499,
"message": "The request was cancelled."
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.ClientClosedRequestResponseErrorData](../../models/components/clientclosedrequestresponseerrordata.mdx) | :heavy_check_mark: | Error data for ClientClosedRequestResponse | \{
"code": 499,
"message": "The request was cancelled."
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/conflictresponseerror.mdx b/docs/models/sdkerrors/conflictresponseerror.mdx index 579b25f94..a35b87986 100644 --- a/docs/models/sdkerrors/conflictresponseerror.mdx +++ b/docs/models/sdkerrors/conflictresponseerror.mdx @@ -9,6 +9,6 @@ Conflict - Resource conflict or concurrent modification | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Error` | [components.ConflictResponseErrorData](../../models/components/conflictresponseerrordata.mdx) | ✅ | Error data for ConflictResponse | \{
"code": 409,
"message": "Resource conflict. Please try again later."
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.ConflictResponseErrorData](../../models/components/conflictresponseerrordata.mdx) | :heavy_check_mark: | Error data for ConflictResponse | \{
"code": 409,
"message": "Resource conflict. Please try again later."
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/createprivateendpointvalidationfailedresponseerror.mdx b/docs/models/sdkerrors/createprivateendpointvalidationfailedresponseerror.mdx index 19506f39c..efef1fb31 100644 --- a/docs/models/sdkerrors/createprivateendpointvalidationfailedresponseerror.mdx +++ b/docs/models/sdkerrors/createprivateendpointvalidationfailedresponseerror.mdx @@ -6,5 +6,5 @@ title: "CreatePrivateEndpointValidationFailedResponseError" | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- | -| `Data` | [components.CreatePrivateEndpointValidationFailedResponseData](../../models/components/createprivateendpointvalidationfailedresponsedata.mdx) | ✅ | N/A | -| `Error` | [components.CreatePrivateEndpointValidationFailedResponseError](../../models/components/createprivateendpointvalidationfailedresponseerror.mdx) | ✅ | N/A | \ No newline at end of file +| `Data` | [components.CreatePrivateEndpointValidationFailedResponseData](../../models/components/createprivateendpointvalidationfailedresponsedata.mdx) | :heavy_check_mark: | N/A | +| `Error` | [components.CreatePrivateEndpointValidationFailedResponseError](../../models/components/createprivateendpointvalidationfailedresponseerror.mdx) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/sdkerrors/edgenetworktimeoutresponseerror.mdx b/docs/models/sdkerrors/edgenetworktimeoutresponseerror.mdx index 61bfbc5c6..18673bd40 100644 --- a/docs/models/sdkerrors/edgenetworktimeoutresponseerror.mdx +++ b/docs/models/sdkerrors/edgenetworktimeoutresponseerror.mdx @@ -9,6 +9,6 @@ Infrastructure Timeout - Provider request timed out at edge network | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Error` | [components.EdgeNetworkTimeoutResponseErrorData](../../models/components/edgenetworktimeoutresponseerrordata.mdx) | ✅ | Error data for EdgeNetworkTimeoutResponse | \{
"code": 524,
"message": "Request timed out. Please try again later."
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.EdgeNetworkTimeoutResponseErrorData](../../models/components/edgenetworktimeoutresponseerrordata.mdx) | :heavy_check_mark: | Error data for EdgeNetworkTimeoutResponse | \{
"code": 524,
"message": "Request timed out. Please try again later."
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/forbiddenresponseerror.mdx b/docs/models/sdkerrors/forbiddenresponseerror.mdx index 3a025d093..e4947ec51 100644 --- a/docs/models/sdkerrors/forbiddenresponseerror.mdx +++ b/docs/models/sdkerrors/forbiddenresponseerror.mdx @@ -9,6 +9,6 @@ Forbidden - Authentication successful but insufficient permissions | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `Error` | [components.ForbiddenResponseErrorData](../../models/components/forbiddenresponseerrordata.mdx) | ✅ | Error data for ForbiddenResponse | \{
"code": 403,
"message": "Only management keys can perform this operation"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.ForbiddenResponseErrorData](../../models/components/forbiddenresponseerrordata.mdx) | :heavy_check_mark: | Error data for ForbiddenResponse | \{
"code": 403,
"message": "Only management keys can perform this operation"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/gatewaytimeoutresponseerror.mdx b/docs/models/sdkerrors/gatewaytimeoutresponseerror.mdx index effefaea8..feaa27a90 100644 --- a/docs/models/sdkerrors/gatewaytimeoutresponseerror.mdx +++ b/docs/models/sdkerrors/gatewaytimeoutresponseerror.mdx @@ -9,6 +9,6 @@ Gateway Timeout - Provider did not respond before the upstream deadline | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Error` | [components.GatewayTimeoutResponseErrorData](../../models/components/gatewaytimeoutresponseerrordata.mdx) | ✅ | Error data for GatewayTimeoutResponse | \{
"code": 504,
"message": "The operation was aborted due to timeout"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.GatewayTimeoutResponseErrorData](../../models/components/gatewaytimeoutresponseerrordata.mdx) | :heavy_check_mark: | Error data for GatewayTimeoutResponse | \{
"code": 504,
"message": "The operation was aborted due to timeout"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/goneresponseerror.mdx b/docs/models/sdkerrors/goneresponseerror.mdx index e796b5a84..98b5222ff 100644 --- a/docs/models/sdkerrors/goneresponseerror.mdx +++ b/docs/models/sdkerrors/goneresponseerror.mdx @@ -9,6 +9,6 @@ Gone - Endpoint has been permanently removed or deprecated | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | [components.GoneResponseErrorData](../../models/components/goneresponseerrordata.mdx) | ✅ | Error data for GoneResponse | \{
"code": 410,
"message": "The Coinbase APIs used by this endpoint have been deprecated, so the Coinbase Commerce credits API has been removed. Use the web credits purchase flow instead."
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.GoneResponseErrorData](../../models/components/goneresponseerrordata.mdx) | :heavy_check_mark: | Error data for GoneResponse | \{
"code": 410,
"message": "The Coinbase APIs used by this endpoint have been deprecated, so the Coinbase Commerce credits API has been removed. Use the web credits purchase flow instead."
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/internalserverresponseerror.mdx b/docs/models/sdkerrors/internalserverresponseerror.mdx index 3ab479ef6..30dde4738 100644 --- a/docs/models/sdkerrors/internalserverresponseerror.mdx +++ b/docs/models/sdkerrors/internalserverresponseerror.mdx @@ -9,6 +9,6 @@ Internal Server Error - Unexpected server error | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Error` | [components.InternalServerResponseErrorData](../../models/components/internalserverresponseerrordata.mdx) | ✅ | Error data for InternalServerResponse | \{
"code": 500,
"message": "Internal Server Error"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.InternalServerResponseErrorData](../../models/components/internalserverresponseerrordata.mdx) | :heavy_check_mark: | Error data for InternalServerResponse | \{
"code": 500,
"message": "Internal Server Error"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/internchaterrorresponse.mdx b/docs/models/sdkerrors/internchaterrorresponse.mdx deleted file mode 100644 index d503e45cb..000000000 --- a/docs/models/sdkerrors/internchaterrorresponse.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "InternChatErrorResponse" ---- - -A refusal before the stream opens. Once the response is `200` and streaming, failures arrive as a chunk with `finish_reason: "error"` instead. - - -## Fields - -| Field | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `Error` | [components.InternChatError](../../models/components/internchaterror.mdx) | ✅ | The OpenAI-compatible error object. `metadata` is present on refusals from the chat route. Authentication refusals (`401`), the departed-creator `403` and the programme `404` carry only `code` and `message`. | \{
"code": 409,
"message": "That question is no longer waiting for an answer.",
"metadata": \{
"reason": "interaction_not_pending",
"retryable": false
}
} | \ No newline at end of file diff --git a/docs/models/sdkerrors/internlifecycleerror.mdx b/docs/models/sdkerrors/internlifecycleerror.mdx deleted file mode 100644 index a500476aa..000000000 --- a/docs/models/sdkerrors/internlifecycleerror.mdx +++ /dev/null @@ -1,12 +0,0 @@ ---- -title: "InternLifecycleError" ---- - -Intern lifecycle request failure. - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Error` | [components.InternLifecycleErrorError](../../models/components/internlifecycleerrorerror.mdx) | ✅ | N/A | \ No newline at end of file diff --git a/docs/models/sdkerrors/notfoundresponseerror.mdx b/docs/models/sdkerrors/notfoundresponseerror.mdx index d10dcaf6a..5f17e90bc 100644 --- a/docs/models/sdkerrors/notfoundresponseerror.mdx +++ b/docs/models/sdkerrors/notfoundresponseerror.mdx @@ -9,6 +9,6 @@ Not Found - Resource does not exist | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `Error` | [components.NotFoundResponseErrorData](../../models/components/notfoundresponseerrordata.mdx) | ✅ | Error data for NotFoundResponse | \{
"code": 404,
"message": "Resource not found"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.NotFoundResponseErrorData](../../models/components/notfoundresponseerrordata.mdx) | :heavy_check_mark: | Error data for NotFoundResponse | \{
"code": 404,
"message": "Resource not found"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/oautherrorresponse.mdx b/docs/models/sdkerrors/oautherrorresponse.mdx index 44858fe47..5983e5c2c 100644 --- a/docs/models/sdkerrors/oautherrorresponse.mdx +++ b/docs/models/sdkerrors/oautherrorresponse.mdx @@ -9,5 +9,5 @@ RFC 6749 §5.2 error response. | Field | Type | Required | Description | | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -| `Error` | [components.ErrorEnum](../../models/components/errorenum.mdx) | ✅ | N/A | -| `ErrorDescription` | `string` | ✅ | N/A | \ No newline at end of file +| `Error` | [components.ErrorEnum](../../models/components/errorenum.mdx) | :heavy_check_mark: | N/A | +| `ErrorDescription` | `string` | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/sdkerrors/payloadtoolargeresponseerror.mdx b/docs/models/sdkerrors/payloadtoolargeresponseerror.mdx index 3435e0ef8..9ffad6317 100644 --- a/docs/models/sdkerrors/payloadtoolargeresponseerror.mdx +++ b/docs/models/sdkerrors/payloadtoolargeresponseerror.mdx @@ -9,6 +9,6 @@ Payload Too Large - Request payload exceeds size limits | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Error` | [components.PayloadTooLargeResponseErrorData](../../models/components/payloadtoolargeresponseerrordata.mdx) | ✅ | Error data for PayloadTooLargeResponse | \{
"code": 413,
"message": "Request payload too large"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.PayloadTooLargeResponseErrorData](../../models/components/payloadtoolargeresponseerrordata.mdx) | :heavy_check_mark: | Error data for PayloadTooLargeResponse | \{
"code": 413,
"message": "Request payload too large"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/paymentrequiredresponseerror.mdx b/docs/models/sdkerrors/paymentrequiredresponseerror.mdx index e1d5372e6..9716a4008 100644 --- a/docs/models/sdkerrors/paymentrequiredresponseerror.mdx +++ b/docs/models/sdkerrors/paymentrequiredresponseerror.mdx @@ -9,6 +9,6 @@ Payment Required - Insufficient credits or quota to complete request | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Error` | [components.PaymentRequiredResponseErrorData](../../models/components/paymentrequiredresponseerrordata.mdx) | ✅ | Error data for PaymentRequiredResponse | \{
"code": 402,
"message": "Insufficient credits. Add more using https://openrouter.ai/credits"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.PaymentRequiredResponseErrorData](../../models/components/paymentrequiredresponseerrordata.mdx) | :heavy_check_mark: | Error data for PaymentRequiredResponse | \{
"code": 402,
"message": "Insufficient credits. Add more using https://openrouter.ai/credits"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/provideroverloadedresponseerror.mdx b/docs/models/sdkerrors/provideroverloadedresponseerror.mdx index 3aa231040..511534530 100644 --- a/docs/models/sdkerrors/provideroverloadedresponseerror.mdx +++ b/docs/models/sdkerrors/provideroverloadedresponseerror.mdx @@ -9,6 +9,6 @@ Provider Overloaded - Provider is temporarily overloaded | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Error` | [components.ProviderOverloadedResponseErrorData](../../models/components/provideroverloadedresponseerrordata.mdx) | ✅ | Error data for ProviderOverloadedResponse | \{
"code": 529,
"message": "Provider returned error"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.ProviderOverloadedResponseErrorData](../../models/components/provideroverloadedresponseerrordata.mdx) | :heavy_check_mark: | Error data for ProviderOverloadedResponse | \{
"code": 529,
"message": "Provider returned error"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/requesttimeoutresponseerror.mdx b/docs/models/sdkerrors/requesttimeoutresponseerror.mdx index 0c271c702..cb88e051e 100644 --- a/docs/models/sdkerrors/requesttimeoutresponseerror.mdx +++ b/docs/models/sdkerrors/requesttimeoutresponseerror.mdx @@ -9,6 +9,6 @@ Request Timeout - Operation exceeded time limit | Field | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `Error` | [components.RequestTimeoutResponseErrorData](../../models/components/requesttimeoutresponseerrordata.mdx) | ✅ | Error data for RequestTimeoutResponse | \{
"code": 408,
"message": "Operation timed out. Please try again later."
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.RequestTimeoutResponseErrorData](../../models/components/requesttimeoutresponseerrordata.mdx) | :heavy_check_mark: | Error data for RequestTimeoutResponse | \{
"code": 408,
"message": "Operation timed out. Please try again later."
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/serviceunavailableresponseerror.mdx b/docs/models/sdkerrors/serviceunavailableresponseerror.mdx index 57eee2f80..5a5b3d540 100644 --- a/docs/models/sdkerrors/serviceunavailableresponseerror.mdx +++ b/docs/models/sdkerrors/serviceunavailableresponseerror.mdx @@ -9,6 +9,6 @@ Service Unavailable - Service temporarily unavailable | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `Error` | [components.ServiceUnavailableResponseErrorData](../../models/components/serviceunavailableresponseerrordata.mdx) | ✅ | Error data for ServiceUnavailableResponse | \{
"code": 503,
"message": "Service temporarily unavailable"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.ServiceUnavailableResponseErrorData](../../models/components/serviceunavailableresponseerrordata.mdx) | :heavy_check_mark: | Error data for ServiceUnavailableResponse | \{
"code": 503,
"message": "Service temporarily unavailable"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/toomanyrequestsresponseerror.mdx b/docs/models/sdkerrors/toomanyrequestsresponseerror.mdx index 285f2986a..eb7b7d8fd 100644 --- a/docs/models/sdkerrors/toomanyrequestsresponseerror.mdx +++ b/docs/models/sdkerrors/toomanyrequestsresponseerror.mdx @@ -9,6 +9,6 @@ Too Many Requests - Rate limit exceeded | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `Error` | [components.TooManyRequestsResponseErrorData](../../models/components/toomanyrequestsresponseerrordata.mdx) | ✅ | Error data for TooManyRequestsResponse | \{
"code": 429,
"message": "Rate limit exceeded"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.TooManyRequestsResponseErrorData](../../models/components/toomanyrequestsresponseerrordata.mdx) | :heavy_check_mark: | Error data for TooManyRequestsResponse | \{
"code": 429,
"message": "Rate limit exceeded"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/unauthorizedresponseerror.mdx b/docs/models/sdkerrors/unauthorizedresponseerror.mdx index 0bade8bb6..597ae20a5 100644 --- a/docs/models/sdkerrors/unauthorizedresponseerror.mdx +++ b/docs/models/sdkerrors/unauthorizedresponseerror.mdx @@ -9,6 +9,6 @@ Unauthorized - Authentication required or invalid credentials | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `Error` | [components.UnauthorizedResponseErrorData](../../models/components/unauthorizedresponseerrordata.mdx) | ✅ | Error data for UnauthorizedResponse | \{
"code": 401,
"message": "Missing Authentication header"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.UnauthorizedResponseErrorData](../../models/components/unauthorizedresponseerrordata.mdx) | :heavy_check_mark: | Error data for UnauthorizedResponse | \{
"code": 401,
"message": "Missing Authentication header"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/models/sdkerrors/unprocessableentityresponseerror.mdx b/docs/models/sdkerrors/unprocessableentityresponseerror.mdx index ed3137f79..415372530 100644 --- a/docs/models/sdkerrors/unprocessableentityresponseerror.mdx +++ b/docs/models/sdkerrors/unprocessableentityresponseerror.mdx @@ -9,6 +9,6 @@ Unprocessable Entity - Semantic validation failure | Field | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `Error` | [components.UnprocessableEntityResponseErrorData](../../models/components/unprocessableentityresponseerrordata.mdx) | ✅ | Error data for UnprocessableEntityResponse | \{
"code": 422,
"message": "Invalid argument"
} | -| `OpenrouterMetadata` | map[string]`any` | ➖ | N/A | | -| `UserID` | `*string` | ➖ | N/A | | \ No newline at end of file +| `Error` | [components.UnprocessableEntityResponseErrorData](../../models/components/unprocessableentityresponseerrordata.mdx) | :heavy_check_mark: | Error data for UnprocessableEntityResponse | \{
"code": 422,
"message": "Invalid argument"
} | +| `OpenrouterMetadata` | map[string]`any` | :heavy_minus_sign: | N/A | | +| `UserID` | `*string` | :heavy_minus_sign: | N/A | | \ No newline at end of file diff --git a/docs/sdks/analytics/README.mdx b/docs/sdks/analytics/README.mdx index c60d56907..84d83302a 100644 --- a/docs/sdks/analytics/README.mdx +++ b/docs/sdks/analytics/README.mdx @@ -50,13 +50,13 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `date` | `*string` | ➖ | Filter by a single UTC date in the last 30 days (YYYY-MM-DD format). | 2025-08-24 | -| `apiKeyHash` | `*string` | ➖ | Filter by API key hash (SHA-256 hex string, as returned by the keys API). | abc123def456... | -| `userID` | `*string` | ➖ | Filter by org member user ID. Only applicable for organization accounts. | user_abc123 | -| `groupBy` | [*operations.GroupBy](../../models/operations/groupby.mdx) | ➖ | Set to 'workspace' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape. | workspace | -| `workspaceID` | `*string` | ➖ | Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account. | 550e8400-e29b-41d4-a716-446655440000 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `date` | `*string` | :heavy_minus_sign: | Filter by a single UTC date in the last 30 days (YYYY-MM-DD format). | 2025-08-24 | +| `apiKeyHash` | `*string` | :heavy_minus_sign: | Filter by API key hash (SHA-256 hex string, as returned by the keys API). | abc123def456... | +| `userID` | `*string` | :heavy_minus_sign: | Filter by org member user ID. Only applicable for organization accounts. | user_abc123 | +| `groupBy` | [*operations.GroupBy](../../models/operations/groupby.mdx) | :heavy_minus_sign: | Set to 'workspace' to split each row per workspace and include `workspace_id` on every item. Omitted by default, in which case rows are aggregated across workspaces (by date, model, and endpoint) and `workspace_id` is not returned — preserving the historical response shape. | workspace | +| `workspaceID` | `*string` | :heavy_minus_sign: | Filter by workspace ID (UUID). Returns only activity attributed to that workspace. The workspace must belong to the authenticated account. | 550e8400-e29b-41d4-a716-446655440000 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -110,8 +110,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -178,9 +178,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.QueryAnalyticsRequest](../../models/operations/queryanalyticsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.QueryAnalyticsRequest](../../models/operations/queryanalyticsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/apikeys/README.mdx b/docs/sdks/apikeys/README.mdx index 588db57cd..cc44a919d 100644 --- a/docs/sdks/apikeys/README.mdx +++ b/docs/sdks/apikeys/README.mdx @@ -53,8 +53,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -106,12 +106,12 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `includeDisabled` | `*bool` | ➖ | Whether to include disabled API keys in the response | false | -| `includeExpired` | `*bool` | ➖ | Whether to include expired API keys in the response. Expired keys are excluded by default and returned only when this is true. | false | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of API keys to skip for pagination | 0 | -| `workspaceID` | `*string` | ➖ | Filter API keys by workspace ID. By default, keys in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `includeDisabled` | `*bool` | :heavy_minus_sign: | Whether to include disabled API keys in the response | false | +| `includeExpired` | `*bool` | :heavy_minus_sign: | Whether to include expired API keys in the response. Expired keys are excluded by default and returned only when this is true. | false | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of API keys to skip for pagination | 0 | +| `workspaceID` | `*string` | :heavy_minus_sign: | Filter API keys by workspace ID. By default, keys in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -174,9 +174,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.CreateKeysRequest](../../models/operations/createkeysrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.CreateKeysRequest](../../models/operations/createkeysrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -230,9 +230,9 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `hash` | `string` | ✅ | The hash identifier of the API key to delete | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to delete | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -285,9 +285,9 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `hash` | `string` | ✅ | The hash identifier of the API key to retrieve | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to retrieve | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -376,10 +376,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `hash` | `string` | ✅ | The hash identifier of the API key to update | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | -| `requestBody` | [operations.UpdateKeysRequestBody](../../models/operations/updatekeysrequestbody.mdx) | ✅ | N/A | \{
"disabled": false,
"include_byok_in_limit": true,
"limit": 75,
"limit_reset": "daily",
"name": "Updated API Key Name"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `hash` | `string` | :heavy_check_mark: | The hash identifier of the API key to update | f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943 | +| `requestBody` | [operations.UpdateKeysRequestBody](../../models/operations/updatekeysrequestbody.mdx) | :heavy_check_mark: | N/A | \{
"disabled": false,
"include_byok_in_limit": true,
"limit": 75,
"limit_reset": "daily",
"name": "Updated API Key Name"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/batch/README.mdx b/docs/sdks/batch/README.mdx index 4f4c9547d..231563cb9 100644 --- a/docs/sdks/batch/README.mdx +++ b/docs/sdks/batch/README.mdx @@ -63,9 +63,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.ListBatchesRequest](../../models/operations/listbatchesrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.ListBatchesRequest](../../models/operations/listbatchesrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -278,9 +278,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.BatchSubmitBody](../../models/components/batchsubmitbody.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.BatchSubmitBody](../../models/components/batchsubmitbody.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -331,9 +331,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The batch job id returned from submit. | batch_abc123 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The batch job id returned from submit. | batch_abc123 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -384,9 +384,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The batch job id returned from submit. | batch_abc123 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The batch job id returned from submit. | batch_abc123 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/benchmarks/README.mdx b/docs/sdks/benchmarks/README.mdx index 767f454e6..98e34c943 100644 --- a/docs/sdks/benchmarks/README.mdx +++ b/docs/sdks/benchmarks/README.mdx @@ -51,9 +51,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.GetBenchmarksRequest](../../models/operations/getbenchmarksrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.GetBenchmarksRequest](../../models/operations/getbenchmarksrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/betaresponses/README.mdx b/docs/sdks/betaresponses/README.mdx index 3e8ba4a68..71d14851f 100644 --- a/docs/sdks/betaresponses/README.mdx +++ b/docs/sdks/betaresponses/README.mdx @@ -90,10 +90,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | ✅ | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | -| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | ➖ | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | +| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | :heavy_minus_sign: | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/byok/README.mdx b/docs/sdks/byok/README.mdx index e7c227889..0fb602bb8 100644 --- a/docs/sdks/byok/README.mdx +++ b/docs/sdks/byok/README.mdx @@ -65,12 +65,12 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `workspaceID` | `*string` | ➖ | Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | -| `provider` | [*operations.Provider](../../models/operations/provider.mdx) | ➖ | Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `workspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to filter by. When omitted, resolves to the account’s default workspace; if that default has been deleted, the request returns a 400 and you must pass `workspace_id` explicitly. | 550e8400-e29b-41d4-a716-446655440000 | +| `provider` | [*operations.Provider](../../models/operations/provider.mdx) | :heavy_minus_sign: | Optional provider slug to filter by (e.g. `openai`, `anthropic`, `amazon-bedrock`). | openai | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -129,9 +129,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateBYOKKeyRequest](../../models/components/createbyokkeyrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateBYOKKeyRequest](../../models/components/createbyokkeyrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -184,9 +184,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -239,9 +239,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -299,10 +299,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | -| `updateBYOKKeyRequest` | [components.UpdateBYOKKeyRequest](../../models/components/updatebyokkeyrequest.mdx) | ✅ | N/A | \{
"disabled": false,
"name": "Updated OpenAI Key"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The BYOK credential ID (UUID). | 11111111-2222-3333-4444-555555555555 | +| `updateBYOKKeyRequest` | [components.UpdateBYOKKeyRequest](../../models/components/updatebyokkeyrequest.mdx) | :heavy_check_mark: | N/A | \{
"disabled": false,
"name": "Updated OpenAI Key"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/chat/README.mdx b/docs/sdks/chat/README.mdx index 08af19533..783551d5d 100644 --- a/docs/sdks/chat/README.mdx +++ b/docs/sdks/chat/README.mdx @@ -125,10 +125,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `chatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | ✅ | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | -| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | ➖ | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `chatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | +| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | :heavy_minus_sign: | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/classifications/README.mdx b/docs/sdks/classifications/README.mdx index f6936e7a5..1ba80d0ad 100644 --- a/docs/sdks/classifications/README.mdx +++ b/docs/sdks/classifications/README.mdx @@ -67,9 +67,9 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `window` | [*operations.Window](../../models/operations/window.mdx) | ➖ | Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported. | 7d | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `window` | [*operations.Window](../../models/operations/window.mdx) | :heavy_minus_sign: | Trailing time window for the classification data. Currently only `7d` (trailing 7 days) is supported. | 7d | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/containers/README.mdx b/docs/sdks/containers/README.mdx index 01aaedd1e..ae7e79e66 100644 --- a/docs/sdks/containers/README.mdx +++ b/docs/sdks/containers/README.mdx @@ -51,11 +51,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `containerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `limit` | `*int64` | ➖ | Maximum number of files to return (1-1000). Defaults to 100 when absent. | 100 | -| `after` | `*string` | ➖ | Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted. | cfile_b3V0L3JlcG9ydC5jc3Y | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `containerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of files to return (1-1000). Defaults to 100 when absent. | 100 | +| `after` | `*string` | :heavy_minus_sign: | Forward cursor: the previous page’s `last_id` (or any container file id); listing resumes strictly after that path. A `last_id` from a page that stopped at the scan bound may name a directory-marker path (trailing `/`) that was never listed as a file; such cursors are accepted. | cfile_b3V0L3JlcG9ydC5jc3Y | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -110,10 +110,10 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `containerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `fileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `containerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `fileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -169,10 +169,10 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `containerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `fileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `containerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `fileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -239,10 +239,10 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `containerID` | `string` | ✅ | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | -| `fileID` | `string` | ✅ | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `containerID` | `string` | :heavy_check_mark: | The canonical container id, exactly as returned in a bash/shell tool result — a restarted session has its own `-r`-suffixed id. A session-derived id is always `sess_` + the sanitized session key, which is not necessarily the raw session id that was sent. | sess_abc123 | +| `fileID` | `string` | :heavy_check_mark: | Container file id (`cfile_` + base64url of the file path). | cfile_b3V0L3JlcG9ydC5jc3Y | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/credits/README.mdx b/docs/sdks/credits/README.mdx index 948523384..7ddbb546f 100644 --- a/docs/sdks/credits/README.mdx +++ b/docs/sdks/credits/README.mdx @@ -48,8 +48,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/datasets/README.mdx b/docs/sdks/datasets/README.mdx index f2439193b..56b4fa796 100644 --- a/docs/sdks/datasets/README.mdx +++ b/docs/sdks/datasets/README.mdx @@ -87,9 +87,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.GetAppRankingsRequest](../../models/operations/getapprankingsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.GetAppRankingsRequest](../../models/operations/getapprankingsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -169,9 +169,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.GetRankingsDailyRequest](../../models/operations/getrankingsdailyrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.GetRankingsDailyRequest](../../models/operations/getrankingsdailyrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -245,9 +245,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.GetSessionCostRequest](../../models/operations/getsessioncostrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.GetSessionCostRequest](../../models/operations/getsessioncostrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/decisions/README.mdx b/docs/sdks/decisions/README.mdx index e4ea9c6e4..35c24caa3 100644 --- a/docs/sdks/decisions/README.mdx +++ b/docs/sdks/decisions/README.mdx @@ -113,9 +113,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.DecisionsRequest](../../models/components/decisionsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.DecisionsRequest](../../models/components/decisionsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/embeddings/README.mdx b/docs/sdks/embeddings/README.mdx index f859c94c2..d85fdd6c9 100644 --- a/docs/sdks/embeddings/README.mdx +++ b/docs/sdks/embeddings/README.mdx @@ -55,9 +55,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.CreateEmbeddingsRequest](../../models/operations/createembeddingsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.CreateEmbeddingsRequest](../../models/operations/createembeddingsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -134,10 +134,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/endpoints/README.mdx b/docs/sdks/endpoints/README.mdx index e9d089d67..844044ad6 100644 --- a/docs/sdks/endpoints/README.mdx +++ b/docs/sdks/endpoints/README.mdx @@ -49,8 +49,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -101,10 +101,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `author` | `string` | ✅ | The author/organization of the model | openai | -| `slug` | `string` | ✅ | The model slug | gpt-4 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `author` | `string` | :heavy_check_mark: | The author/organization of the model | openai | +| `slug` | `string` | :heavy_check_mark: | The model slug | gpt-4 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/externalusers/README.mdx b/docs/sdks/externalusers/README.mdx index e25f4d1af..2ef39284c 100644 --- a/docs/sdks/externalusers/README.mdx +++ b/docs/sdks/externalusers/README.mdx @@ -62,12 +62,12 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `user` | `*string` | ➖ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `includeInactive` | `*bool` | ➖ | Include deactivated registrations. | false | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `user` | `*string` | :heavy_minus_sign: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `includeInactive` | `*bool` | :heavy_minus_sign: | Include deactivated registrations. | false | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -124,9 +124,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateExternalUserRequest](../../models/components/createexternaluserrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateExternalUserRequest](../../models/components/createexternaluserrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -177,9 +177,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `user` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `user` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -232,9 +232,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `user` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `user` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -291,10 +291,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `user` | `string` | ✅ | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | -| `updateExternalUserRequest` | [components.UpdateExternalUserRequest](../../models/components/updateexternaluserrequest.mdx) | ✅ | N/A | \{
"is_active": true
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `user` | `string` | :heavy_check_mark: | Immutable case-sensitive tracking string supplied as user on inference requests or as external.user on API keys: 1 to 512 characters, well-formed Unicode, no NUL, no surrounding whitespace. URL-encode it in resource paths; an ID of `.` or `..` cannot be addressed by path, so look it up with the list filter. | employee_123 | +| `updateExternalUserRequest` | [components.UpdateExternalUserRequest](../../models/components/updateexternaluserrequest.mdx) | :heavy_check_mark: | N/A | \{
"is_active": true
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/files/README.mdx b/docs/sdks/files/README.mdx index 120228490..4450621b2 100644 --- a/docs/sdks/files/README.mdx +++ b/docs/sdks/files/README.mdx @@ -68,9 +68,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.ListFilesRequest](../../models/operations/listfilesrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.ListFilesRequest](../../models/operations/listfilesrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -148,11 +148,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `requestBody` | [operations.UploadFileRequestBody](../../models/operations/uploadfilerequestbody.mdx) | ✅ | N/A | | -| `workspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `requestBody` | [operations.UploadFileRequestBody](../../models/operations/uploadfilerequestbody.mdx) | :heavy_check_mark: | N/A | | +| `workspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -221,11 +221,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `fileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `workspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `fileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `workspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -292,11 +292,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `fileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `workspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `fileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `workspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -353,11 +353,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `fileID` | `string` | ✅ | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | -| `workspaceID` | `*string` | ➖ | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | -| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | ➖ | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `fileID` | `string` | :heavy_check_mark: | N/A | or_file_011CNha8iCJcU1wXNR6q4V8w | +| `workspaceID` | `*string` | :heavy_minus_sign: | Workspace to scope the request to. Defaults to the caller’s default workspace. | a103d8b6-42f0-4e50-9a3c-bf41e2c3c1a7 | +| `provider` | [*components.FileProvider](../../models/components/fileprovider.mdx) | :heavy_minus_sign: | Store or read this file on the named provider using your own API key for it. Omit to use OpenRouter storage. | openai | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/generations/README.mdx b/docs/sdks/generations/README.mdx index 6842cb09b..ce8b29801 100644 --- a/docs/sdks/generations/README.mdx +++ b/docs/sdks/generations/README.mdx @@ -50,9 +50,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The generation ID | gen-1234567890 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The generation ID | gen-1234567890 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -111,9 +111,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The generation ID | gen-1234567890 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The generation ID | gen-1234567890 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -176,9 +176,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.SubmitGenerationFeedbackRequest](../../models/components/submitgenerationfeedbackrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.SubmitGenerationFeedbackRequest](../../models/components/submitgenerationfeedbackrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/guardrails/README.mdx b/docs/sdks/guardrails/README.mdx index 0668750fd..5060a5672 100644 --- a/docs/sdks/guardrails/README.mdx +++ b/docs/sdks/guardrails/README.mdx @@ -73,11 +73,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `workspaceID` | `*string` | ➖ | Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `workspaceID` | `*string` | :heavy_minus_sign: | Filter guardrails by workspace ID. By default, guardrails in the default workspace are returned. | 0df9e665-d932-5740-b2c7-b52af166bc11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -153,9 +153,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateGuardrailRequest](../../models/components/createguardrailrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateGuardrailRequest](../../models/components/createguardrailrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -208,9 +208,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail to delete | 550e8400-e29b-41d4-a716-446655440000 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to delete | 550e8400-e29b-41d4-a716-446655440000 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -263,9 +263,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail to retrieve | 550e8400-e29b-41d4-a716-446655440000 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to retrieve | 550e8400-e29b-41d4-a716-446655440000 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -325,10 +325,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail to update | 550e8400-e29b-41d4-a716-446655440000 | -| `updateGuardrailRequest` | [components.UpdateGuardrailRequest](../../models/components/updateguardrailrequest.mdx) | ✅ | N/A | \{
"description": "Updated description",
"limit_usd": 75,
"name": "Updated Guardrail Name",
"reset_interval": "weekly"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail to update | 550e8400-e29b-41d4-a716-446655440000 | +| `updateGuardrailRequest` | [components.UpdateGuardrailRequest](../../models/components/updateguardrailrequest.mdx) | :heavy_check_mark: | N/A | \{
"description": "Updated description",
"limit_usd": 75,
"name": "Updated Guardrail Name",
"reset_interval": "weekly"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -396,11 +396,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -458,10 +458,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `bulkAssignKeysRequest` | [components.BulkAssignKeysRequest](../../models/components/bulkassignkeysrequest.mdx) | ✅ | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `bulkAssignKeysRequest` | [components.BulkAssignKeysRequest](../../models/components/bulkassignkeysrequest.mdx) | :heavy_check_mark: | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -520,10 +520,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `bulkUnassignKeysRequest` | [components.BulkUnassignKeysRequest](../../models/components/bulkunassignkeysrequest.mdx) | ✅ | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `bulkUnassignKeysRequest` | [components.BulkUnassignKeysRequest](../../models/components/bulkunassignkeysrequest.mdx) | :heavy_check_mark: | N/A | \{
"key_hashes": [
"c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -590,11 +590,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -653,10 +653,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `bulkAssignMembersRequest` | [components.BulkAssignMembersRequest](../../models/components/bulkassignmembersrequest.mdx) | ✅ | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `bulkAssignMembersRequest` | [components.BulkAssignMembersRequest](../../models/components/bulkassignmembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -716,10 +716,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | -| `bulkUnassignMembersRequest` | [components.BulkUnassignMembersRequest](../../models/components/bulkunassignmembersrequest.mdx) | ✅ | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The unique identifier of the guardrail | 550e8400-e29b-41d4-a716-446655440000 | +| `bulkUnassignMembersRequest` | [components.BulkUnassignMembersRequest](../../models/components/bulkunassignmembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"member_user_ids": [
"user_abc123",
"user_def456"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -786,10 +786,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -856,10 +856,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/images/README.mdx b/docs/sdks/images/README.mdx index 0090441dc..9abe56d20 100644 --- a/docs/sdks/images/README.mdx +++ b/docs/sdks/images/README.mdx @@ -60,9 +60,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.ImageGenerationRequest](../../models/components/imagegenerationrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.ImageGenerationRequest](../../models/components/imagegenerationrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -122,8 +122,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -173,10 +173,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `author` | `string` | ✅ | Model author/organization | bytedance-seed | -| `slug` | `string` | ✅ | Model slug | seedream-4.5 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `author` | `string` | :heavy_check_mark: | Model author/organization | bytedance-seed | +| `slug` | `string` | :heavy_check_mark: | Model slug | seedream-4.5 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/interns/README.mdx b/docs/sdks/interns/README.mdx deleted file mode 100644 index 44fed8e50..000000000 --- a/docs/sdks/interns/README.mdx +++ /dev/null @@ -1,901 +0,0 @@ ---- -title: "Interns" -description: "Create, inspect, update, provision, suspend and delete OpenRouter interns through an API key, and talk to them: the chat route streams OpenAI-compatible completions from one intern, pausing as an `openrouter.provide_input` tool call when the intern needs your permission or an answer. Available to interns programme members; other callers receive 404. See https://openrouter.ai/docs/guides/ori/intern-chat." ---- - -## Overview - -Create, inspect, update, provision, suspend and delete OpenRouter interns through an API key, and talk to them: the chat route streams OpenAI-compatible completions from one intern, pausing as an `openrouter.provide_input` tool call when the intern needs your permission or an answer. Available to interns programme members; other callers receive 404. See https://openrouter.ai/docs/guides/ori/intern-chat. - -### Available Operations - -* [ListInterns](#listinterns) - List interns -* [CreateIntern](#createintern) - Create an intern -* [DeleteIntern](#deleteintern) - Delete an intern -* [GetIntern](#getintern) - Get an intern -* [UpdateIntern](#updateintern) - Update an intern -* [GetInternConnections](#getinternconnections) - List an intern's connections -* [GetInternDaemon](#getinterndaemon) - Get an intern's daemon access -* [~~GetInternDaemonAccess~~](#getinterndaemonaccess) - Get an intern's daemon access (deprecated alias) ⚠️ **Deprecated** -* [~~SignInternDaemonAccessRequest~~](#signinterndaemonaccessrequest) - Sign a daemon request with the caller's identity (deprecated alias) ⚠️ **Deprecated** -* [SignInternDaemonRequest](#signinterndaemonrequest) - Sign a daemon request with the caller's identity -* [GetInternIcon](#getinternicon) - Get an intern's icon -* [ProvisionIntern](#provisionintern) - Provision an intern -* [SuspendIntern](#suspendintern) - Suspend an intern -* [Chat](#chat) - Stream a chat completion with an intern -* [Invoke](#invoke) - Start an intern run without waiting for it - -## ListInterns - -Lists interns visible to the authenticated key, newest first. Filter by workspace and one or more lifecycle statuses. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.ListInterns(ctx, nil, nil, nil, nil) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `limit` | `*int64` | ➖ | Maximum number of interns to return, from 1 through 500. | 50 | -| `status` | [][operations.Status](../../models/operations/status.mdx) | ➖ | Comma-separated lifecycle statuses to include, at most 8. Repeats are collapsed. | [
"queued",
"running"
] | -| `startingAfter` | `*string` | ➖ | The opaque `next_cursor` of the previous page. Returns the interns that come after it in the newest-first order. A malformed cursor is a 400. | MjAyNi0wOS0xNlQwODozMDowMC4wMDAwMDBafDdjOWU2Njc5LTc0MjUtNDBkZS05NDRiLWUwN2ZjMWY5MGFlNw | -| `workspaceID` | `*string` | ➖ | Only return interns in this workspace. It must match the API key workspace. | 89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.InternListResponse](../../models/components/internlistresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## CreateIntern - -Creates an intern in an explicit workspace. The operation also creates its private vault. It can start provisioning immediately or wait for a later provision call. A retry with the same idempotency key and body resumes unfinished work. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.CreateIntern(ctx, components.CreateInternRequest{ - Name: "research-assistant", - Provision: openrouter.Pointer(true), - WorkspaceID: openrouter.Pointer("89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb"), - }, nil) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `createInternRequest` | [components.CreateInternRequest](../../models/components/createinternrequest.mdx) | ✅ | N/A | \{
"name": "research-assistant",
"provision": true,
"workspace_id": "89f9f5b2-3f89-4eaf-83ca-5ceae149e8bb"
} | -| `idempotencyKey` | `*string` | ➖ | Key that makes retries resume the same create operation, from 1 through 255 characters. An empty or longer key is refused with 400. Without the header, the server derives a stable key from the request body. | create-research-assistant-2026-09-16 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.Intern](../../models/components/intern.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 409, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 500, 502 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## DeleteIntern - -Starts safe teardown of the intern, its runtime and its private vault. The body is optional. Send `{"acknowledge_workspace_loss": true}` to delete a `destroy_failed` intern whose `last_failure_message` names `workspace_archive_failed`, accepting that its workspace is not backed up. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.DeleteIntern(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7", components.DeleteInternRequest{ - AcknowledgeWorkspaceLoss: openrouter.Pointer(true), - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `deleteInternRequest` | [components.DeleteInternRequest](../../models/components/deleteinternrequest.mdx) | ✅ | N/A | \{
"acknowledge_workspace_loss": true
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.DeleteInternResponse](../../models/components/deleteinternresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 409, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 500, 502 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## GetIntern - -Returns the public lifecycle state and settings for one visible intern. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.GetIntern(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.Intern](../../models/components/intern.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 401, 403, 404, 408 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## UpdateIntern - -Changes the intern name, description, instructions or model. Omitted fields stay unchanged. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/optionalnullable" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.UpdateIntern(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7", components.UpdateInternRequest{ - Description: optionalnullable.From(openrouter.Pointer("Researches customer questions")), - Model: optionalnullable.From(openrouter.Pointer("openai/gpt-5.4")), - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `updateInternRequest` | [components.UpdateInternRequest](../../models/components/updateinternrequest.mdx) | ✅ | N/A | \{
"description": "Researches customer questions",
"model": "openai/gpt-5.4"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.Intern](../../models/components/intern.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 409, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## GetInternConnections - -Returns the Slack, GitHub, Google Workspace and MCP connections one visible intern can reach, and the shared ones switched off for it or disabled for the workspace. An OAuth grant needs `vault:read`, because the list names members' personal accounts; without it the route answers 403 `insufficient_scope`. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.GetInternConnections(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.InternConnectionList](../../models/components/internconnectionlist.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 401, 403, 404, 408 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## GetInternDaemon - -Returns the origin and daemon token that attach `ori tui --host` to one visible, running intern. The token is a credential: only an OAuth-token caller (`ori login --oidc`) may read it, the response is sent with `Cache-Control: no-store`, and each reveal is logged by caller and intern. API keys get 403 `personal_identity_required`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.GetInternDaemon(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.InternDaemonAccess](../../models/components/interndaemonaccess.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 401, 403, 404, 408, 409 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## ~~GetInternDaemonAccess~~ - -Deprecated alias of `GET /interns/{internId}/daemon` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -> ⚠️ **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.GetInternDaemonAccess(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.InternDaemonAccess](../../models/components/interndaemonaccess.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 401, 403, 404, 408, 409 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## ~~SignInternDaemonAccessRequest~~ - -Deprecated alias of `POST /interns/{internId}/daemon/sign` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -> ⚠️ **DEPRECATED**: This will be removed in a future release, please migrate away from it as soon as possible. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.SignInternDaemonAccessRequest(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7", components.SignInternDaemonRequest{ - BodySha256: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `signInternDaemonRequest` | [components.SignInternDaemonRequest](../../models/components/signinterndaemonrequest.mdx) | ✅ | N/A | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*operations.SignInternDaemonAccessRequestResponse](../../models/operations/signinterndaemonaccessrequestresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 429 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## SignInternDaemonRequest - -Signs the SHA-256 digest of one request the CLI is about to send to the intern daemon, binding it to the intern and to the signed-in member so personal connections resolve. Only an OAuth session from `ori login --oidc` whose grant carries `vault:read` can sign: an API key is refused with 403 because it names no person, and an `interns`-only grant is refused with 403 because a proof releases that user's personal connections. The route is behind the same gate as chat and counts against the chat turn limiter. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.SignInternDaemonRequest(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7", components.SignInternDaemonRequest{ - BodySha256: "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `signInternDaemonRequest` | [components.SignInternDaemonRequest](../../models/components/signinterndaemonrequest.mdx) | ✅ | N/A | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*operations.SignInternDaemonRequestResponse](../../models/operations/signinterndaemonrequestresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 429 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## GetInternIcon - -Returns the icon image of one visible intern. Pass the intern's `icon_sha256` as `v` to receive a response that can be cached indefinitely. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.GetInternIcon(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7", nil) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `v` | `*string` | ➖ | The `icon_sha256` the caller expects. | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[io.ReadCloser](../../.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| ------------------------------ | ------------------------------ | ------------------------------ | -| sdkerrors.InternLifecycleError | 401, 403, 404, 408 | application/json | -| sdkerrors.InternLifecycleError | 500 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## ProvisionIntern - -Starts the first boot, or resumes an intern after suspension. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.ProvisionIntern(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.ProvisionInternResponse](../../models/components/provisioninternresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 409, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 500, 502 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## SuspendIntern - -Stops the intern runtime while keeping its disk and configuration for a later provision call. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.SuspendIntern(ctx, "7c9e6679-7425-40de-944b-e07fc1f90ae7") - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | ID of an intern visible to the authenticated API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*components.SuspendInternResponse](../../models/components/suspendinternresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| sdkerrors.InternLifecycleError | 400, 401, 403, 404, 408, 409, 413, 415 | application/json | -| sdkerrors.InternLifecycleError | 500, 502 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## Chat - -Sends a prompt to one of your interns and streams the reply as OpenAI-compatible server-sent events ending with `[DONE]`. The run executes on the intern, which may pause to ask you something. It then streams one `openrouter.provide_input` tool call and finishes with `finish_reason: "tool_calls"`, and the run stays open on the intern. - -Every response, whether it ends with `stop`, `tool_calls` or `error`, is followed by a final chunk with empty `choices` that carries `session_id`, then `data: [DONE]`. That chunk carries the `usage` the intern reported for the run, after `stop` or `error`, and `null` when the intern reported none. After `tool_calls` its `usage` is `null` because the turn is not over. Read through `[DONE]`: the `session_id` you need to reply arrives after the `tool_calls` finish chunk. - -To answer, send a second request with the same `session_id`, the assistant message echoing that tool call, and a `tool` message whose `tool_call_id` is the tool call id and whose `content` is the answer. The answer is delivered to the run that asked and the stream continues from where it paused. A question stays open for its interaction deadline (5 minutes by default) and the run is cancelled when that passes. Rejected replies do not extend the deadline. - -Closing the connection after the `[DONE]` that follows `finish_reason: "tool_calls"` keeps the run alive. Disconnecting while a response is still streaming cancels the run. The stream writes a `: keepalive` comment whenever nothing else has been written for 30 seconds, so a disconnect is noticed within that interval even while the intern is silent. - -A run the intern ends while you are still connected, by cancellation or by a deadline, ends the stream with a `finish_reason: "error"` chunk carrying `410` and reason `run_ended`, then the final empty-`choices` chunk and `[DONE]`. That error reports only an ending the intern confirmed. A connection that breaks without that confirmation ends with reason `stream_severed`, and a client that has already disconnected is promised no final event. - -Set `approval_mode` to `manual` to have the intern ask before approval-bearing tools such as the shell. Omitted, the run self-drives and consents on your behalf. The mode belongs to the run started by that prompt and must be repeated on later prompts. - -Available to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.Chat(ctx, "a11e0000-0000-4000-8000-000000000005", components.InternChatCompletionRequest{ - ApprovalMode: components.InternApprovalModeManual.ToPointer(), - Messages: []components.InternChatMessage{ - components.CreateInternChatMessageUser( - components.InternChatUserMessage{ - Content: openrouter.Pointer(components.CreateInternChatMessageContentStr( - "Summarize the open pull requests.", - )), - Role: components.InternChatUserMessageRoleUser, - }, - ), - }, - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - defer res.InternChatStreamingResponse.Close() - - for res.InternChatStreamingResponse.Next() { - event := res.InternChatStreamingResponse.Value() - log.Print(event) - // Handle the event - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | The intern to talk to. | a11e0000-0000-4000-8000-000000000005 | -| `internChatCompletionRequest` | [components.InternChatCompletionRequest](../../models/components/internchatcompletionrequest.mdx) | ✅ | N/A | \{
"approval_mode": "manual",
"messages": [
\{
"content": "Summarize the open pull requests.",
"role": "user"
}
],
"stream": true
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*operations.CreateInternChatCompletionResponse](../../models/operations/createinternchatcompletionresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| sdkerrors.InternChatErrorResponse | 400, 401, 403, 404, 408, 410, 413 | application/json | -| sdkerrors.InternChatErrorResponse | 409, 429 | application/json | -| sdkerrors.InternChatErrorResponse | 503 | application/json | -| sdkerrors.InternChatErrorResponse | 502, 504 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | - -## Invoke - -Starts a run on one of your interns and answers `202` with the `session_id` as soon as the intern accepts it. The run keeps going on the intern after the response. Nothing about its progress comes back on this request; the intern reports through its own tools, such as Slack. - -Send the same `session_id` later to continue the conversation, for example to hand the intern a decision on work it started. If that session already has a run going, the prompt is delivered into it and the status is `steered`. A `session_id` is accepted only from the caller it was issued to, on the same intern; any other, including sessions started from Slack or the chat endpoint, is refused with `404`. - -Runs started here self-drive: the intern consents to its own tool approvals, and a question it asks is answered by its own fallback. A run ends when the intern finishes it or after its execution deadline (1 hour by default). - -Available to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`. - -### Example Usage - -```go -package main - -import( - "context" - "os" - openrouter "github.com/OpenRouterTeam/go-sdk" - "github.com/OpenRouterTeam/go-sdk/models/components" - "log" -) - -func main() { - ctx := context.Background() - - s := openrouter.New( - openrouter.WithSecurity(os.Getenv("OPENROUTER_API_KEY")), - ) - - res, err := s.Interns.Invoke(ctx, "a11e0000-0000-4000-8000-000000000005", components.InternInvokeRequest{ - Input: "New support ticket 48213. Case token: ct_9f2c. Investigate and reply.", - }) - if err != nil { - log.Fatal(err) - } - if res != nil { - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | The intern to run. | a11e0000-0000-4000-8000-000000000005 | -| `internInvokeRequest` | [components.InternInvokeRequest](../../models/components/interninvokerequest.mdx) | ✅ | N/A | \{
"input": "New support ticket 48213. Case token: ct_9f2c. Investigate and reply."
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | - -### Response - -**[*operations.InvokeInternResponse](../../models/operations/invokeinternresponse.mdx), error** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| sdkerrors.InternChatErrorResponse | 400, 401, 403, 404, 408, 413 | application/json | -| sdkerrors.InternChatErrorResponse | 409, 429 | application/json | -| sdkerrors.InternChatErrorResponse | 503 | application/json | -| sdkerrors.InternChatErrorResponse | 500, 502, 504 | application/json | -| sdkerrors.APIError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/docs/sdks/models/README.mdx b/docs/sdks/models/README.mdx index 468b4057d..e54ccf4bd 100644 --- a/docs/sdks/models/README.mdx +++ b/docs/sdks/models/README.mdx @@ -51,10 +51,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `author` | `string` | ✅ | The author/organization of the model | openai | -| `slug` | `string` | ✅ | The model slug, optionally including a variant suffix (e.g. gpt-4 or gpt-4:free) | gpt-4 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `author` | `string` | :heavy_check_mark: | The author/organization of the model | openai | +| `slug` | `string` | :heavy_check_mark: | The model slug, optionally including a variant suffix (e.g. gpt-4 or gpt-4:free) | gpt-4 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -119,9 +119,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.GetModelsRequest](../../models/operations/getmodelsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.GetModelsRequest](../../models/operations/getmodelsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -173,9 +173,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `outputModalities` | `*string` | ➖ | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `outputModalities` | `*string` | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -241,13 +241,13 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `security` | [operations.ListModelsUserSecurity](../../models/operations/listmodelsusersecurity.mdx) | ✅ | The security requirements to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | -| `outputModalities` | `*string` | ➖ | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | -| `sort` | [*operations.ListModelsUserSort](../../models/operations/listmodelsusersort.mdx) | ➖ | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `security` | [operations.ListModelsUserSecurity](../../models/operations/listmodelsusersecurity.mdx) | :heavy_check_mark: | The security requirements to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 1000). When both offset and limit are omitted, the full list is returned | 500 | +| `outputModalities` | `*string` | :heavy_minus_sign: | Filter models by output modality. Accepts a comma-separated list of modalities (text, image, embeddings, audio, video, rerank, decisions, speech, transcription) or "all" to include all models. Defaults to "text". | text | +| `sort` | [*operations.ListModelsUserSort](../../models/operations/listmodelsusersort.mdx) | :heavy_minus_sign: | Sort the returned models server-side. Prefer this over fetching the full list and sorting client-side. Options: pricing-low-to-high, pricing-high-to-low (average prompt/completion price), context-high-to-low (context length), throughput-high-to-low, latency-low-to-high (recent median performance), most-popular, top-weekly (tokens processed in the last week), newest (creation date), intelligence-high-to-low, coding-high-to-low, agentic-high-to-low (Artificial Analysis indices), design-arena-elo-high-to-low (best Design Arena ELO across arenas). Models without a score for the chosen benchmark are placed last. When omitted, the existing default ordering is preserved. | newest | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/oauth/README.mdx b/docs/sdks/oauth/README.mdx index 968525924..68fdcc465 100644 --- a/docs/sdks/oauth/README.mdx +++ b/docs/sdks/oauth/README.mdx @@ -57,9 +57,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.ExchangeAuthCodeForAPIKeyRequest](../../models/operations/exchangeauthcodeforapikeyrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.ExchangeAuthCodeForAPIKeyRequest](../../models/operations/exchangeauthcodeforapikeyrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -117,9 +117,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.CreateAuthKeysCodeRequest](../../models/operations/createauthkeyscoderequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.CreateAuthKeysCodeRequest](../../models/operations/createauthkeyscoderequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -173,8 +173,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -230,9 +230,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.TokenExchangeRequest](../../models/components/tokenexchangerequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.TokenExchangeRequest](../../models/components/tokenexchangerequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/observability/README.mdx b/docs/sdks/observability/README.mdx index b4fee4f0b..752f745d5 100644 --- a/docs/sdks/observability/README.mdx +++ b/docs/sdks/observability/README.mdx @@ -65,11 +65,11 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `workspaceID` | `*string` | ➖ | Optional workspace ID to filter by. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `workspaceID` | `*string` | :heavy_minus_sign: | Optional workspace ID to filter by. Defaults to the authenticated entity's default workspace. | 550e8400-e29b-41d4-a716-446655440000 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -169,9 +169,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateObservabilityDestinationRequest](../../models/components/createobservabilitydestinationrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateObservabilityDestinationRequest](../../models/components/createobservabilitydestinationrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -225,9 +225,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -319,9 +319,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -416,10 +416,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | -| `updateObservabilityDestinationRequest` | [components.UpdateObservabilityDestinationRequest](../../models/components/updateobservabilitydestinationrequest.mdx) | ✅ | N/A | \{
"enabled": false,
"name": "Updated Langfuse"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The destination ID (UUID). | 99999999-aaaa-bbbb-cccc-dddddddddddd | +| `updateObservabilityDestinationRequest` | [components.UpdateObservabilityDestinationRequest](../../models/components/updateobservabilitydestinationrequest.mdx) | :heavy_check_mark: | N/A | \{
"enabled": false,
"name": "Updated Langfuse"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/organization/README.mdx b/docs/sdks/organization/README.mdx index 4e4d3d34a..90358ce3e 100644 --- a/docs/sdks/organization/README.mdx +++ b/docs/sdks/organization/README.mdx @@ -63,10 +63,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -119,8 +119,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -176,9 +176,9 @@ func main() { | Parameter | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.UpdateOrganizationSettingsRequest](../../models/components/updateorganizationsettingsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.UpdateOrganizationSettingsRequest](../../models/components/updateorganizationsettingsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/presets/README.mdx b/docs/sdks/presets/README.mdx index 2b825cbcd..45b27b4ec 100644 --- a/docs/sdks/presets/README.mdx +++ b/docs/sdks/presets/README.mdx @@ -67,10 +67,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -123,9 +123,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -202,10 +202,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `chatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | ✅ | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `chatRequest` | [components.ChatRequest](../../models/components/chatrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 150,
"messages": [
\{
"content": "You are a helpful assistant.",
"role": "system"
},
\{
"content": "What is the capital of France?",
"role": "user"
}
],
"model": "openai/gpt-4",
"temperature": 0.7
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -275,10 +275,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `messagesRequest` | [components.MessagesRequest](../../models/components/messagesrequest.mdx) | ✅ | N/A | \{
"max_tokens": 1024,
"messages": [
\{
"content": "Hello, how are you?",
"role": "user"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `messagesRequest` | [components.MessagesRequest](../../models/components/messagesrequest.mdx) | :heavy_check_mark: | N/A | \{
"max_tokens": 1024,
"messages": [
\{
"content": "Hello, how are you?",
"role": "user"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -341,10 +341,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | -| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | ✅ | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. Created if it does not exist. | my-preset | +| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -412,11 +412,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -470,10 +470,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `slug` | `string` | ✅ | URL-safe slug identifying the preset. | my-preset | -| `version` | `string` | ✅ | Version number of the preset. | 1 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `slug` | `string` | :heavy_check_mark: | URL-safe slug identifying the preset. | my-preset | +| `version` | `string` | :heavy_check_mark: | Version number of the preset. | 1 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/privateendpoints/README.mdx b/docs/sdks/privateendpoints/README.mdx index f7cbd7042..1eec3acc5 100644 --- a/docs/sdks/privateendpoints/README.mdx +++ b/docs/sdks/privateendpoints/README.mdx @@ -57,8 +57,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -116,10 +116,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `createPrivateEndpointRequest` | [components.CreatePrivateEndpointRequest](../../models/components/createprivateendpointrequest.mdx) | ✅ | N/A | | -| `idempotencyKey` | `*string` | ➖ | Retry-safe create: a repeated create with the same key from the same organization returns the endpoint the first request created instead of creating another. The endpoint is returned as it is now. Reusing a key with a different request body (model, provider, base URL, upstream model ID, declared ZDR or region, or pricing) is rejected with 422 `idempotency_key_reused`. `activate` is not compared, and later edits to the endpoint do not affect the comparison. | wayfair-gpt-4o-eastus-2026-09 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `createPrivateEndpointRequest` | [components.CreatePrivateEndpointRequest](../../models/components/createprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | +| `idempotencyKey` | `*string` | :heavy_minus_sign: | Retry-safe create: a repeated create with the same key from the same organization returns the endpoint the first request created instead of creating another. The endpoint is returned as it is now. Reusing a key with a different request body (model, provider, base URL, upstream model ID, declared ZDR or region, or pricing) is rejected with 422 `idempotency_key_reused`. `activate` is not compared, and later edits to the endpoint do not affect the comparison. | wayfair-gpt-4o-eastus-2026-09 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -177,10 +177,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `draftOnly` | [*operations.DraftOnly](../../models/operations/draftonly.mdx) | ➖ | When `true`, only delete the endpoint if it is still a draft (409 otherwise). | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `draftOnly` | [*operations.DraftOnly](../../models/operations/draftonly.mdx) | :heavy_minus_sign: | When `true`, only delete the endpoint if it is still a draft (409 otherwise). | | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -238,9 +238,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -297,10 +297,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `updatePrivateEndpointRequest` | [components.UpdatePrivateEndpointRequest](../../models/components/updateprivateendpointrequest.mdx) | ✅ | N/A | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `updatePrivateEndpointRequest` | [components.UpdatePrivateEndpointRequest](../../models/components/updateprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -358,9 +358,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -418,9 +418,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -478,9 +478,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -544,10 +544,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `updatePrivateEndpointPricingRequest` | [components.UpdatePrivateEndpointPricingRequest](../../models/components/updateprivateendpointpricingrequest.mdx) | ✅ | N/A | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `updatePrivateEndpointPricingRequest` | [components.UpdatePrivateEndpointPricingRequest](../../models/components/updateprivateendpointpricingrequest.mdx) | :heavy_check_mark: | N/A | | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -608,10 +608,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | -| `validatePrivateEndpointRequest` | [components.ValidatePrivateEndpointRequest](../../models/components/validateprivateendpointrequest.mdx) | ✅ | N/A | | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | Stable identifier of the private endpoint. | 5b1c4c4e-7d0a-4a8e-9f3a-2d6c1b0e8a11 | +| `validatePrivateEndpointRequest` | [components.ValidatePrivateEndpointRequest](../../models/components/validateprivateendpointrequest.mdx) | :heavy_check_mark: | N/A | | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/providers/README.mdx b/docs/sdks/providers/README.mdx index 227492908..783dc0ff4 100644 --- a/docs/sdks/providers/README.mdx +++ b/docs/sdks/providers/README.mdx @@ -48,8 +48,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/rerank/README.mdx b/docs/sdks/rerank/README.mdx index 7ebb963e4..011e7075f 100644 --- a/docs/sdks/rerank/README.mdx +++ b/docs/sdks/rerank/README.mdx @@ -60,9 +60,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.CreateRerankRequest](../../models/operations/creatererankrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.CreateRerankRequest](../../models/operations/creatererankrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/responses/README.mdx b/docs/sdks/responses/README.mdx index 69d192efe..ab1b772c8 100644 --- a/docs/sdks/responses/README.mdx +++ b/docs/sdks/responses/README.mdx @@ -90,10 +90,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | ✅ | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | -| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | ➖ | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `responsesRequest` | [components.ResponsesRequest](../../models/components/responsesrequest.mdx) | :heavy_check_mark: | N/A | \{
"input": [
\{
"content": "Hello, how are you?",
"role": "user",
"type": "message"
}
],
"model": "anthropic/claude-4.5-sonnet-20250929",
"temperature": 0.7,
"tools": [
\{
"description": "Get the current weather in a given location",
"name": "get_current_weather",
"parameters": \{
"properties": \{
"location": \{
"type": "string"
}
},
"type": "object"
},
"type": "function"
}
],
"top_p": 0.9
} | +| `xOpenRouterMetadata` | [*components.MetadataLevel](../../models/components/metadatalevel.mdx) | :heavy_minus_sign: | Opt-in to surface routing metadata on the response under `openrouter_metadata`. Defaults to `disabled`. The legacy header `X-OpenRouter-Experimental-Metadata` is also accepted for backward compatibility. | enabled | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/scim/README.mdx b/docs/sdks/scim/README.mdx index 873013fed..f4328a998 100644 --- a/docs/sdks/scim/README.mdx +++ b/docs/sdks/scim/README.mdx @@ -68,10 +68,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -129,9 +129,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateScimGroupMappingRequest](../../models/components/createscimgroupmappingrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateScimGroupMappingRequest](../../models/components/createscimgroupmappingrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -189,10 +189,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | N/A | | -| `keepMembers` | [operations.KeepMembers](../../models/operations/keepmembers.mdx) | ✅ | Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required. | false | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | N/A | | +| `keepMembers` | [operations.KeepMembers](../../models/operations/keepmembers.mdx) | :heavy_check_mark: | Required. Whether to keep workspace members after deleting the mapping. `false` **removes** the members this mapping granted access to; `true` deletes the mapping while leaving membership intact as manually-managed. There is deliberately no default — omitting it returns `400` so the destructive path cannot be reached by accident. Mirrors the dashboard, whose `DeleteMappingSchema.keepMembers` is likewise required. | false | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -246,9 +246,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `id` | `string` | ✅ | N/A | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `id` | `string` | :heavy_check_mark: | N/A | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -304,10 +304,10 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `id` | `string` | ✅ | N/A | -| `updateScimGroupMappingRequest` | [components.UpdateScimGroupMappingRequest](../../models/components/updatescimgroupmappingrequest.mdx) | ✅ | N/A | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `id` | `string` | :heavy_check_mark: | N/A | +| `updateScimGroupMappingRequest` | [components.UpdateScimGroupMappingRequest](../../models/components/updatescimgroupmappingrequest.mdx) | :heavy_check_mark: | N/A | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -374,12 +374,12 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `displayName` | `*string` | ➖ | Exact match filter on display_name. Omitted or empty returns groups unfiltered by name (subject to offset/limit). When external_id is also present, both must match. | Engineering | -| `externalID` | `*string` | ➖ | Exact match filter on external_id, e.g. the identity provider (such as Entra ID) group object ID. Omitted or empty returns groups unfiltered by external_id (subject to offset/limit). When display_name is also present, both must match. | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `displayName` | `*string` | :heavy_minus_sign: | Exact match filter on display_name. Omitted or empty returns groups unfiltered by name (subject to offset/limit). When external_id is also present, both must match. | Engineering | +| `externalID` | `*string` | :heavy_minus_sign: | Exact match filter on external_id, e.g. the identity provider (such as Entra ID) group object ID. Omitted or empty returns groups unfiltered by external_id (subject to offset/limit). When display_name is also present, both must match. | a1b2c3d4-e5f6-7890-abcd-ef1234567890 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -432,8 +432,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -486,9 +486,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `id` | `string` | ✅ | N/A | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `id` | `string` | :heavy_check_mark: | N/A | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/stt/README.mdx b/docs/sdks/stt/README.mdx index bb119e8d6..7ec08b4d2 100644 --- a/docs/sdks/stt/README.mdx +++ b/docs/sdks/stt/README.mdx @@ -59,9 +59,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.STTRequest](../../models/components/sttrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.STTRequest](../../models/components/sttrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -136,9 +136,9 @@ func main() { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [operations.CreateAudioTranscriptionsMultipartRequest](../../models/operations/createaudiotranscriptionsmultipartrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [operations.CreateAudioTranscriptionsMultipartRequest](../../models/operations/createaudiotranscriptionsmultipartrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/systemone/README.mdx b/docs/sdks/systemone/README.mdx index 34a3142d7..cd471b881 100644 --- a/docs/sdks/systemone/README.mdx +++ b/docs/sdks/systemone/README.mdx @@ -113,9 +113,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.DecisionsRequest](../../models/components/decisionsrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.DecisionsRequest](../../models/components/decisionsrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/tools/README.mdx b/docs/sdks/tools/README.mdx index 110d5db8b..5edb3770d 100644 --- a/docs/sdks/tools/README.mdx +++ b/docs/sdks/tools/README.mdx @@ -51,12 +51,12 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `security` | [operations.ListToolsSecurity](../../models/operations/listtoolssecurity.mdx) | ✅ | The security requirements to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100). When both offset and limit are omitted, the full list is returned | 50 | -| `apiFormat` | [*operations.APIFormat](../../models/operations/apiformat.mdx) | ➖ | Only tools usable on this API format | responses | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `security` | [operations.ListToolsSecurity](../../models/operations/listtoolssecurity.mdx) | :heavy_check_mark: | The security requirements to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination. When both offset and limit are omitted, the full list is returned | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100). When both offset and limit are omitted, the full list is returned | 50 | +| `apiFormat` | [*operations.APIFormat](../../models/operations/apiformat.mdx) | :heavy_minus_sign: | Only tools usable on this API format | responses | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -110,10 +110,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `security` | [operations.GetToolSecurity](../../models/operations/gettoolsecurity.mdx) | ✅ | The security requirements to use for the request. | | -| `name` | `string` | ✅ | Canonical `openrouter:*` name or any accepted `tools[].type` alias | openrouter:web_search | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `security` | [operations.GetToolSecurity](../../models/operations/gettoolsecurity.mdx) | :heavy_check_mark: | The security requirements to use for the request. | | +| `name` | `string` | :heavy_check_mark: | Canonical `openrouter:*` name or any accepted `tools[].type` alias | openrouter:web_search | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/tts/README.mdx b/docs/sdks/tts/README.mdx index 94971c4f8..f66abb8ed 100644 --- a/docs/sdks/tts/README.mdx +++ b/docs/sdks/tts/README.mdx @@ -56,9 +56,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.SpeechRequest](../../models/components/speechrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.SpeechRequest](../../models/components/speechrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/vault/README.mdx b/docs/sdks/vault/README.mdx index 687db5b31..1b3fbc873 100644 --- a/docs/sdks/vault/README.mdx +++ b/docs/sdks/vault/README.mdx @@ -56,9 +56,9 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -117,11 +117,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -180,11 +180,11 @@ func main() { | Parameter | Type | Required | Description | Example | | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | ----------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -240,10 +240,10 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -853,11 +853,11 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `vaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | ✅ | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `vaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | :heavy_check_mark: | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -1418,10 +1418,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `internID` | `string` | ✅ | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | -| `vaultSecretCopyRequest` | [components.VaultSecretCopyRequest](../../models/components/vaultsecretcopyrequest.mdx) | ✅ | N/A | \{
"names": [
"github_token"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `internID` | `string` | :heavy_check_mark: | UUID of an intern in the workspace selected by the API key. | 7c9e6679-7425-40de-944b-e07fc1f90ae7 | +| `vaultSecretCopyRequest` | [components.VaultSecretCopyRequest](../../models/components/vaultsecretcopyrequest.mdx) | :heavy_check_mark: | N/A | \{
"names": [
"github_token"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -1482,10 +1482,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `limit` | `*int64` | ➖ | Page size, 1 to 100. Defaults to 100. | 50 | -| `offset` | `*int64` | ➖ | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `limit` | `*int64` | :heavy_minus_sign: | Page size, 1 to 100. Defaults to 100. | 50 | +| `offset` | `*int64` | :heavy_minus_sign: | Number of secrets to skip, 0 to 10000. Defaults to 0. | 0 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -1541,9 +1541,9 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -2119,10 +2119,10 @@ func main() { | Parameter | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `name` | `string` | ✅ | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | -| `vaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | ✅ | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `name` | `string` | :heavy_check_mark: | Secret name. Lowercase letters, digits and single underscores, starting with a letter and not ending with an underscore, 1 to 255 characters. | github_token | +| `vaultSecretWriteRequest` | [components.VaultSecretWriteRequest](../../models/components/vaultsecretwriterequest.mdx) | :heavy_check_mark: | N/A | \{
"hosts": [
"api.github.com"
],
"value": "ghp_exampleTokenValue"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/docs/sdks/videogeneration/README.mdx b/docs/sdks/videogeneration/README.mdx index 6d54cf2de..c722e8b37 100644 --- a/docs/sdks/videogeneration/README.mdx +++ b/docs/sdks/videogeneration/README.mdx @@ -58,9 +58,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.VideoGenerationRequest](../../models/components/videogenerationrequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.VideoGenerationRequest](../../models/components/videogenerationrequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -119,9 +119,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `jobID` | `string` | ✅ | N/A | job-abc123 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `jobID` | `string` | :heavy_check_mark: | N/A | job-abc123 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -175,10 +175,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `jobID` | `string` | ✅ | N/A | job-abc123 | -| `index` | optionalnullable.OptionalNullable[`int64`] | ➖ | N/A | 0 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `jobID` | `string` | :heavy_check_mark: | N/A | job-abc123 | +| `index` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | N/A | 0 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -235,8 +235,8 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response diff --git a/docs/sdks/workspaces/README.mdx b/docs/sdks/workspaces/README.mdx index ad71542b5..28f8de773 100644 --- a/docs/sdks/workspaces/README.mdx +++ b/docs/sdks/workspaces/README.mdx @@ -72,10 +72,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -136,9 +136,9 @@ func main() { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | -| `request` | [components.CreateWorkspaceRequest](../../models/components/createworkspacerequest.mdx) | ✅ | The request object to use for the request. | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | +| `request` | [components.CreateWorkspaceRequest](../../models/components/createworkspacerequest.mdx) | :heavy_check_mark: | The request object to use for the request. | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | ### Response @@ -191,10 +191,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `confirmDefaultWorkspaceDeletion` | `*bool` | ➖ | Required to delete the default workspace. Deleting it permanently disables the account’s unscoped inference API keys (management/provisioning keys are retained) and its budgets, guardrails, classifiers, and broadcast destinations. Ignored for non-default workspaces. | false | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `confirmDefaultWorkspaceDeletion` | `*bool` | :heavy_minus_sign: | Required to delete the default workspace. Deleting it permanently disables the account’s unscoped inference API keys (management/provisioning keys are retained) and its budgets, guardrails, classifiers, and broadcast destinations. Ignored for non-default workspaces. | false | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -248,9 +248,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -307,10 +307,10 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `updateWorkspaceRequest` | [components.UpdateWorkspaceRequest](../../models/components/updateworkspacerequest.mdx) | ✅ | N/A | \{
"name": "Updated Workspace",
"slug": "updated-workspace"
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `updateWorkspaceRequest` | [components.UpdateWorkspaceRequest](../../models/components/updateworkspacerequest.mdx) | :heavy_check_mark: | N/A | \{
"name": "Updated Workspace",
"slug": "updated-workspace"
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -377,11 +377,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `offset` | optionalnullable.OptionalNullable[`int64`] | ➖ | Number of records to skip for pagination | 0 | -| `limit` | `*int64` | ➖ | Maximum number of records to return (max 100) | 50 | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `offset` | optionalnullable.OptionalNullable[`int64`] | :heavy_minus_sign: | Number of records to skip for pagination | 0 | +| `limit` | `*int64` | :heavy_minus_sign: | Maximum number of records to return (max 100) | 50 | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -440,10 +440,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `bulkAddWorkspaceMembersRequest` | [components.BulkAddWorkspaceMembersRequest](../../models/components/bulkaddworkspacemembersrequest.mdx) | ✅ | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `bulkAddWorkspaceMembersRequest` | [components.BulkAddWorkspaceMembersRequest](../../models/components/bulkaddworkspacemembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -503,10 +503,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `id` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `bulkRemoveWorkspaceMembersRequest` | [components.BulkRemoveWorkspaceMembersRequest](../../models/components/bulkremoveworkspacemembersrequest.mdx) | ✅ | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `id` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `bulkRemoveWorkspaceMembersRequest` | [components.BulkRemoveWorkspaceMembersRequest](../../models/components/bulkremoveworkspacemembersrequest.mdx) | :heavy_check_mark: | N/A | \{
"user_ids": [
"user_abc123",
"user_def456"
]
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -560,9 +560,9 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `workspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `workspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -616,10 +616,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `workspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `workspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -674,10 +674,10 @@ func main() { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `workspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `workspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response @@ -735,11 +735,11 @@ func main() { | Parameter | Type | Required | Description | Example | | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | ✅ | The context to use for the request. | | -| `workspaceRef` | `string` | ✅ | The workspace ID (UUID) or slug | production | -| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | ✅ | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | -| `upsertWorkspaceBudgetRequest` | [components.UpsertWorkspaceBudgetRequest](../../models/components/upsertworkspacebudgetrequest.mdx) | ✅ | N/A | \{
"include_byok_in_budgets": true,
"limit_usd": 100
} | -| `opts` | [][operations.Option](../../models/operations/option.mdx) | ➖ | The options for this request. | | +| `ctx` | [context.Context](https://pkg.go.dev/context#Context) | :heavy_check_mark: | The context to use for the request. | | +| `workspaceRef` | `string` | :heavy_check_mark: | The workspace ID (UUID) or slug | production | +| `interval` | [components.WorkspaceBudgetInterval](../../models/components/workspacebudgetinterval.mdx) | :heavy_check_mark: | Budget reset interval. Use "lifetime" for a one-time budget that never resets. | monthly | +| `upsertWorkspaceBudgetRequest` | [components.UpsertWorkspaceBudgetRequest](../../models/components/upsertworkspacebudgetrequest.mdx) | :heavy_check_mark: | N/A | \{
"include_byok_in_budgets": true,
"limit_usd": 100
} | +| `opts` | [][operations.Option](../../models/operations/option.mdx) | :heavy_minus_sign: | The options for this request. | | ### Response diff --git a/interns.go b/interns.go deleted file mode 100644 index 4c609c9cd..000000000 --- a/interns.go +++ /dev/null @@ -1,4262 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package openrouter - -import ( - "bytes" - "context" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/config" - "github.com/OpenRouterTeam/go-sdk/internal/hooks" - "github.com/OpenRouterTeam/go-sdk/internal/utils" - "github.com/OpenRouterTeam/go-sdk/models/components" - "github.com/OpenRouterTeam/go-sdk/models/operations" - "github.com/OpenRouterTeam/go-sdk/models/sdkerrors" - "github.com/OpenRouterTeam/go-sdk/retry" - "github.com/OpenRouterTeam/go-sdk/types/stream" - "io" - "net/http" - "net/url" -) - -// Interns - Create, inspect, update, provision, suspend and delete OpenRouter interns through an API key, and talk to them: the chat route streams OpenAI-compatible completions from one intern, pausing as an `openrouter.provide_input` tool call when the intern needs your permission or an answer. Available to interns programme members; other callers receive 404. See https://openrouter.ai/docs/guides/ori/intern-chat. -type Interns struct { - rootSDK *OpenRouter - sdkConfiguration config.SDKConfiguration - hooks *hooks.Hooks -} - -func newInterns(rootSDK *OpenRouter, sdkConfig config.SDKConfiguration, hooks *hooks.Hooks) *Interns { - return &Interns{ - rootSDK: rootSDK, - sdkConfiguration: sdkConfig, - hooks: hooks, - } -} - -// ListInterns - List interns -// Lists interns visible to the authenticated key, newest first. Filter by workspace and one or more lifecycle statuses. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) ListInterns(ctx context.Context, limit *int64, status []operations.Status, startingAfter *string, workspaceID *string, opts ...operations.Option) (*components.InternListResponse, error) { - request := operations.ListInternsRequest{ - Limit: limit, - Status: status, - StartingAfter: startingAfter, - WorkspaceID: workspaceID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := url.JoinPath(baseURL, "/interns") - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "listInterns", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateQueryParams(ctx, req, request, nil, nil); err != nil { - return nil, fmt.Errorf("error populating query params: %w", err) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternListResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// CreateIntern - Create an intern -// Creates an intern in an explicit workspace. The operation also creates its private vault. It can start provisioning immediately or wait for a later provision call. A retry with the same idempotency key and body resumes unfinished work. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) CreateIntern(ctx context.Context, createInternRequest components.CreateInternRequest, idempotencyKey *string, opts ...operations.Option) (*components.Intern, error) { - request := operations.CreateInternRequest{ - CreateInternRequest: createInternRequest, - IdempotencyKey: idempotencyKey, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := url.JoinPath(baseURL, "/interns") - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "createIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "CreateInternRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - utils.PopulateHeaders(ctx, req, request, nil) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - fallthrough - case httpRes.StatusCode == 201: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.Intern - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - fallthrough - case httpRes.StatusCode == 502: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// DeleteIntern - Delete an intern -// Starts safe teardown of the intern, its runtime and its private vault. The body is optional. Send `{"acknowledge_workspace_loss": true}` to delete a `destroy_failed` intern whose `last_failure_message` names `workspace_archive_failed`, accepting that its workspace is not backed up. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) DeleteIntern(ctx context.Context, internID string, deleteInternRequest components.DeleteInternRequest, opts ...operations.Option) (*components.DeleteInternResponse, error) { - request := operations.DeleteInternRequest{ - InternID: internID, - DeleteInternRequest: deleteInternRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "deleteIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "DeleteInternRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "DELETE", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 202: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.DeleteInternResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - fallthrough - case httpRes.StatusCode == 502: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// GetIntern - Get an intern -// Returns the public lifecycle state and settings for one visible intern. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) GetIntern(ctx context.Context, internID string, opts ...operations.Option) (*components.Intern, error) { - request := operations.GetInternRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "getIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.Intern - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// UpdateIntern - Update an intern -// Changes the intern name, description, instructions or model. Omitted fields stay unchanged. The request body is capped at 1048576 bytes and a larger body is refused with 413. A non-empty body must declare `Content-Type: application/json` or it is refused with 415. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) UpdateIntern(ctx context.Context, internID string, updateInternRequest components.UpdateInternRequest, opts ...operations.Option) (*components.Intern, error) { - request := operations.UpdateInternRequest{ - InternID: internID, - UpdateInternRequest: updateInternRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "updateIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "UpdateInternRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "PATCH", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.Intern - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// GetInternConnections - List an intern's connections -// Returns the Slack, GitHub, Google Workspace and MCP connections one visible intern can reach, and the shared ones switched off for it or disabled for the workspace. An OAuth grant needs `vault:read`, because the list names members' personal accounts; without it the route answers 403 `insufficient_scope`. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) GetInternConnections(ctx context.Context, internID string, opts ...operations.Option) (*components.InternConnectionList, error) { - request := operations.GetInternConnectionsRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/connections", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "getInternConnections", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternConnectionList - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// GetInternDaemon - Get an intern's daemon access -// Returns the origin and daemon token that attach `ori tui --host` to one visible, running intern. The token is a credential: only an OAuth-token caller (`ori login --oidc`) may read it, the response is sent with `Cache-Control: no-store`, and each reveal is logged by caller and intern. API keys get 403 `personal_identity_required`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) GetInternDaemon(ctx context.Context, internID string, opts ...operations.Option) (*components.InternDaemonAccess, error) { - request := operations.GetInternDaemonRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/daemon", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "getInternDaemon", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternDaemonAccess - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// GetInternDaemonAccess - Get an intern's daemon access (deprecated alias) -// Deprecated alias of `GET /interns/{internId}/daemon` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -// -// Deprecated: This will be removed in a future release, please migrate away from it as soon as possible. -func (s *Interns) GetInternDaemonAccess(ctx context.Context, internID string, opts ...operations.Option) (*components.InternDaemonAccess, error) { - request := operations.GetInternDaemonAccessRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/daemon-access", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "getInternDaemonAccess", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternDaemonAccess - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// SignInternDaemonAccessRequest - Sign a daemon request with the caller's identity (deprecated alias) -// Deprecated alias of `POST /interns/{internId}/daemon/sign` with the same request, response, and errors. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -// -// Deprecated: This will be removed in a future release, please migrate away from it as soon as possible. -func (s *Interns) SignInternDaemonAccessRequest(ctx context.Context, internID string, signInternDaemonRequest components.SignInternDaemonRequest, opts ...operations.Option) (*operations.SignInternDaemonAccessRequestResponse, error) { - request := operations.SignInternDaemonAccessRequestRequest{ - InternID: internID, - SignInternDaemonRequest: signInternDaemonRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/daemon-access/sign", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "signInternDaemonAccessRequest", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "SignInternDaemonRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - res := &operations.SignInternDaemonAccessRequestResponse{} - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.SignInternDaemonResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - res.Result = out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 429: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return res, nil - -} - -// SignInternDaemonRequest - Sign a daemon request with the caller's identity -// Signs the SHA-256 digest of one request the CLI is about to send to the intern daemon, binding it to the intern and to the signed-in member so personal connections resolve. Only an OAuth session from `ori login --oidc` whose grant carries `vault:read` can sign: an API key is refused with 403 because it names no person, and an `interns`-only grant is refused with 403 because a proof releases that user's personal connections. The route is behind the same gate as chat and counts against the chat turn limiter. The response is sent with `Cache-Control: no-store`. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) SignInternDaemonRequest(ctx context.Context, internID string, signInternDaemonRequest components.SignInternDaemonRequest, opts ...operations.Option) (*operations.SignInternDaemonRequestResponse, error) { - request := operations.SignInternDaemonRequestRequest{ - InternID: internID, - SignInternDaemonRequest: signInternDaemonRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/daemon/sign", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "signInternDaemonRequest", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "SignInternDaemonRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - res := &operations.SignInternDaemonRequestResponse{} - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.SignInternDaemonResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - res.Result = out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 429: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return res, nil - -} - -// GetInternIcon - Get an intern's icon -// Returns the icon image of one visible intern. Pass the intern's `icon_sha256` as `v` to receive a response that can be cached indefinitely. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) GetInternIcon(ctx context.Context, internID string, v *string, opts ...operations.Option) (io.ReadCloser, error) { - request := operations.GetInternIconRequest{ - InternID: internID, - V: v, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/icon", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "getInternIcon", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "GET", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "image/*") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateQueryParams(ctx, req, request, nil, nil); err != nil { - return nil, fmt.Errorf("error populating query params: %w", err) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `image/*`): - return httpRes.Body, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// ProvisionIntern - Provision an intern -// Starts the first boot, or resumes an intern after suspension. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) ProvisionIntern(ctx context.Context, internID string, opts ...operations.Option) (*components.ProvisionInternResponse, error) { - request := operations.ProvisionInternRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/provision", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "provisionIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 202: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.ProvisionInternResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - fallthrough - case httpRes.StatusCode == 502: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// SuspendIntern - Suspend an intern -// Stops the intern runtime while keeping its disk and configuration for a later provision call. This operation takes no request body. A body carrying any field is refused with 400 rather than ignored. The API key selects the caller, workspace and visible interns. An intern's own API key sees only that intern: the collection and every other intern answer 404 to it. There is no default workspace fallback. Requests on regional hostnames such as `eu.openrouter.ai` are refused. [API key](/docs/api-reference/authentication) required. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) SuspendIntern(ctx context.Context, internID string, opts ...operations.Option) (*components.SuspendInternResponse, error) { - request := operations.SuspendInternRequest{ - InternID: internID, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/suspend", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "suspendIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, nil) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.SuspendInternResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return &out, nil - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 413: - fallthrough - case httpRes.StatusCode == 415: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - fallthrough - case httpRes.StatusCode == 502: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternLifecycleError - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return nil, nil - -} - -// Chat - Stream a chat completion with an intern -// Sends a prompt to one of your interns and streams the reply as OpenAI-compatible server-sent events ending with `[DONE]`. The run executes on the intern, which may pause to ask you something. It then streams one `openrouter.provide_input` tool call and finishes with `finish_reason: "tool_calls"`, and the run stays open on the intern. -// -// Every response, whether it ends with `stop`, `tool_calls` or `error`, is followed by a final chunk with empty `choices` that carries `session_id`, then `data: [DONE]`. That chunk carries the `usage` the intern reported for the run, after `stop` or `error`, and `null` when the intern reported none. After `tool_calls` its `usage` is `null` because the turn is not over. Read through `[DONE]`: the `session_id` you need to reply arrives after the `tool_calls` finish chunk. -// -// To answer, send a second request with the same `session_id`, the assistant message echoing that tool call, and a `tool` message whose `tool_call_id` is the tool call id and whose `content` is the answer. The answer is delivered to the run that asked and the stream continues from where it paused. A question stays open for its interaction deadline (5 minutes by default) and the run is cancelled when that passes. Rejected replies do not extend the deadline. -// -// Closing the connection after the `[DONE]` that follows `finish_reason: "tool_calls"` keeps the run alive. Disconnecting while a response is still streaming cancels the run. The stream writes a `: keepalive` comment whenever nothing else has been written for 30 seconds, so a disconnect is noticed within that interval even while the intern is silent. -// -// A run the intern ends while you are still connected, by cancellation or by a deadline, ends the stream with a `finish_reason: "error"` chunk carrying `410` and reason `run_ended`, then the final empty-`choices` chunk and `[DONE]`. That error reports only an ending the intern confirmed. A connection that breaks without that confirmation ends with reason `stream_severed`, and a client that has already disconnected is promised no final event. -// -// Set `approval_mode` to `manual` to have the intern ask before approval-bearing tools such as the shell. Omitted, the run self-drives and consents on your behalf. The mode belongs to the run started by that prompt and must be repeated on later prompts. -// -// Available to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) Chat(ctx context.Context, internID string, internChatCompletionRequest components.InternChatCompletionRequest, opts ...operations.Option) (*operations.CreateInternChatCompletionResponse, error) { - request := operations.CreateInternChatCompletionRequest{ - InternID: internID, - InternChatCompletionRequest: internChatCompletionRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - operations.SupportedOptionAcceptHeaderOverride, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/chat/completions", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "createInternChatCompletion", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "InternChatCompletionRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - if o.AcceptHeaderOverride != nil { - req.Header.Set("Accept", string(*o.AcceptHeaderOverride)) - } else { - req.Header.Set("Accept", "application/json;q=1, text/event-stream;q=0") - } - - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - res := &operations.CreateInternChatCompletionResponse{} - - switch { - case httpRes.StatusCode == 200: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `text/event-stream`): - out := stream.NewEventStream(ctx, httpRes.Body, func(se []byte) (components.InternChatStreamingResponse, error) { - var e components.InternChatStreamingResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(se), &e, ""); err != nil { - return components.InternChatStreamingResponse{}, err - } - return e, nil - }, "[DONE]") - result := operations.CreateCreateInternChatCompletionResponseResultEventStream(out) - res.Result = result - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 202: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternChatSteeredResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - result := operations.CreateCreateInternChatCompletionResponseResultInternChatSteeredResponse(out) - res.Result = result - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 410: - fallthrough - case httpRes.StatusCode == 413: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 429: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 503: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 502: - fallthrough - case httpRes.StatusCode == 504: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return res, nil - -} - -// Invoke - Start an intern run without waiting for it -// Starts a run on one of your interns and answers `202` with the `session_id` as soon as the intern accepts it. The run keeps going on the intern after the response. Nothing about its progress comes back on this request; the intern reports through its own tools, such as Slack. -// -// Send the same `session_id` later to continue the conversation, for example to hand the intern a decision on work it started. If that session already has a run going, the prompt is delivered into it and the status is `steered`. A `session_id` is accepted only from the caller it was issued to, on the same intern; any other, including sessions started from Slack or the chat endpoint, is refused with `404`. -// -// Runs started here self-drive: the intern consents to its own tool approvals, and a question it asks is answered by its own fallback. A run ends when the intern finishes it or after its execution deadline (1 hour by default). -// -// Available to interns programme members. Callers outside the programme receive `404` for every path under `/api/v1/interns`. -// -// If set, this operation will use [Security.APIKey] from the global security. -func (s *Interns) Invoke(ctx context.Context, internID string, internInvokeRequest components.InternInvokeRequest, opts ...operations.Option) (*operations.InvokeInternResponse, error) { - request := operations.InvokeInternRequest{ - InternID: internID, - InternInvokeRequest: internInvokeRequest, - } - - o := operations.Options{} - supportedOptions := []string{ - operations.SupportedOptionRetries, - operations.SupportedOptionTimeout, - } - - for _, opt := range opts { - if err := opt(&o, supportedOptions...); err != nil { - return nil, fmt.Errorf("error applying option: %w", err) - } - } - - var baseURL string - if o.ServerURL == nil { - baseURL = utils.ReplaceParameters(s.sdkConfiguration.GetServerDetails()) - } else { - baseURL = *o.ServerURL - } - opURL, err := utils.GenerateURL(ctx, baseURL, "/interns/{internId}/invoke", request, nil) - if err != nil { - return nil, fmt.Errorf("error generating URL: %w", err) - } - - hookCtx := hooks.HookContext{ - SDK: s.rootSDK, - SDKConfiguration: s.sdkConfiguration, - BaseURL: baseURL, - Context: ctx, - OperationID: "invokeIntern", - OAuth2Scopes: nil, - SecuritySource: s.sdkConfiguration.Security, - } - bodyReader, reqContentType, err := utils.SerializeRequestBody(ctx, request, false, false, "InternInvokeRequest", "json", `request:"mediaType=application/json"`) - if err != nil { - return nil, err - } - - timeout := o.Timeout - if timeout == nil { - timeout = s.sdkConfiguration.Timeout - } - - if timeout != nil { - var cancel context.CancelFunc - ctx, cancel = context.WithTimeout(ctx, *timeout) - defer cancel() - } - - req, err := http.NewRequestWithContext(ctx, "POST", opURL, bodyReader) - if err != nil { - return nil, fmt.Errorf("error creating request: %w", err) - } - req.Header.Set("Accept", "application/json") - req.Header.Set("User-Agent", s.sdkConfiguration.UserAgent) - if reqContentType != "" { - req.Header.Set("Content-Type", reqContentType) - } - - if err := utils.PopulateSecurity(ctx, req, s.sdkConfiguration.Security, "APIKey"); err != nil { - return nil, err - } - - for k, v := range o.SetHeaders { - req.Header.Set(k, v) - } - - globalRetryConfig := s.sdkConfiguration.RetryConfig - retryConfig := o.Retries - if retryConfig == nil { - if globalRetryConfig != nil { - retryConfig = globalRetryConfig - } else { - retryConfig = &retry.Config{ - Strategy: "backoff", Backoff: &retry.BackoffStrategy{ - InitialInterval: 500, - MaxInterval: 60000, - Exponent: 1.5, - MaxElapsedTime: 3600000, - }, - RetryConnectionErrors: true, - } - } - } - - var httpRes *http.Response - if retryConfig != nil { - httpRes, err = utils.Retry(ctx, utils.Retries{ - Config: retryConfig, - StatusCodes: []string{ - "5XX", - }, - }, func() (*http.Response, error) { - if req.Body != nil && req.Body != http.NoBody && req.GetBody != nil { - copyBody, err := req.GetBody() - - if err != nil { - return nil, err - } - - req.Body = copyBody - } - - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - if retry.IsPermanentError(err) || retry.IsTemporaryError(err) { - return nil, err - } - - return nil, retry.Permanent(err) - } - - httpRes, err := s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - } - return httpRes, err - }) - - if err != nil { - return nil, err - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } else { - req, err = s.hooks.BeforeRequest(hooks.BeforeRequestContext{HookContext: hookCtx}, req) - if err != nil { - return nil, err - } - - httpRes, err = s.sdkConfiguration.Client.Do(req) - if err != nil || httpRes == nil { - if err != nil { - err = fmt.Errorf("error sending request: %w", err) - } else { - err = fmt.Errorf("error sending request: no response") - } - - _, err = s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, nil, err) - return nil, err - } else if utils.MatchStatusCodes([]string{"4XX", "5XX"}, httpRes.StatusCode) { - _httpRes, err := s.hooks.AfterError(hooks.AfterErrorContext{HookContext: hookCtx}, httpRes, nil) - if err != nil { - return nil, err - } else if _httpRes != nil { - httpRes = _httpRes - } - } else { - httpRes, err = s.hooks.AfterSuccess(hooks.AfterSuccessContext{HookContext: hookCtx}, httpRes) - if err != nil { - return nil, err - } - } - } - - res := &operations.InvokeInternResponse{} - - switch { - case httpRes.StatusCode == 202: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out components.InternInvokeAcceptedResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - res.Result = out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 400: - fallthrough - case httpRes.StatusCode == 401: - fallthrough - case httpRes.StatusCode == 403: - fallthrough - case httpRes.StatusCode == 404: - fallthrough - case httpRes.StatusCode == 408: - fallthrough - case httpRes.StatusCode == 413: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 409: - fallthrough - case httpRes.StatusCode == 429: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 503: - res.Headers = httpRes.Header - - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode == 500: - fallthrough - case httpRes.StatusCode == 502: - fallthrough - case httpRes.StatusCode == 504: - switch { - case utils.MatchContentType(httpRes.Header.Get("Content-Type"), `application/json`): - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - - var out sdkerrors.InternChatErrorResponse - if err := utils.UnmarshalJsonFromResponseBody(bytes.NewBuffer(rawBody), &out, ""); err != nil { - return nil, err - } - - return nil, &out - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError(fmt.Sprintf("unknown content-type received: %s", httpRes.Header.Get("Content-Type")), httpRes.StatusCode, string(rawBody), httpRes) - } - case httpRes.StatusCode >= 400 && httpRes.StatusCode < 500: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - case httpRes.StatusCode >= 500 && httpRes.StatusCode < 600: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("API error occurred", httpRes.StatusCode, string(rawBody), httpRes) - default: - rawBody, err := utils.ConsumeRawBody(httpRes) - if err != nil { - return nil, err - } - return nil, sdkerrors.NewAPIError("unknown status code returned", httpRes.StatusCode, string(rawBody), httpRes) - } - - return res, nil - -} diff --git a/models/components/createinternrequest.go b/models/components/createinternrequest.go deleted file mode 100644 index 8870ebdff..000000000 --- a/models/components/createinternrequest.go +++ /dev/null @@ -1,77 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" - "github.com/OpenRouterTeam/go-sdk/optionalnullable" -) - -// CreateInternRequest - Settings for a new intern. -type CreateInternRequest struct { - // Free-form description, or null. - Description optionalnullable.OptionalNullable[string] `json:"description,omitzero"` - // Standing instructions the intern boots with, or null. - Instructions optionalnullable.OptionalNullable[string] `json:"instructions,omitzero"` - // Intern name, unique per creator within the workspace. - Name string `json:"name"` - // Start provisioning during this create operation. Defaults to false. - Provision *bool `default:"false" json:"provision"` - // Vault owned by another intern in this workspace to attach as a borrowed vault. - VaultID *string `json:"vault_id,omitzero"` - // Workspace that will own the intern. Defaults to the workspace the API key resolves to. When given, it must match the API key workspace. - WorkspaceID *string `json:"workspace_id,omitzero"` -} - -func (c CreateInternRequest) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(c, "", false) -} - -func (c *CreateInternRequest) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &c, "", false, nil); err != nil { - return err - } - return nil -} - -func (c *CreateInternRequest) GetDescription() optionalnullable.OptionalNullable[string] { - if c == nil { - return nil - } - return c.Description -} - -func (c *CreateInternRequest) GetInstructions() optionalnullable.OptionalNullable[string] { - if c == nil { - return nil - } - return c.Instructions -} - -func (c *CreateInternRequest) GetName() string { - if c == nil { - return "" - } - return c.Name -} - -func (c *CreateInternRequest) GetProvision() *bool { - if c == nil { - return nil - } - return c.Provision -} - -func (c *CreateInternRequest) GetVaultID() *string { - if c == nil { - return nil - } - return c.VaultID -} - -func (c *CreateInternRequest) GetWorkspaceID() *string { - if c == nil { - return nil - } - return c.WorkspaceID -} diff --git a/models/components/deleteinternrequest.go b/models/components/deleteinternrequest.go deleted file mode 100644 index 4c97bb613..000000000 --- a/models/components/deleteinternrequest.go +++ /dev/null @@ -1,31 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// DeleteInternRequest - Optional consent for a teardown that discards the workspace. -type DeleteInternRequest struct { - // Delete even though the workspace backup was not confirmed. Defaults to false, which refuses the teardown when a workspace archive is missing. - AcknowledgeWorkspaceLoss *bool `default:"false" json:"acknowledge_workspace_loss"` -} - -func (d DeleteInternRequest) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(d, "", false) -} - -func (d *DeleteInternRequest) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &d, "", false, nil); err != nil { - return err - } - return nil -} - -func (d *DeleteInternRequest) GetAcknowledgeWorkspaceLoss() *bool { - if d == nil { - return nil - } - return d.AcknowledgeWorkspaceLoss -} diff --git a/models/components/deleteinternresponse.go b/models/components/deleteinternresponse.go deleted file mode 100644 index 4d8c9f2a8..000000000 --- a/models/components/deleteinternresponse.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type DeleteInternResponse struct { - //lint:ignore U1000 accessed via reflection for JSON marshaling - deleting bool `const:"true" json:"deleting"` -} - -func (d DeleteInternResponse) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(d, "", false) -} - -func (d *DeleteInternResponse) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &d, "", false, nil); err != nil { - return err - } - return nil -} - -func (d *DeleteInternResponse) GetDeleting() bool { - return true -} diff --git a/models/components/intern.go b/models/components/intern.go deleted file mode 100644 index b382d4eea..000000000 --- a/models/components/intern.go +++ /dev/null @@ -1,224 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/optionalnullable" -) - -// Progress - Active provisioning step, or null once provisioning has settled. -type Progress struct { - // Human-readable label of the active provisioning step. - StepLabel string `json:"step_label"` - // One-based index of the active step. - StepNumber int64 `json:"step_number"` - // Number of provisioning steps. - TotalSteps int64 `json:"total_steps"` -} - -func (p *Progress) GetStepLabel() string { - if p == nil { - return "" - } - return p.StepLabel -} - -func (p *Progress) GetStepNumber() int64 { - if p == nil { - return 0 - } - return p.StepNumber -} - -func (p *Progress) GetTotalSteps() int64 { - if p == nil { - return 0 - } - return p.TotalSteps -} - -// InternStatus - Lifecycle status. -type InternStatus string - -const ( - InternStatusAwaitingSlackInstall InternStatus = "awaiting_slack_install" - InternStatusQueued InternStatus = "queued" - InternStatusProvisioning InternStatus = "provisioning" - InternStatusRunning InternStatus = "running" - InternStatusFailed InternStatus = "failed" - InternStatusStopped InternStatus = "stopped" - InternStatusDestroying InternStatus = "destroying" - InternStatusDestroyFailed InternStatus = "destroy_failed" -) - -func (e InternStatus) ToPointer() *InternStatus { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternStatus) IsExact() bool { - if e != nil { - switch *e { - case "awaiting_slack_install", "queued", "provisioning", "running", "failed", "stopped", "destroying", "destroy_failed": - return true - } - } - return false -} - -// Intern - Public lifecycle state and settings for one intern. -type Intern struct { - // Vault the intern borrows from another intern, or null when it borrows none. - AttachedVaultID *string `json:"attached_vault_id"` - // Whether this key may change the intern (update, provision, suspend, delete). Present on list and retrieve; false while lifecycle writes are closed for the account. - CanEdit *bool `json:"can_edit,omitzero"` - // ISO 8601 creation time. - CreatedAt string `json:"created_at"` - // Whether the user behind the key created the intern. Present on list and retrieve; absent for organization keys, which act for no user. - CreatedByYou *bool `json:"created_by_you,omitzero"` - // Free-form description. - Description *string `json:"description"` - // Public hostname the intern is reachable at, or null until provisioning has assigned one. - Hostname *string `json:"hostname"` - // SHA-256 of the intern icon, or null when it has none. Present on list and retrieve; fetch the bytes from `GET /api/v1/interns/{intern_id}/icon`. - IconSha256 optionalnullable.OptionalNullable[string] `json:"icon_sha256,omitzero"` - // Intern id. - ID string `json:"id"` - // Standing instructions the intern boots with. - Instructions *string `json:"instructions"` - // Why the last provisioning attempt failed, when status is failed. - LastFailureMessage *string `json:"last_failure_message"` - // OpenRouter model slug the intern runs, or null for the workspace default. - Model *string `json:"model"` - // Intern name, unique per creator within a workspace. - Name string `json:"name"` - // Active provisioning step, or null once provisioning has settled. - Progress *Progress `json:"progress"` - // Lifecycle status. - Status InternStatus `json:"status"` - // ISO 8601 last update time. - UpdatedAt string `json:"updated_at"` - // Vault the intern owns, or null before it has been created. - VaultID *string `json:"vault_id"` - // Workspace that owns the intern and scopes its secrets. - WorkspaceID string `json:"workspace_id"` -} - -func (i *Intern) GetAttachedVaultID() *string { - if i == nil { - return nil - } - return i.AttachedVaultID -} - -func (i *Intern) GetCanEdit() *bool { - if i == nil { - return nil - } - return i.CanEdit -} - -func (i *Intern) GetCreatedAt() string { - if i == nil { - return "" - } - return i.CreatedAt -} - -func (i *Intern) GetCreatedByYou() *bool { - if i == nil { - return nil - } - return i.CreatedByYou -} - -func (i *Intern) GetDescription() *string { - if i == nil { - return nil - } - return i.Description -} - -func (i *Intern) GetHostname() *string { - if i == nil { - return nil - } - return i.Hostname -} - -func (i *Intern) GetIconSha256() optionalnullable.OptionalNullable[string] { - if i == nil { - return nil - } - return i.IconSha256 -} - -func (i *Intern) GetID() string { - if i == nil { - return "" - } - return i.ID -} - -func (i *Intern) GetInstructions() *string { - if i == nil { - return nil - } - return i.Instructions -} - -func (i *Intern) GetLastFailureMessage() *string { - if i == nil { - return nil - } - return i.LastFailureMessage -} - -func (i *Intern) GetModel() *string { - if i == nil { - return nil - } - return i.Model -} - -func (i *Intern) GetName() string { - if i == nil { - return "" - } - return i.Name -} - -func (i *Intern) GetProgress() *Progress { - if i == nil { - return nil - } - return i.Progress -} - -func (i *Intern) GetStatus() InternStatus { - if i == nil { - return InternStatus("") - } - return i.Status -} - -func (i *Intern) GetUpdatedAt() string { - if i == nil { - return "" - } - return i.UpdatedAt -} - -func (i *Intern) GetVaultID() *string { - if i == nil { - return nil - } - return i.VaultID -} - -func (i *Intern) GetWorkspaceID() string { - if i == nil { - return "" - } - return i.WorkspaceID -} diff --git a/models/components/internapprovalmode.go b/models/components/internapprovalmode.go deleted file mode 100644 index e11d3835e..000000000 --- a/models/components/internapprovalmode.go +++ /dev/null @@ -1,26 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternApprovalMode - How the run started by this prompt handles tool approvals. `self-drive` (the default when omitted) consents on your behalf and runs the shell unsandboxed. `manual` asks you before an approval-bearing tool runs, as an `openrouter.provide_input` permission request, and keeps the shell sandboxed until an escalation is allowed. The mode applies to the run this prompt starts and is not remembered by the session. Repeat it on each new prompt that should use it. A `tool` reply continues the run under the mode it started with. -type InternApprovalMode string - -const ( - InternApprovalModeManual InternApprovalMode = "manual" - InternApprovalModeSelfDrive InternApprovalMode = "self-drive" -) - -func (e InternApprovalMode) ToPointer() *InternApprovalMode { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternApprovalMode) IsExact() bool { - if e != nil { - switch *e { - case "manual", "self-drive": - return true - } - } - return false -} diff --git a/models/components/internchatassistantmessage.go b/models/components/internchatassistantmessage.go deleted file mode 100644 index 33a0a4849..000000000 --- a/models/components/internchatassistantmessage.go +++ /dev/null @@ -1,73 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" - "github.com/OpenRouterTeam/go-sdk/optionalnullable" -) - -type InternChatAssistantMessageRole string - -const ( - InternChatAssistantMessageRoleAssistant InternChatAssistantMessageRole = "assistant" -) - -func (e InternChatAssistantMessageRole) ToPointer() *InternChatAssistantMessageRole { - return &e -} -func (e *InternChatAssistantMessageRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "assistant": - *e = InternChatAssistantMessageRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatAssistantMessageRole: %v", v) - } -} - -// InternChatAssistantMessage - An assistant message from an earlier response. When answering an interaction, echo the streamed `tool_calls` here before the `tool` message. -type InternChatAssistantMessage struct { - // Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - Content optionalnullable.OptionalNullable[InternChatMessageContent] `json:"content,omitzero"` - Role InternChatAssistantMessageRole `json:"role"` - ToolCalls []InternChatEchoedToolCall `json:"tool_calls,omitzero"` -} - -func (i InternChatAssistantMessage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatAssistantMessage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatAssistantMessage) GetContent() optionalnullable.OptionalNullable[InternChatMessageContent] { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatAssistantMessage) GetRole() InternChatAssistantMessageRole { - if i == nil { - return InternChatAssistantMessageRole("") - } - return i.Role -} - -func (i *InternChatAssistantMessage) GetToolCalls() []InternChatEchoedToolCall { - if i == nil { - return nil - } - return i.ToolCalls -} diff --git a/models/components/internchatchoice.go b/models/components/internchatchoice.go deleted file mode 100644 index 9f5f58ace..000000000 --- a/models/components/internchatchoice.go +++ /dev/null @@ -1,57 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternChatChoiceFinishReason - `null` while streaming. `stop` when the run completed, `tool_calls` when the run is waiting for the caller to answer the streamed tool call, `error` on the terminal error chunk. -type InternChatChoiceFinishReason string - -const ( - InternChatChoiceFinishReasonError InternChatChoiceFinishReason = "error" - InternChatChoiceFinishReasonStop InternChatChoiceFinishReason = "stop" - InternChatChoiceFinishReasonToolCalls InternChatChoiceFinishReason = "tool_calls" -) - -func (e InternChatChoiceFinishReason) ToPointer() *InternChatChoiceFinishReason { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternChatChoiceFinishReason) IsExact() bool { - if e != nil { - switch *e { - case "error", "stop", "tool_calls": - return true - } - } - return false -} - -// InternChatChoice - The single choice this endpoint streams. -type InternChatChoice struct { - // The incremental content of one chunk. The first chunk carries `role`, text chunks carry `content`, reasoning chunks carry `reasoning`, and an interaction chunk carries one complete `tool_calls` entry. - Delta InternChatDelta `json:"delta"` - // `null` while streaming. `stop` when the run completed, `tool_calls` when the run is waiting for the caller to answer the streamed tool call, `error` on the terminal error chunk. - FinishReason *InternChatChoiceFinishReason `json:"finish_reason"` - Index int64 `json:"index"` -} - -func (i *InternChatChoice) GetDelta() InternChatDelta { - if i == nil { - return InternChatDelta{} - } - return i.Delta -} - -func (i *InternChatChoice) GetFinishReason() *InternChatChoiceFinishReason { - if i == nil { - return nil - } - return i.FinishReason -} - -func (i *InternChatChoice) GetIndex() int64 { - if i == nil { - return 0 - } - return i.Index -} diff --git a/models/components/internchatcompletionchunk.go b/models/components/internchatcompletionchunk.go deleted file mode 100644 index f525c5a92..000000000 --- a/models/components/internchatcompletionchunk.go +++ /dev/null @@ -1,118 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" - "github.com/OpenRouterTeam/go-sdk/optionalnullable" -) - -type InternChatCompletionChunkObject string - -const ( - InternChatCompletionChunkObjectChatCompletionChunk InternChatCompletionChunkObject = "chat.completion.chunk" -) - -func (e InternChatCompletionChunkObject) ToPointer() *InternChatCompletionChunkObject { - return &e -} -func (e *InternChatCompletionChunkObject) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "chat.completion.chunk": - *e = InternChatCompletionChunkObject(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatCompletionChunkObject: %v", v) - } -} - -// InternChatCompletionChunk - One `data:` line of the stream. A run streams a role chunk, content and reasoning chunks, then a finish chunk: `stop`, `tool_calls` (the run is paused for input) or `error` (with an `error` object). A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the daemon reported usage, and always `null` after `tool_calls`). Every stream ends with `[DONE]`. -type InternChatCompletionChunk struct { - // One choice on content, tool-call and error chunks. Empty on the final chunk that carries `session_id`. - Choices []InternChatChoice `json:"choices"` - Created int64 `json:"created"` - // A failure after the response headers were sent. The chunk that carries it has `finish_reason: "error"`, then the final empty-`choices` chunk and `[DONE]` follow. Reasons here are `attachment_failed`, `busy`, `client_closed_request`, `interaction_not_pending`, `interaction_unknown`, `intern_unreachable`, `run_ended`, `stream_severed`, `timeout` or `turn_failed`. `run_ended` reports an ending the intern confirmed, such as a cancellation or a deadline, while `stream_severed` reports a connection lost without that confirmation. - Error *InternChatStreamError `json:"error,omitzero"` - // The completion id, constant for the whole response. - ID string `json:"id"` - // The runtime's identifier for the model the intern is running, as the intern reports it. Each chunk carries the model from the event behind it: `openrouter/intern` on chunks emitted before the intern has reported one and on chunks the API emits itself (timeout, run-ended and severed-stream errors and their final usage chunk), even after an earlier chunk named a model. It can change within a stream. It is not an OpenRouter model slug, and the request `model` is never used. - Model string `json:"model"` - Object InternChatCompletionChunkObject `json:"object"` - // On the final chunk of every response, the daemon session to continue with, or `null` when the run failed before the intern reported one. Send it as `session_id` on the next request, including the `tool` reply to an interaction. Session ids are client-visible and scoped to the intern's own daemon. - SessionID optionalnullable.OptionalNullable[string] `json:"session_id,omitzero"` - // Token usage for the run as the daemon reported it, on the final chunk before `[DONE]`. `null` when the daemon reported none, and always `null` after `tool_calls` because the turn is not over. - Usage optionalnullable.OptionalNullable[InternChatUsage] `json:"usage,omitzero"` -} - -func (i InternChatCompletionChunk) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatCompletionChunk) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatCompletionChunk) GetChoices() []InternChatChoice { - if i == nil { - return []InternChatChoice{} - } - return i.Choices -} - -func (i *InternChatCompletionChunk) GetCreated() int64 { - if i == nil { - return 0 - } - return i.Created -} - -func (i *InternChatCompletionChunk) GetError() *InternChatStreamError { - if i == nil { - return nil - } - return i.Error -} - -func (i *InternChatCompletionChunk) GetID() string { - if i == nil { - return "" - } - return i.ID -} - -func (i *InternChatCompletionChunk) GetModel() string { - if i == nil { - return "" - } - return i.Model -} - -func (i *InternChatCompletionChunk) GetObject() InternChatCompletionChunkObject { - if i == nil { - return InternChatCompletionChunkObject("") - } - return i.Object -} - -func (i *InternChatCompletionChunk) GetSessionID() optionalnullable.OptionalNullable[string] { - if i == nil { - return nil - } - return i.SessionID -} - -func (i *InternChatCompletionChunk) GetUsage() optionalnullable.OptionalNullable[InternChatUsage] { - if i == nil { - return nil - } - return i.Usage -} diff --git a/models/components/internchatcompletionrequest.go b/models/components/internchatcompletionrequest.go deleted file mode 100644 index e78000746..000000000 --- a/models/components/internchatcompletionrequest.go +++ /dev/null @@ -1,65 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// InternChatCompletionRequest - An OpenAI-compatible streaming chat completion request for one intern. Other OpenAI fields such as `temperature` or `tools` are ignored. The intern owns its sampling and its tools. -type InternChatCompletionRequest struct { - // How the run started by this prompt handles tool approvals. `self-drive` (the default when omitted) consents on your behalf and runs the shell unsandboxed. `manual` asks you before an approval-bearing tool runs, as an `openrouter.provide_input` permission request, and keeps the shell sandboxed until an escalation is allowed. The mode applies to the run this prompt starts and is not remembered by the session. Repeat it on each new prompt that should use it. A `tool` reply continues the run under the mode it started with. - ApprovalMode *InternApprovalMode `json:"approval_mode,omitzero"` - // The conversation. Only the last message is read. A last `user` message starts a run. A last `tool` message answers the interaction named by its `tool_call_id` and requires `session_id`. - Messages []InternChatMessage `json:"messages"` - // Accepted for OpenAI compatibility and never used. The intern runs the model configured on it (`PATCH` the intern to change it). Streamed chunks report the runtime's identifier for that model as the intern reports it, or `openrouter/intern` on chunks whose event carries no model (before the intern reports one, and on the chunks the API emits itself: the timeout, run-ended and severed-stream error chunks, the stop chunk of a replay that ends without a terminal daemon event, and the final usage chunk after any of them). A usage chunk that follows a daemon completion event carries the model the intern reported. - Model *string `json:"model,omitzero"` - // The daemon session to continue, as returned in `session_id` on the final chunk of an earlier response. Omit it to start a new session. An id the intern has not seen before is not an error: it starts a new session under that id, so a mistyped id forks the conversation. Sessions are scoped to the intern's own daemon. Required when the last message has role `tool`. - SessionID *string `json:"session_id,omitzero"` - // Must be `true`. This endpoint only streams. `false` or an omitted `stream` is refused with `400` and reason `bad_request`. - //lint:ignore U1000 accessed via reflection for JSON marshaling - stream_ bool `const:"true" json:"stream"` -} - -func (i InternChatCompletionRequest) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatCompletionRequest) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatCompletionRequest) GetApprovalMode() *InternApprovalMode { - if i == nil { - return nil - } - return i.ApprovalMode -} - -func (i *InternChatCompletionRequest) GetMessages() []InternChatMessage { - if i == nil { - return []InternChatMessage{} - } - return i.Messages -} - -func (i *InternChatCompletionRequest) GetModel() *string { - if i == nil { - return nil - } - return i.Model -} - -func (i *InternChatCompletionRequest) GetSessionID() *string { - if i == nil { - return nil - } - return i.SessionID -} - -func (i *InternChatCompletionRequest) GetStream() bool { - return true -} diff --git a/models/components/internchatdelta.go b/models/components/internchatdelta.go deleted file mode 100644 index 81bf783b7..000000000 --- a/models/components/internchatdelta.go +++ /dev/null @@ -1,79 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatDeltaRole string - -const ( - InternChatDeltaRoleAssistant InternChatDeltaRole = "assistant" -) - -func (e InternChatDeltaRole) ToPointer() *InternChatDeltaRole { - return &e -} -func (e *InternChatDeltaRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "assistant": - *e = InternChatDeltaRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatDeltaRole: %v", v) - } -} - -// InternChatDelta - The incremental content of one chunk. The first chunk carries `role`, text chunks carry `content`, reasoning chunks carry `reasoning`, and an interaction chunk carries one complete `tool_calls` entry. -type InternChatDelta struct { - Content *string `json:"content,omitzero"` - Reasoning *string `json:"reasoning,omitzero"` - Role *InternChatDeltaRole `json:"role,omitzero"` - ToolCalls []InternChatToolCall `json:"tool_calls,omitzero"` -} - -func (i InternChatDelta) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatDelta) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatDelta) GetContent() *string { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatDelta) GetReasoning() *string { - if i == nil { - return nil - } - return i.Reasoning -} - -func (i *InternChatDelta) GetRole() *InternChatDeltaRole { - if i == nil { - return nil - } - return i.Role -} - -func (i *InternChatDelta) GetToolCalls() []InternChatToolCall { - if i == nil { - return nil - } - return i.ToolCalls -} diff --git a/models/components/internchatdevelopermessage.go b/models/components/internchatdevelopermessage.go deleted file mode 100644 index 1870acb87..000000000 --- a/models/components/internchatdevelopermessage.go +++ /dev/null @@ -1,64 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatDeveloperMessageRole string - -const ( - InternChatDeveloperMessageRoleDeveloper InternChatDeveloperMessageRole = "developer" -) - -func (e InternChatDeveloperMessageRole) ToPointer() *InternChatDeveloperMessageRole { - return &e -} -func (e *InternChatDeveloperMessageRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "developer": - *e = InternChatDeveloperMessageRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatDeveloperMessageRole: %v", v) - } -} - -// InternChatDeveloperMessage - A developer message. Accepted for client compatibility and not forwarded. -type InternChatDeveloperMessage struct { - // Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - Content *InternChatMessageContent `json:"content"` - Role InternChatDeveloperMessageRole `json:"role"` -} - -func (i InternChatDeveloperMessage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatDeveloperMessage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatDeveloperMessage) GetContent() *InternChatMessageContent { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatDeveloperMessage) GetRole() InternChatDeveloperMessageRole { - if i == nil { - return InternChatDeveloperMessageRole("") - } - return i.Role -} diff --git a/models/components/internchatechoedtoolcall.go b/models/components/internchatechoedtoolcall.go deleted file mode 100644 index 1ce21f759..000000000 --- a/models/components/internchatechoedtoolcall.go +++ /dev/null @@ -1,39 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// InternChatEchoedToolCall - The `openrouter.provide_input` tool call from the previous response, echoed back unchanged. Its `id` is the interaction the following `tool` message answers. -type InternChatEchoedToolCall struct { - // The function name and JSON arguments string exactly as streamed. - Function InternChatEchoedToolCallFunction `json:"function"` - ID string `json:"id"` -} - -func (i InternChatEchoedToolCall) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatEchoedToolCall) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatEchoedToolCall) GetFunction() InternChatEchoedToolCallFunction { - if i == nil { - return InternChatEchoedToolCallFunction{} - } - return i.Function -} - -func (i *InternChatEchoedToolCall) GetID() string { - if i == nil { - return "" - } - return i.ID -} diff --git a/models/components/internchatechoedtoolcallfunction.go b/models/components/internchatechoedtoolcallfunction.go deleted file mode 100644 index 1d4ed37a3..000000000 --- a/models/components/internchatechoedtoolcallfunction.go +++ /dev/null @@ -1,38 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// InternChatEchoedToolCallFunction - The function name and JSON arguments string exactly as streamed. -type InternChatEchoedToolCallFunction struct { - Arguments string `json:"arguments"` - Name string `json:"name"` -} - -func (i InternChatEchoedToolCallFunction) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatEchoedToolCallFunction) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatEchoedToolCallFunction) GetArguments() string { - if i == nil { - return "" - } - return i.Arguments -} - -func (i *InternChatEchoedToolCallFunction) GetName() string { - if i == nil { - return "" - } - return i.Name -} diff --git a/models/components/internchaterror.go b/models/components/internchaterror.go deleted file mode 100644 index c892c9271..000000000 --- a/models/components/internchaterror.go +++ /dev/null @@ -1,48 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// InternChatError - The OpenAI-compatible error object. `metadata` is present on refusals from the chat route. Authentication refusals (`401`), the departed-creator `403` and the programme `404` carry only `code` and `message`. -type InternChatError struct { - // The HTTP status of the response. - Code int64 `json:"code"` - Message string `json:"message"` - // Machine-readable detail for the failure. - Metadata *InternChatErrorMetadata `json:"metadata,omitzero"` -} - -func (i InternChatError) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatError) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatError) GetCode() int64 { - if i == nil { - return 0 - } - return i.Code -} - -func (i *InternChatError) GetMessage() string { - if i == nil { - return "" - } - return i.Message -} - -func (i *InternChatError) GetMetadata() *InternChatErrorMetadata { - if i == nil { - return nil - } - return i.Metadata -} diff --git a/models/components/internchaterrormetadata.go b/models/components/internchaterrormetadata.go deleted file mode 100644 index 29330c5cb..000000000 --- a/models/components/internchaterrormetadata.go +++ /dev/null @@ -1,62 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternChatErrorMetadataReason - A stable reason a client can branch on. -type InternChatErrorMetadataReason string - -const ( - InternChatErrorMetadataReasonAttachmentFailed InternChatErrorMetadataReason = "attachment_failed" - InternChatErrorMetadataReasonBadRequest InternChatErrorMetadataReason = "bad_request" - InternChatErrorMetadataReasonBusy InternChatErrorMetadataReason = "busy" - InternChatErrorMetadataReasonClientClosedRequest InternChatErrorMetadataReason = "client_closed_request" - InternChatErrorMetadataReasonInteractionNotPending InternChatErrorMetadataReason = "interaction_not_pending" - InternChatErrorMetadataReasonInteractionUnknown InternChatErrorMetadataReason = "interaction_unknown" - InternChatErrorMetadataReasonInternNotReady InternChatErrorMetadataReason = "intern_not_ready" - InternChatErrorMetadataReasonInternRejected InternChatErrorMetadataReason = "intern_rejected" - InternChatErrorMetadataReasonInternUnreachable InternChatErrorMetadataReason = "intern_unreachable" - InternChatErrorMetadataReasonNotFound InternChatErrorMetadataReason = "not_found" - InternChatErrorMetadataReasonPayloadTooLarge InternChatErrorMetadataReason = "payload_too_large" - InternChatErrorMetadataReasonRateLimited InternChatErrorMetadataReason = "rate_limited" - InternChatErrorMetadataReasonRunEnded InternChatErrorMetadataReason = "run_ended" - InternChatErrorMetadataReasonStreamSevered InternChatErrorMetadataReason = "stream_severed" - InternChatErrorMetadataReasonTimeout InternChatErrorMetadataReason = "timeout" - InternChatErrorMetadataReasonTurnFailed InternChatErrorMetadataReason = "turn_failed" -) - -func (e InternChatErrorMetadataReason) ToPointer() *InternChatErrorMetadataReason { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternChatErrorMetadataReason) IsExact() bool { - if e != nil { - switch *e { - case "attachment_failed", "bad_request", "busy", "client_closed_request", "interaction_not_pending", "interaction_unknown", "intern_not_ready", "intern_rejected", "intern_unreachable", "not_found", "payload_too_large", "rate_limited", "run_ended", "stream_severed", "timeout", "turn_failed": - return true - } - } - return false -} - -// InternChatErrorMetadata - Machine-readable detail for the failure. -type InternChatErrorMetadata struct { - // A stable reason a client can branch on. - Reason InternChatErrorMetadataReason `json:"reason"` - // Whether the same request may be sent again unchanged. Always `true` for the transient refusals — `busy`, `intern_not_ready`, `intern_unreachable`, `rate_limited`, `stream_severed` and `timeout` — and always `false` for the ones a retry cannot fix. For `turn_failed` it varies by failure and is the intern's own classification of what went wrong: `true` for an upstream overload, rate limit, timeout or transport fault, `false` for an authentication or bad-request failure that would be rejected the same way again. Branch on this field rather than on `reason` when deciding whether to retry. A `429`, and a `409` or `503` with reason `busy`, also carry a `Retry-After` header saying how long to wait. - Retryable bool `json:"retryable"` -} - -func (i *InternChatErrorMetadata) GetReason() InternChatErrorMetadataReason { - if i == nil { - return InternChatErrorMetadataReason("") - } - return i.Reason -} - -func (i *InternChatErrorMetadata) GetRetryable() bool { - if i == nil { - return false - } - return i.Retryable -} diff --git a/models/components/internchatmessage.go b/models/components/internchatmessage.go deleted file mode 100644 index 8064bd2b3..000000000 --- a/models/components/internchatmessage.go +++ /dev/null @@ -1,177 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "errors" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatMessageType string - -const ( - InternChatMessageTypeAssistant InternChatMessageType = "assistant" - InternChatMessageTypeDeveloper InternChatMessageType = "developer" - InternChatMessageTypeSystem InternChatMessageType = "system" - InternChatMessageTypeTool InternChatMessageType = "tool" - InternChatMessageTypeUser InternChatMessageType = "user" -) - -// InternChatMessage - One OpenAI-compatible chat message, discriminated by `role`. -type InternChatMessage struct { - InternChatSystemMessage *InternChatSystemMessage `queryParam:"inline" union:"member"` - InternChatDeveloperMessage *InternChatDeveloperMessage `queryParam:"inline" union:"member"` - InternChatUserMessage *InternChatUserMessage `queryParam:"inline" union:"member"` - InternChatAssistantMessage *InternChatAssistantMessage `queryParam:"inline" union:"member"` - InternChatToolMessage *InternChatToolMessage `queryParam:"inline" union:"member"` - - Type InternChatMessageType -} - -func CreateInternChatMessageAssistant(assistant InternChatAssistantMessage) InternChatMessage { - typ := InternChatMessageTypeAssistant - - typStr := InternChatAssistantMessageRole(typ) - assistant.Role = typStr - - return InternChatMessage{ - InternChatAssistantMessage: &assistant, - Type: typ, - } -} - -func CreateInternChatMessageDeveloper(developer InternChatDeveloperMessage) InternChatMessage { - typ := InternChatMessageTypeDeveloper - - typStr := InternChatDeveloperMessageRole(typ) - developer.Role = typStr - - return InternChatMessage{ - InternChatDeveloperMessage: &developer, - Type: typ, - } -} - -func CreateInternChatMessageSystem(system InternChatSystemMessage) InternChatMessage { - typ := InternChatMessageTypeSystem - - typStr := InternChatSystemMessageRole(typ) - system.Role = typStr - - return InternChatMessage{ - InternChatSystemMessage: &system, - Type: typ, - } -} - -func CreateInternChatMessageTool(tool InternChatToolMessage) InternChatMessage { - typ := InternChatMessageTypeTool - - typStr := InternChatToolMessageRole(typ) - tool.Role = typStr - - return InternChatMessage{ - InternChatToolMessage: &tool, - Type: typ, - } -} - -func CreateInternChatMessageUser(user InternChatUserMessage) InternChatMessage { - typ := InternChatMessageTypeUser - - typStr := InternChatUserMessageRole(typ) - user.Role = typStr - - return InternChatMessage{ - InternChatUserMessage: &user, - Type: typ, - } -} - -func (u *InternChatMessage) UnmarshalJSON(data []byte) error { - - type discriminator struct { - Role string `json:"role"` - } - - dis := new(discriminator) - if err := json.Unmarshal(data, &dis); err != nil { - return fmt.Errorf("could not unmarshal discriminator: %w", err) - } - - switch dis.Role { - case "assistant": - internChatAssistantMessage := new(InternChatAssistantMessage) - if err := utils.UnmarshalJSON(data, &internChatAssistantMessage, "", true, nil); err != nil { - return fmt.Errorf("could not unmarshal `%s` into expected (Role == assistant) type InternChatAssistantMessage within InternChatMessage: %w", string(data), err) - } - - u.InternChatAssistantMessage = internChatAssistantMessage - u.Type = InternChatMessageTypeAssistant - return nil - case "developer": - internChatDeveloperMessage := new(InternChatDeveloperMessage) - if err := utils.UnmarshalJSON(data, &internChatDeveloperMessage, "", true, nil); err != nil { - return fmt.Errorf("could not unmarshal `%s` into expected (Role == developer) type InternChatDeveloperMessage within InternChatMessage: %w", string(data), err) - } - - u.InternChatDeveloperMessage = internChatDeveloperMessage - u.Type = InternChatMessageTypeDeveloper - return nil - case "system": - internChatSystemMessage := new(InternChatSystemMessage) - if err := utils.UnmarshalJSON(data, &internChatSystemMessage, "", true, nil); err != nil { - return fmt.Errorf("could not unmarshal `%s` into expected (Role == system) type InternChatSystemMessage within InternChatMessage: %w", string(data), err) - } - - u.InternChatSystemMessage = internChatSystemMessage - u.Type = InternChatMessageTypeSystem - return nil - case "tool": - internChatToolMessage := new(InternChatToolMessage) - if err := utils.UnmarshalJSON(data, &internChatToolMessage, "", true, nil); err != nil { - return fmt.Errorf("could not unmarshal `%s` into expected (Role == tool) type InternChatToolMessage within InternChatMessage: %w", string(data), err) - } - - u.InternChatToolMessage = internChatToolMessage - u.Type = InternChatMessageTypeTool - return nil - case "user": - internChatUserMessage := new(InternChatUserMessage) - if err := utils.UnmarshalJSON(data, &internChatUserMessage, "", true, nil); err != nil { - return fmt.Errorf("could not unmarshal `%s` into expected (Role == user) type InternChatUserMessage within InternChatMessage: %w", string(data), err) - } - - u.InternChatUserMessage = internChatUserMessage - u.Type = InternChatMessageTypeUser - return nil - } - - return fmt.Errorf("could not unmarshal `%s` into any supported union types for InternChatMessage", string(data)) -} - -func (u InternChatMessage) MarshalJSON() ([]byte, error) { - if u.InternChatSystemMessage != nil { - return utils.MarshalJSON(u.InternChatSystemMessage, "", true) - } - - if u.InternChatDeveloperMessage != nil { - return utils.MarshalJSON(u.InternChatDeveloperMessage, "", true) - } - - if u.InternChatUserMessage != nil { - return utils.MarshalJSON(u.InternChatUserMessage, "", true) - } - - if u.InternChatAssistantMessage != nil { - return utils.MarshalJSON(u.InternChatAssistantMessage, "", true) - } - - if u.InternChatToolMessage != nil { - return utils.MarshalJSON(u.InternChatToolMessage, "", true) - } - - return nil, errors.New("could not marshal union type InternChatMessage: all fields are null") -} diff --git a/models/components/internchatmessagecontent.go b/models/components/internchatmessagecontent.go deleted file mode 100644 index 156106061..000000000 --- a/models/components/internchatmessagecontent.go +++ /dev/null @@ -1,99 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "errors" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatMessageContentType string - -const ( - InternChatMessageContentTypeStr InternChatMessageContentType = "str" - InternChatMessageContentTypeArrayOfInternChatTextPart InternChatMessageContentType = "arrayOfInternChatTextPart" -) - -// InternChatMessageContent - Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. -type InternChatMessageContent struct { - Str *string `queryParam:"inline" union:"member"` - ArrayOfInternChatTextPart []InternChatTextPart `queryParam:"inline" union:"member"` - - Type InternChatMessageContentType -} - -func CreateInternChatMessageContentStr(str string) InternChatMessageContent { - typ := InternChatMessageContentTypeStr - - return InternChatMessageContent{ - Str: &str, - Type: typ, - } -} - -func CreateInternChatMessageContentArrayOfInternChatTextPart(arrayOfInternChatTextPart []InternChatTextPart) InternChatMessageContent { - typ := InternChatMessageContentTypeArrayOfInternChatTextPart - - return InternChatMessageContent{ - ArrayOfInternChatTextPart: arrayOfInternChatTextPart, - Type: typ, - } -} - -func (u *InternChatMessageContent) UnmarshalJSON(data []byte) error { - - var candidates []utils.UnionCandidate - - // Collect all valid candidates - var str string = "" - if err := utils.UnmarshalJSON(data, &str, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: InternChatMessageContentTypeStr, - Value: &str, - }) - } - - var arrayOfInternChatTextPart []InternChatTextPart = []InternChatTextPart{} - if err := utils.UnmarshalJSON(data, &arrayOfInternChatTextPart, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: InternChatMessageContentTypeArrayOfInternChatTextPart, - Value: arrayOfInternChatTextPart, - }) - } - - if len(candidates) == 0 { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for InternChatMessageContent", string(data)) - } - - // Pick the best candidate using multi-stage filtering - best := utils.PickBestUnionCandidate(candidates, data) - if best == nil { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for InternChatMessageContent", string(data)) - } - - // Set the union type and value based on the best candidate - u.Type = best.Type.(InternChatMessageContentType) - switch best.Type { - case InternChatMessageContentTypeStr: - u.Str = best.Value.(*string) - return nil - case InternChatMessageContentTypeArrayOfInternChatTextPart: - u.ArrayOfInternChatTextPart = best.Value.([]InternChatTextPart) - return nil - } - - return fmt.Errorf("could not unmarshal `%s` into any supported union types for InternChatMessageContent", string(data)) -} - -func (u InternChatMessageContent) MarshalJSON() ([]byte, error) { - if u.Str != nil { - return utils.MarshalJSON(u.Str, "", true) - } - - if u.ArrayOfInternChatTextPart != nil { - return utils.MarshalJSON(u.ArrayOfInternChatTextPart, "", true) - } - - return nil, errors.New("could not marshal union type InternChatMessageContent: all fields are null") -} diff --git a/models/components/internchatprompttokensdetails.go b/models/components/internchatprompttokensdetails.go deleted file mode 100644 index 871efabc1..000000000 --- a/models/components/internchatprompttokensdetails.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternChatPromptTokensDetails - Prompt tokens served from cache, when the daemon reported them. -type InternChatPromptTokensDetails struct { - CachedTokens int64 `json:"cached_tokens"` -} - -func (i *InternChatPromptTokensDetails) GetCachedTokens() int64 { - if i == nil { - return 0 - } - return i.CachedTokens -} diff --git a/models/components/internchatsteeredresponse.go b/models/components/internchatsteeredresponse.go deleted file mode 100644 index 0c5884e26..000000000 --- a/models/components/internchatsteeredresponse.go +++ /dev/null @@ -1,54 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" -) - -// InternChatSteeredResponseStatus - The message was handed to the turn already running on this session. -type InternChatSteeredResponseStatus string - -const ( - InternChatSteeredResponseStatusSteered InternChatSteeredResponseStatus = "steered" -) - -func (e InternChatSteeredResponseStatus) ToPointer() *InternChatSteeredResponseStatus { - return &e -} -func (e *InternChatSteeredResponseStatus) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "steered": - *e = InternChatSteeredResponseStatus(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatSteeredResponseStatus: %v", v) - } -} - -// InternChatSteeredResponse - The message was delivered into the turn already running on the same session. Its effect is streamed on that turn, not here. -type InternChatSteeredResponse struct { - // The session of the running turn the message was delivered to. - SessionID string `json:"session_id"` - // The message was handed to the turn already running on this session. - Status InternChatSteeredResponseStatus `json:"status"` -} - -func (i *InternChatSteeredResponse) GetSessionID() string { - if i == nil { - return "" - } - return i.SessionID -} - -func (i *InternChatSteeredResponse) GetStatus() InternChatSteeredResponseStatus { - if i == nil { - return InternChatSteeredResponseStatus("") - } - return i.Status -} diff --git a/models/components/internchatstreamerror.go b/models/components/internchatstreamerror.go deleted file mode 100644 index 1328ac1fa..000000000 --- a/models/components/internchatstreamerror.go +++ /dev/null @@ -1,33 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternChatStreamError - A failure after the response headers were sent. The chunk that carries it has `finish_reason: "error"`, then the final empty-`choices` chunk and `[DONE]` follow. Reasons here are `attachment_failed`, `busy`, `client_closed_request`, `interaction_not_pending`, `interaction_unknown`, `intern_unreachable`, `run_ended`, `stream_severed`, `timeout` or `turn_failed`. `run_ended` reports an ending the intern confirmed, such as a cancellation or a deadline, while `stream_severed` reports a connection lost without that confirmation. -type InternChatStreamError struct { - // The HTTP status this failure would have had before the stream opened. - Code int64 `json:"code"` - Message string `json:"message"` - // Machine-readable detail for the failure. - Metadata InternChatErrorMetadata `json:"metadata"` -} - -func (i *InternChatStreamError) GetCode() int64 { - if i == nil { - return 0 - } - return i.Code -} - -func (i *InternChatStreamError) GetMessage() string { - if i == nil { - return "" - } - return i.Message -} - -func (i *InternChatStreamError) GetMetadata() InternChatErrorMetadata { - if i == nil { - return InternChatErrorMetadata{} - } - return i.Metadata -} diff --git a/models/components/internchatstreamingresponse.go b/models/components/internchatstreamingresponse.go deleted file mode 100644 index bf395375c..000000000 --- a/models/components/internchatstreamingresponse.go +++ /dev/null @@ -1,20 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternChatStreamingResponse - A server-sent event carrying one chunk. The stream ends with `data: [DONE]`. -type InternChatStreamingResponse struct { - // One `data:` line of the stream. A run streams a role chunk, content and reasoning chunks, then a finish chunk: `stop`, `tool_calls` (the run is paused for input) or `error` (with an `error` object). A final chunk with empty `choices` follows in every case, carrying `session_id` and `usage` (`null` unless the daemon reported usage, and always `null` after `tool_calls`). Every stream ends with `[DONE]`. - Data InternChatCompletionChunk `json:"data"` -} - -func (i *InternChatStreamingResponse) GetData() InternChatCompletionChunk { - if i == nil { - return InternChatCompletionChunk{} - } - return i.Data -} - -func (i InternChatStreamingResponse) GetEventEncoding(event string) (string, error) { - return "application/json", nil -} diff --git a/models/components/internchatsystemmessage.go b/models/components/internchatsystemmessage.go deleted file mode 100644 index 0a98ad6b5..000000000 --- a/models/components/internchatsystemmessage.go +++ /dev/null @@ -1,64 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatSystemMessageRole string - -const ( - InternChatSystemMessageRoleSystem InternChatSystemMessageRole = "system" -) - -func (e InternChatSystemMessageRole) ToPointer() *InternChatSystemMessageRole { - return &e -} -func (e *InternChatSystemMessageRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "system": - *e = InternChatSystemMessageRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatSystemMessageRole: %v", v) - } -} - -// InternChatSystemMessage - A system message. Accepted for client compatibility and not forwarded. -type InternChatSystemMessage struct { - // Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - Content *InternChatMessageContent `json:"content"` - Role InternChatSystemMessageRole `json:"role"` -} - -func (i InternChatSystemMessage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatSystemMessage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatSystemMessage) GetContent() *InternChatMessageContent { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatSystemMessage) GetRole() InternChatSystemMessageRole { - if i == nil { - return InternChatSystemMessageRole("") - } - return i.Role -} diff --git a/models/components/internchattextpart.go b/models/components/internchattextpart.go deleted file mode 100644 index f5ac96dbb..000000000 --- a/models/components/internchattextpart.go +++ /dev/null @@ -1,63 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatTextPartType string - -const ( - InternChatTextPartTypeText InternChatTextPartType = "text" -) - -func (e InternChatTextPartType) ToPointer() *InternChatTextPartType { - return &e -} -func (e *InternChatTextPartType) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "text": - *e = InternChatTextPartType(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatTextPartType: %v", v) - } -} - -// InternChatTextPart - One text part of a message. -type InternChatTextPart struct { - Text string `json:"text"` - Type InternChatTextPartType `json:"type"` -} - -func (i InternChatTextPart) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatTextPart) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatTextPart) GetText() string { - if i == nil { - return "" - } - return i.Text -} - -func (i *InternChatTextPart) GetType() InternChatTextPartType { - if i == nil { - return InternChatTextPartType("") - } - return i.Type -} diff --git a/models/components/internchattoolcall.go b/models/components/internchattoolcall.go deleted file mode 100644 index 764f7ba58..000000000 --- a/models/components/internchattoolcall.go +++ /dev/null @@ -1,69 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" -) - -type InternChatToolCallType string - -const ( - InternChatToolCallTypeFunction InternChatToolCallType = "function" -) - -func (e InternChatToolCallType) ToPointer() *InternChatToolCallType { - return &e -} -func (e *InternChatToolCallType) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "function": - *e = InternChatToolCallType(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatToolCallType: %v", v) - } -} - -// InternChatToolCall - An `openrouter.provide_input` request. The run pauses on the daemon until a `tool` message answers it, the caller cancels it, or its interaction deadline passes. -type InternChatToolCall struct { - // The single tool this endpoint calls, asking the caller for input. - Function InternChatToolCallFunction `json:"function"` - // The interaction id. Send it back as `tool_call_id` on the `tool` message that answers it. - ID string `json:"id"` - Index int64 `json:"index"` - Type InternChatToolCallType `json:"type"` -} - -func (i *InternChatToolCall) GetFunction() InternChatToolCallFunction { - if i == nil { - return InternChatToolCallFunction{} - } - return i.Function -} - -func (i *InternChatToolCall) GetID() string { - if i == nil { - return "" - } - return i.ID -} - -func (i *InternChatToolCall) GetIndex() int64 { - if i == nil { - return 0 - } - return i.Index -} - -func (i *InternChatToolCall) GetType() InternChatToolCallType { - if i == nil { - return InternChatToolCallType("") - } - return i.Type -} diff --git a/models/components/internchattoolcallfunction.go b/models/components/internchattoolcallfunction.go deleted file mode 100644 index 30179bef8..000000000 --- a/models/components/internchattoolcallfunction.go +++ /dev/null @@ -1,52 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" -) - -type InternChatToolCallFunctionName string - -const ( - InternChatToolCallFunctionNameOpenrouterProvideInput InternChatToolCallFunctionName = "openrouter.provide_input" -) - -func (e InternChatToolCallFunctionName) ToPointer() *InternChatToolCallFunctionName { - return &e -} -func (e *InternChatToolCallFunctionName) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "openrouter.provide_input": - *e = InternChatToolCallFunctionName(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatToolCallFunctionName: %v", v) - } -} - -// InternChatToolCallFunction - The single tool this endpoint calls, asking the caller for input. -type InternChatToolCallFunction struct { - // A JSON object string describing the interaction. A permission request is `{"kind":"permission","operation":,"options":[]}`. A question is `{"kind":"elicitation","message":,"fields":[]}`. - Arguments string `json:"arguments"` - Name InternChatToolCallFunctionName `json:"name"` -} - -func (i *InternChatToolCallFunction) GetArguments() string { - if i == nil { - return "" - } - return i.Arguments -} - -func (i *InternChatToolCallFunction) GetName() InternChatToolCallFunctionName { - if i == nil { - return InternChatToolCallFunctionName("") - } - return i.Name -} diff --git a/models/components/internchattoolmessage.go b/models/components/internchattoolmessage.go deleted file mode 100644 index 13e137106..000000000 --- a/models/components/internchattoolmessage.go +++ /dev/null @@ -1,72 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatToolMessageRole string - -const ( - InternChatToolMessageRoleTool InternChatToolMessageRole = "tool" -) - -func (e InternChatToolMessageRole) ToPointer() *InternChatToolMessageRole { - return &e -} -func (e *InternChatToolMessageRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "tool": - *e = InternChatToolMessageRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatToolMessageRole: %v", v) - } -} - -// InternChatToolMessage - The answer to an `openrouter.provide_input` tool call. `tool_call_id` is the streamed tool call id and `session_id` must name the same session. For a permission, `content` is one of the offered option kinds (`allow_once`, `allow_always`, `reject_once`, `reject_always`) or `cancel`. For a question (elicitation), `content` is a JSON object string with `action` (`accept`, `decline` or `cancel`) and, for `accept`, `content` holding the field values. The answer is delivered to the run that asked. It never starts a new run. -type InternChatToolMessage struct { - // Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - Content *InternChatMessageContent `json:"content"` - Role InternChatToolMessageRole `json:"role"` - ToolCallID string `json:"tool_call_id"` -} - -func (i InternChatToolMessage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatToolMessage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatToolMessage) GetContent() *InternChatMessageContent { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatToolMessage) GetRole() InternChatToolMessageRole { - if i == nil { - return InternChatToolMessageRole("") - } - return i.Role -} - -func (i *InternChatToolMessage) GetToolCallID() string { - if i == nil { - return "" - } - return i.ToolCallID -} diff --git a/models/components/internchatusage.go b/models/components/internchatusage.go deleted file mode 100644 index 3c1c72aa1..000000000 --- a/models/components/internchatusage.go +++ /dev/null @@ -1,64 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// InternChatUsage - Token usage for the run as the daemon reported it, on the final chunk before `[DONE]`. `null` when the daemon reported none, and always `null` after `tool_calls` because the turn is not over. -type InternChatUsage struct { - CompletionTokens int64 `json:"completion_tokens"` - // The cost of the run in USD, when the daemon reported one. - Cost *float64 `json:"cost,omitzero"` - PromptTokens int64 `json:"prompt_tokens"` - // Prompt tokens served from cache, when the daemon reported them. - PromptTokensDetails *InternChatPromptTokensDetails `json:"prompt_tokens_details,omitzero"` - TotalTokens int64 `json:"total_tokens"` -} - -func (i InternChatUsage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatUsage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatUsage) GetCompletionTokens() int64 { - if i == nil { - return 0 - } - return i.CompletionTokens -} - -func (i *InternChatUsage) GetCost() *float64 { - if i == nil { - return nil - } - return i.Cost -} - -func (i *InternChatUsage) GetPromptTokens() int64 { - if i == nil { - return 0 - } - return i.PromptTokens -} - -func (i *InternChatUsage) GetPromptTokensDetails() *InternChatPromptTokensDetails { - if i == nil { - return nil - } - return i.PromptTokensDetails -} - -func (i *InternChatUsage) GetTotalTokens() int64 { - if i == nil { - return 0 - } - return i.TotalTokens -} diff --git a/models/components/internchatusermessage.go b/models/components/internchatusermessage.go deleted file mode 100644 index 5d489fbe0..000000000 --- a/models/components/internchatusermessage.go +++ /dev/null @@ -1,64 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type InternChatUserMessageRole string - -const ( - InternChatUserMessageRoleUser InternChatUserMessageRole = "user" -) - -func (e InternChatUserMessageRole) ToPointer() *InternChatUserMessageRole { - return &e -} -func (e *InternChatUserMessageRole) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "user": - *e = InternChatUserMessageRole(v) - return nil - default: - return fmt.Errorf("invalid value for InternChatUserMessageRole: %v", v) - } -} - -// InternChatUserMessage - A user message. When it is the last message its text is the prompt for a new run, at most 32000 characters. -type InternChatUserMessage struct { - // Message text as a string or a list of text parts. Assistant history may carry null. Only the last message is read; earlier messages are accepted so ordinary clients can resend history. - Content *InternChatMessageContent `json:"content"` - Role InternChatUserMessageRole `json:"role"` -} - -func (i InternChatUserMessage) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternChatUserMessage) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternChatUserMessage) GetContent() *InternChatMessageContent { - if i == nil { - return nil - } - return i.Content -} - -func (i *InternChatUserMessage) GetRole() InternChatUserMessageRole { - if i == nil { - return InternChatUserMessageRole("") - } - return i.Role -} diff --git a/models/components/internconnection.go b/models/components/internconnection.go deleted file mode 100644 index 4176f9751..000000000 --- a/models/components/internconnection.go +++ /dev/null @@ -1,287 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternConnectionScope - `workspace` for a shared connection, `yours` for the key user's personal account, `shared` for a teammate's. -type InternConnectionScope string - -const ( - InternConnectionScopeWorkspace InternConnectionScope = "workspace" - InternConnectionScopeYours InternConnectionScope = "yours" - InternConnectionScopeShared InternConnectionScope = "shared" -) - -func (e InternConnectionScope) ToPointer() *InternConnectionScope { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternConnectionScope) IsExact() bool { - if e != nil { - switch *e { - case "workspace", "yours", "shared": - return true - } - } - return false -} - -type Account struct { - // Whose account it acts as, when known. - ActsAs *string `json:"acts_as"` - IsYourAccountLinked *bool `json:"is_your_account_linked"` - Note *string `json:"note"` - // `workspace` for a shared connection, `yours` for the key user's personal account, `shared` for a teammate's. - Scope InternConnectionScope `json:"scope"` -} - -func (a *Account) GetActsAs() *string { - if a == nil { - return nil - } - return a.ActsAs -} - -func (a *Account) GetIsYourAccountLinked() *bool { - if a == nil { - return nil - } - return a.IsYourAccountLinked -} - -func (a *Account) GetNote() *string { - if a == nil { - return nil - } - return a.Note -} - -func (a *Account) GetScope() InternConnectionScope { - if a == nil { - return InternConnectionScope("") - } - return a.Scope -} - -type Kind string - -const ( - KindSlack Kind = "slack" - KindGithub Kind = "github" - KindGoogle Kind = "google" - KindMcp Kind = "mcp" -) - -func (e Kind) ToPointer() *Kind { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *Kind) IsExact() bool { - if e != nil { - switch *e { - case "slack", "github", "google", "mcp": - return true - } - } - return false -} - -// OffReason - `switched_off` for this intern, `disabled` for the whole workspace; null while on. -type OffReason string - -const ( - OffReasonSwitchedOff OffReason = "switched_off" - OffReasonDisabled OffReason = "disabled" -) - -func (e OffReason) ToPointer() *OffReason { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *OffReason) IsExact() bool { - if e != nil { - switch *e { - case "switched_off", "disabled": - return true - } - } - return false -} - -type Server struct { - Host *string `json:"host"` - Surface string `json:"surface"` - Transport string `json:"transport"` - URL *string `json:"url"` -} - -func (s *Server) GetHost() *string { - if s == nil { - return nil - } - return s.Host -} - -func (s *Server) GetSurface() string { - if s == nil { - return "" - } - return s.Surface -} - -func (s *Server) GetTransport() string { - if s == nil { - return "" - } - return s.Transport -} - -func (s *Server) GetURL() *string { - if s == nil { - return nil - } - return s.URL -} - -type StateEnum string - -const ( - StateEnumConnected StateEnum = "connected" - StateEnumNeedsReconnect StateEnum = "needs_reconnect" - StateEnumNotTested StateEnum = "not_tested" - StateEnumError StateEnum = "error" -) - -func (e StateEnum) ToPointer() *StateEnum { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *StateEnum) IsExact() bool { - if e != nil { - switch *e { - case "connected", "needs_reconnect", "not_tested", "error": - return true - } - } - return false -} - -type InternConnectionStatus struct { - Reason *string `json:"reason"` - State StateEnum `json:"state"` -} - -func (i *InternConnectionStatus) GetReason() *string { - if i == nil { - return nil - } - return i.Reason -} - -func (i *InternConnectionStatus) GetState() StateEnum { - if i == nil { - return StateEnum("") - } - return i.State -} - -type InternConnection struct { - Account Account `json:"account"` - // Stable id: the credential id of an MCP server, else the kind (`slack`, `github`, `google`). - ID string `json:"id"` - // Whether the intern reaches it now. - IsEnabled bool `json:"is_enabled"` - // Scoped to this intern rather than shared by the workspace. - IsInternOnly bool `json:"is_intern_only"` - Kind Kind `json:"kind"` - // The name the intern's MCP config keys the server by; null when it is not an MCP server or is off. - McpServerName *string `json:"mcp_server_name"` - // Display name. - Name string `json:"name"` - // `switched_off` for this intern, `disabled` for the whole workspace; null while on. - OffReason *OffReason `json:"off_reason"` - Server *Server `json:"server"` - Status InternConnectionStatus `json:"status"` - // Tools found by the last successful test. - ToolCount *int64 `json:"tool_count"` -} - -func (i *InternConnection) GetAccount() Account { - if i == nil { - return Account{} - } - return i.Account -} - -func (i *InternConnection) GetID() string { - if i == nil { - return "" - } - return i.ID -} - -func (i *InternConnection) GetIsEnabled() bool { - if i == nil { - return false - } - return i.IsEnabled -} - -func (i *InternConnection) GetIsInternOnly() bool { - if i == nil { - return false - } - return i.IsInternOnly -} - -func (i *InternConnection) GetKind() Kind { - if i == nil { - return Kind("") - } - return i.Kind -} - -func (i *InternConnection) GetMcpServerName() *string { - if i == nil { - return nil - } - return i.McpServerName -} - -func (i *InternConnection) GetName() string { - if i == nil { - return "" - } - return i.Name -} - -func (i *InternConnection) GetOffReason() *OffReason { - if i == nil { - return nil - } - return i.OffReason -} - -func (i *InternConnection) GetServer() *Server { - if i == nil { - return nil - } - return i.Server -} - -func (i *InternConnection) GetStatus() InternConnectionStatus { - if i == nil { - return InternConnectionStatus{} - } - return i.Status -} - -func (i *InternConnection) GetToolCount() *int64 { - if i == nil { - return nil - } - return i.ToolCount -} diff --git a/models/components/internconnectionlist.go b/models/components/internconnectionlist.go deleted file mode 100644 index 9737ecb17..000000000 --- a/models/components/internconnectionlist.go +++ /dev/null @@ -1,14 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -type InternConnectionList struct { - Data []InternConnection `json:"data"` -} - -func (i *InternConnectionList) GetData() []InternConnection { - if i == nil { - return []InternConnection{} - } - return i.Data -} diff --git a/models/components/interndaemonaccess.go b/models/components/interndaemonaccess.go deleted file mode 100644 index 89ed85957..000000000 --- a/models/components/interndaemonaccess.go +++ /dev/null @@ -1,43 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -type Viewer struct { - // The caller's Ori principals on this intern: `clerk:`, and, when the grant carries `vault:read`, `slack::` for each Slack account they linked to it. A session started by one of them in a one-to-one Slack DM is the caller's to see. - Principals []string `json:"principals"` -} - -func (v *Viewer) GetPrincipals() []string { - if v == nil { - return []string{} - } - return v.Principals -} - -// InternDaemonAccess - The intern daemon's origin, the bearer `ori tui --host` sends to it as `ORI_DAEMON_TOKEN`, and who the caller is on the intern. -type InternDaemonAccess struct { - Origin string `json:"origin"` - Token string `json:"token"` - Viewer Viewer `json:"viewer"` -} - -func (i *InternDaemonAccess) GetOrigin() string { - if i == nil { - return "" - } - return i.Origin -} - -func (i *InternDaemonAccess) GetToken() string { - if i == nil { - return "" - } - return i.Token -} - -func (i *InternDaemonAccess) GetViewer() Viewer { - if i == nil { - return Viewer{} - } - return i.Viewer -} diff --git a/models/components/interninvokeacceptedresponse.go b/models/components/interninvokeacceptedresponse.go deleted file mode 100644 index 5a3958c5a..000000000 --- a/models/components/interninvokeacceptedresponse.go +++ /dev/null @@ -1,48 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternInvokeAcceptedResponseStatus - `started` when a new run began. `steered` when the session already had a run going and the prompt was delivered into it instead. -type InternInvokeAcceptedResponseStatus string - -const ( - InternInvokeAcceptedResponseStatusStarted InternInvokeAcceptedResponseStatus = "started" - InternInvokeAcceptedResponseStatusSteered InternInvokeAcceptedResponseStatus = "steered" -) - -func (e InternInvokeAcceptedResponseStatus) ToPointer() *InternInvokeAcceptedResponseStatus { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *InternInvokeAcceptedResponseStatus) IsExact() bool { - if e != nil { - switch *e { - case "started", "steered": - return true - } - } - return false -} - -// InternInvokeAcceptedResponse - The intern admitted the prompt. The run continues on the intern. -type InternInvokeAcceptedResponse struct { - // The session the run belongs to. Send it back to continue the conversation. - SessionID string `json:"session_id"` - // `started` when a new run began. `steered` when the session already had a run going and the prompt was delivered into it instead. - Status InternInvokeAcceptedResponseStatus `json:"status"` -} - -func (i *InternInvokeAcceptedResponse) GetSessionID() string { - if i == nil { - return "" - } - return i.SessionID -} - -func (i *InternInvokeAcceptedResponse) GetStatus() InternInvokeAcceptedResponseStatus { - if i == nil { - return InternInvokeAcceptedResponseStatus("") - } - return i.Status -} diff --git a/models/components/interninvokerequest.go b/models/components/interninvokerequest.go deleted file mode 100644 index 4e0302b22..000000000 --- a/models/components/interninvokerequest.go +++ /dev/null @@ -1,25 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternInvokeRequest - A prompt to run on the intern without holding a connection open. -type InternInvokeRequest struct { - // The prompt for the run, at most 32000 characters. - Input string `json:"input"` - // The session to run in. Send the `session_id` from an earlier `202` to continue that conversation, for example to hand the intern a decision on a case it is working. Omit it to start a new session. Only a `session_id` this endpoint issued to the same caller on the same intern is accepted; any other is refused with `404`. - SessionID *string `json:"session_id,omitzero"` -} - -func (i *InternInvokeRequest) GetInput() string { - if i == nil { - return "" - } - return i.Input -} - -func (i *InternInvokeRequest) GetSessionID() *string { - if i == nil { - return nil - } - return i.SessionID -} diff --git a/models/components/internlifecycleerror.go b/models/components/internlifecycleerror.go deleted file mode 100644 index 4f18e82b1..000000000 --- a/models/components/internlifecycleerror.go +++ /dev/null @@ -1,155 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "errors" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type CodeType string - -const ( - CodeTypeStr CodeType = "str" - CodeTypeInteger CodeType = "integer" -) - -type Code struct { - Str *string `queryParam:"inline" union:"member"` - Integer *int64 `queryParam:"inline" union:"member"` - - Type CodeType -} - -func CreateCodeStr(str string) Code { - typ := CodeTypeStr - - return Code{ - Str: &str, - Type: typ, - } -} - -func CreateCodeInteger(integer int64) Code { - typ := CodeTypeInteger - - return Code{ - Integer: &integer, - Type: typ, - } -} - -func (u *Code) UnmarshalJSON(data []byte) error { - - var candidates []utils.UnionCandidate - - // Collect all valid candidates - var str string = "" - if err := utils.UnmarshalJSON(data, &str, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: CodeTypeStr, - Value: &str, - }) - } - - var integer int64 = int64(0) - if err := utils.UnmarshalJSON(data, &integer, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: CodeTypeInteger, - Value: &integer, - }) - } - - if len(candidates) == 0 { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for Code", string(data)) - } - - // Pick the best candidate using multi-stage filtering - best := utils.PickBestUnionCandidate(candidates, data) - if best == nil { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for Code", string(data)) - } - - // Set the union type and value based on the best candidate - u.Type = best.Type.(CodeType) - switch best.Type { - case CodeTypeStr: - u.Str = best.Value.(*string) - return nil - case CodeTypeInteger: - u.Integer = best.Value.(*int64) - return nil - } - - return fmt.Errorf("could not unmarshal `%s` into any supported union types for Code", string(data)) -} - -func (u Code) MarshalJSON() ([]byte, error) { - if u.Str != nil { - return utils.MarshalJSON(u.Str, "", true) - } - - if u.Integer != nil { - return utils.MarshalJSON(u.Integer, "", true) - } - - return nil, errors.New("could not marshal union type Code: all fields are null") -} - -type InternLifecycleErrorMetadata struct { - Reason string `json:"reason"` - Retryable bool `json:"retryable"` -} - -func (i *InternLifecycleErrorMetadata) GetReason() string { - if i == nil { - return "" - } - return i.Reason -} - -func (i *InternLifecycleErrorMetadata) GetRetryable() bool { - if i == nil { - return false - } - return i.Retryable -} - -type InternLifecycleErrorError struct { - Code Code `json:"code"` - Message string `json:"message"` - Metadata *InternLifecycleErrorMetadata `json:"metadata,omitzero"` -} - -func (i InternLifecycleErrorError) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(i, "", false) -} - -func (i *InternLifecycleErrorError) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &i, "", false, nil); err != nil { - return err - } - return nil -} - -func (i *InternLifecycleErrorError) GetCode() Code { - if i == nil { - return Code{} - } - return i.Code -} - -func (i *InternLifecycleErrorError) GetMessage() string { - if i == nil { - return "" - } - return i.Message -} - -func (i *InternLifecycleErrorError) GetMetadata() *InternLifecycleErrorMetadata { - if i == nil { - return nil - } - return i.Metadata -} diff --git a/models/components/internlistresponse.go b/models/components/internlistresponse.go deleted file mode 100644 index 275b02705..000000000 --- a/models/components/internlistresponse.go +++ /dev/null @@ -1,33 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// InternListResponse - Interns visible to the authenticated API key. -type InternListResponse struct { - Data []Intern `json:"data"` - // True when more interns match the current filters. - HasMore bool `json:"has_more"` - // Opaque cursor, present when `has_more` is true. Pass it as `starting_after` to fetch the next page. - NextCursor *string `json:"next_cursor,omitzero"` -} - -func (i *InternListResponse) GetData() []Intern { - if i == nil { - return []Intern{} - } - return i.Data -} - -func (i *InternListResponse) GetHasMore() bool { - if i == nil { - return false - } - return i.HasMore -} - -func (i *InternListResponse) GetNextCursor() *string { - if i == nil { - return nil - } - return i.NextCursor -} diff --git a/models/components/provisioninternresponse.go b/models/components/provisioninternresponse.go deleted file mode 100644 index 1ef96ca81..000000000 --- a/models/components/provisioninternresponse.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type ProvisionInternResponse struct { - //lint:ignore U1000 accessed via reflection for JSON marshaling - provisioning bool `const:"true" json:"provisioning"` -} - -func (p ProvisionInternResponse) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(p, "", false) -} - -func (p *ProvisionInternResponse) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &p, "", false, nil); err != nil { - return err - } - return nil -} - -func (p *ProvisionInternResponse) GetProvisioning() bool { - return true -} diff --git a/models/components/signinterndaemonrequest.go b/models/components/signinterndaemonrequest.go deleted file mode 100644 index 42a21c094..000000000 --- a/models/components/signinterndaemonrequest.go +++ /dev/null @@ -1,87 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "encoding/json" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -// SignInternDaemonRequestMethod - The HTTP method of the daemon request. -type SignInternDaemonRequestMethod string - -const ( - SignInternDaemonRequestMethodPost SignInternDaemonRequestMethod = "POST" -) - -func (e SignInternDaemonRequestMethod) ToPointer() *SignInternDaemonRequestMethod { - return &e -} -func (e *SignInternDaemonRequestMethod) UnmarshalJSON(data []byte) error { - var v string - if err := json.Unmarshal(data, &v); err != nil { - return err - } - switch v { - case "POST": - *e = SignInternDaemonRequestMethod(v) - return nil - default: - return fmt.Errorf("invalid value for SignInternDaemonRequestMethod: %v", v) - } -} - -// Route - The daemon request the proof is for. When present the response also carries the single-use, route-bound proof (`x-ori-invoke-signature-v2`, `x-ori-invoke-nonce`). -type Route struct { - // The HTTP method of the daemon request. - Method SignInternDaemonRequestMethod `json:"method"` - // The daemon request path, percent-encoded as sent, without origin or query. The route-bound proof admits only this path. - Path string `json:"path"` -} - -func (r *Route) GetMethod() SignInternDaemonRequestMethod { - if r == nil { - return SignInternDaemonRequestMethod("") - } - return r.Method -} - -func (r *Route) GetPath() string { - if r == nil { - return "" - } - return r.Path -} - -type SignInternDaemonRequest struct { - // Lower-case hex SHA-256 of the exact bytes the CLI will send as the daemon request body. - BodySha256 string `json:"bodySha256"` - // The daemon request the proof is for. When present the response also carries the single-use, route-bound proof (`x-ori-invoke-signature-v2`, `x-ori-invoke-nonce`). - Route *Route `json:"route,omitzero"` -} - -func (s SignInternDaemonRequest) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(s, "", false) -} - -func (s *SignInternDaemonRequest) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &s, "", false, nil); err != nil { - return err - } - return nil -} - -func (s *SignInternDaemonRequest) GetBodySha256() string { - if s == nil { - return "" - } - return s.BodySha256 -} - -func (s *SignInternDaemonRequest) GetRoute() *Route { - if s == nil { - return nil - } - return s.Route -} diff --git a/models/components/signinterndaemonresponse.go b/models/components/signinterndaemonresponse.go deleted file mode 100644 index cbd5903e6..000000000 --- a/models/components/signinterndaemonresponse.go +++ /dev/null @@ -1,52 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -// SignInternDaemonResponse - Headers the CLI copies onto the daemon request so the sidecar can verify who is asking. -type SignInternDaemonResponse struct { - // Present with `x-ori-invoke-signature-v2`: the single-use id that proof is bound to. - XOriInvokeNonce *string `json:"x-ori-invoke-nonce,omitzero"` - // Base64 Ed25519 signature over the intern id, timestamp, user and body digest. - XOriInvokeSignature string `json:"x-ori-invoke-signature"` - // Present when the request named a `route`: Base64 Ed25519 signature over the intern id, timestamp, nonce, user, method, path and body digest. The intern accepts it once. - XOriInvokeSignatureV2 *string `json:"x-ori-invoke-signature-v2,omitzero"` - // Unix seconds at signing; the daemon refuses proofs older than its window. - XOriInvokeTimestamp string `json:"x-ori-invoke-timestamp"` - // The verified OAuth subject the proof names. Never taken from the request. - XOriInvokeUser string `json:"x-ori-invoke-user"` -} - -func (s *SignInternDaemonResponse) GetXOriInvokeNonce() *string { - if s == nil { - return nil - } - return s.XOriInvokeNonce -} - -func (s *SignInternDaemonResponse) GetXOriInvokeSignature() string { - if s == nil { - return "" - } - return s.XOriInvokeSignature -} - -func (s *SignInternDaemonResponse) GetXOriInvokeSignatureV2() *string { - if s == nil { - return nil - } - return s.XOriInvokeSignatureV2 -} - -func (s *SignInternDaemonResponse) GetXOriInvokeTimestamp() string { - if s == nil { - return "" - } - return s.XOriInvokeTimestamp -} - -func (s *SignInternDaemonResponse) GetXOriInvokeUser() string { - if s == nil { - return "" - } - return s.XOriInvokeUser -} diff --git a/models/components/suspendinternresponse.go b/models/components/suspendinternresponse.go deleted file mode 100644 index ff17d1612..000000000 --- a/models/components/suspendinternresponse.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type SuspendInternResponse struct { - //lint:ignore U1000 accessed via reflection for JSON marshaling - suspended bool `const:"true" json:"suspended"` -} - -func (s SuspendInternResponse) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(s, "", false) -} - -func (s *SuspendInternResponse) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &s, "", false, nil); err != nil { - return err - } - return nil -} - -func (s *SuspendInternResponse) GetSuspended() bool { - return true -} diff --git a/models/components/updateinternrequest.go b/models/components/updateinternrequest.go deleted file mode 100644 index 554633c2b..000000000 --- a/models/components/updateinternrequest.go +++ /dev/null @@ -1,47 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package components - -import ( - "github.com/OpenRouterTeam/go-sdk/optionalnullable" -) - -// UpdateInternRequest - Lifecycle settings to change. Omitted fields stay unchanged and null clears a field. -type UpdateInternRequest struct { - // New free-form description. Null clears it. - Description optionalnullable.OptionalNullable[string] `json:"description,omitzero"` - // New standing instructions. Null clears them. - Instructions optionalnullable.OptionalNullable[string] `json:"instructions,omitzero"` - // New OpenRouter model slug in `author/slug` form (an optional `:variant` suffix is accepted). Other shapes are refused with 400. Null restores the workspace default. Takes effect on the next provision: until then `GET` shows this configured model while chat chunks show the model the running intern reports. - Model optionalnullable.OptionalNullable[string] `json:"model,omitzero"` - // New intern name, unique per creator within the workspace. - Name *string `json:"name,omitzero"` -} - -func (u *UpdateInternRequest) GetDescription() optionalnullable.OptionalNullable[string] { - if u == nil { - return nil - } - return u.Description -} - -func (u *UpdateInternRequest) GetInstructions() optionalnullable.OptionalNullable[string] { - if u == nil { - return nil - } - return u.Instructions -} - -func (u *UpdateInternRequest) GetModel() optionalnullable.OptionalNullable[string] { - if u == nil { - return nil - } - return u.Model -} - -func (u *UpdateInternRequest) GetName() *string { - if u == nil { - return nil - } - return u.Name -} diff --git a/models/operations/createintern.go b/models/operations/createintern.go deleted file mode 100644 index 325bfbf3a..000000000 --- a/models/operations/createintern.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type CreateInternRequest struct { - // Key that makes retries resume the same create operation, from 1 through 255 characters. An empty or longer key is refused with 400. Without the header, the server derives a stable key from the request body. - IdempotencyKey *string `header:"style=simple,explode=false,name=Idempotency-Key"` - CreateInternRequest components.CreateInternRequest `request:"mediaType=application/json"` -} - -func (c *CreateInternRequest) GetIdempotencyKey() *string { - if c == nil { - return nil - } - return c.IdempotencyKey -} - -func (c *CreateInternRequest) GetCreateInternRequest() components.CreateInternRequest { - if c == nil { - return components.CreateInternRequest{} - } - return c.CreateInternRequest -} diff --git a/models/operations/createinternchatcompletion.go b/models/operations/createinternchatcompletion.go deleted file mode 100644 index 7df932a6c..000000000 --- a/models/operations/createinternchatcompletion.go +++ /dev/null @@ -1,139 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "errors" - "fmt" - "github.com/OpenRouterTeam/go-sdk/internal/utils" - "github.com/OpenRouterTeam/go-sdk/models/components" - "github.com/OpenRouterTeam/go-sdk/types/stream" -) - -type CreateInternChatCompletionRequest struct { - // The intern to talk to. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - InternChatCompletionRequest components.InternChatCompletionRequest `request:"mediaType=application/json"` -} - -func (c *CreateInternChatCompletionRequest) GetInternID() string { - if c == nil { - return "" - } - return c.InternID -} - -func (c *CreateInternChatCompletionRequest) GetInternChatCompletionRequest() components.InternChatCompletionRequest { - if c == nil { - return components.InternChatCompletionRequest{} - } - return c.InternChatCompletionRequest -} - -type CreateInternChatCompletionResponseResultType string - -const ( - CreateInternChatCompletionResponseResultTypeEventStream CreateInternChatCompletionResponseResultType = "event-stream" - CreateInternChatCompletionResponseResultTypeInternChatSteeredResponse CreateInternChatCompletionResponseResultType = "InternChatSteeredResponse" -) - -type CreateInternChatCompletionResponseResult struct { - EventStream *stream.EventStream[components.InternChatStreamingResponse] `queryParam:"inline" union:"member"` - InternChatSteeredResponse *components.InternChatSteeredResponse `queryParam:"inline" union:"member"` - - Type CreateInternChatCompletionResponseResultType -} - -func CreateCreateInternChatCompletionResponseResultEventStream(eventStream *stream.EventStream[components.InternChatStreamingResponse]) CreateInternChatCompletionResponseResult { - typ := CreateInternChatCompletionResponseResultTypeEventStream - - return CreateInternChatCompletionResponseResult{ - EventStream: eventStream, - Type: typ, - } -} - -func CreateCreateInternChatCompletionResponseResultInternChatSteeredResponse(internChatSteeredResponse components.InternChatSteeredResponse) CreateInternChatCompletionResponseResult { - typ := CreateInternChatCompletionResponseResultTypeInternChatSteeredResponse - - return CreateInternChatCompletionResponseResult{ - InternChatSteeredResponse: &internChatSteeredResponse, - Type: typ, - } -} - -func (u *CreateInternChatCompletionResponseResult) UnmarshalJSON(data []byte) error { - - var candidates []utils.UnionCandidate - - // Collect all valid candidates - var eventStream *stream.EventStream[components.InternChatStreamingResponse] = &stream.EventStream[components.InternChatStreamingResponse]{} - if err := utils.UnmarshalJSON(data, &eventStream, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: CreateInternChatCompletionResponseResultTypeEventStream, - Value: eventStream, - }) - } - - var internChatSteeredResponse components.InternChatSteeredResponse = components.InternChatSteeredResponse{} - if err := utils.UnmarshalJSON(data, &internChatSteeredResponse, "", true, nil); err == nil { - candidates = append(candidates, utils.UnionCandidate{ - Type: CreateInternChatCompletionResponseResultTypeInternChatSteeredResponse, - Value: &internChatSteeredResponse, - }) - } - - if len(candidates) == 0 { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for CreateInternChatCompletionResponseResult", string(data)) - } - - // Pick the best candidate using multi-stage filtering - best := utils.PickBestUnionCandidate(candidates, data) - if best == nil { - return fmt.Errorf("could not unmarshal `%s` into any supported union types for CreateInternChatCompletionResponseResult", string(data)) - } - - // Set the union type and value based on the best candidate - u.Type = best.Type.(CreateInternChatCompletionResponseResultType) - switch best.Type { - case CreateInternChatCompletionResponseResultTypeEventStream: - u.EventStream = best.Value.(*stream.EventStream[components.InternChatStreamingResponse]) - return nil - case CreateInternChatCompletionResponseResultTypeInternChatSteeredResponse: - u.InternChatSteeredResponse = best.Value.(*components.InternChatSteeredResponse) - return nil - } - - return fmt.Errorf("could not unmarshal `%s` into any supported union types for CreateInternChatCompletionResponseResult", string(data)) -} - -func (u CreateInternChatCompletionResponseResult) MarshalJSON() ([]byte, error) { - if u.EventStream != nil { - return utils.MarshalJSON(u.EventStream, "", true) - } - - if u.InternChatSteeredResponse != nil { - return utils.MarshalJSON(u.InternChatSteeredResponse, "", true) - } - - return nil, errors.New("could not marshal union type CreateInternChatCompletionResponseResult: all fields are null") -} - -type CreateInternChatCompletionResponse struct { - Headers map[string][]string - Result CreateInternChatCompletionResponseResult -} - -func (c *CreateInternChatCompletionResponse) GetHeaders() map[string][]string { - if c == nil { - return map[string][]string{} - } - return c.Headers -} - -func (c *CreateInternChatCompletionResponse) GetResult() CreateInternChatCompletionResponseResult { - if c == nil { - return CreateInternChatCompletionResponseResult{} - } - return c.Result -} diff --git a/models/operations/deleteintern.go b/models/operations/deleteintern.go deleted file mode 100644 index 8bafd50c4..000000000 --- a/models/operations/deleteintern.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type DeleteInternRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - DeleteInternRequest components.DeleteInternRequest `request:"mediaType=application/json"` -} - -func (d *DeleteInternRequest) GetInternID() string { - if d == nil { - return "" - } - return d.InternID -} - -func (d *DeleteInternRequest) GetDeleteInternRequest() components.DeleteInternRequest { - if d == nil { - return components.DeleteInternRequest{} - } - return d.DeleteInternRequest -} diff --git a/models/operations/getintern.go b/models/operations/getintern.go deleted file mode 100644 index cf7e5f87b..000000000 --- a/models/operations/getintern.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type GetInternRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (g *GetInternRequest) GetInternID() string { - if g == nil { - return "" - } - return g.InternID -} diff --git a/models/operations/getinternconnections.go b/models/operations/getinternconnections.go deleted file mode 100644 index 030610ac6..000000000 --- a/models/operations/getinternconnections.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type GetInternConnectionsRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (g *GetInternConnectionsRequest) GetInternID() string { - if g == nil { - return "" - } - return g.InternID -} diff --git a/models/operations/getinterndaemon.go b/models/operations/getinterndaemon.go deleted file mode 100644 index 69c451942..000000000 --- a/models/operations/getinterndaemon.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type GetInternDaemonRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (g *GetInternDaemonRequest) GetInternID() string { - if g == nil { - return "" - } - return g.InternID -} diff --git a/models/operations/getinterndaemonaccess.go b/models/operations/getinterndaemonaccess.go deleted file mode 100644 index 1417c0ea1..000000000 --- a/models/operations/getinterndaemonaccess.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type GetInternDaemonAccessRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (g *GetInternDaemonAccessRequest) GetInternID() string { - if g == nil { - return "" - } - return g.InternID -} diff --git a/models/operations/getinternicon.go b/models/operations/getinternicon.go deleted file mode 100644 index e4a5ac77e..000000000 --- a/models/operations/getinternicon.go +++ /dev/null @@ -1,24 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type GetInternIconRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - // The `icon_sha256` the caller expects. - V *string `queryParam:"style=form,explode=true,name=v"` -} - -func (g *GetInternIconRequest) GetInternID() string { - if g == nil { - return "" - } - return g.InternID -} - -func (g *GetInternIconRequest) GetV() *string { - if g == nil { - return nil - } - return g.V -} diff --git a/models/operations/invokeintern.go b/models/operations/invokeintern.go deleted file mode 100644 index 5b448a3a9..000000000 --- a/models/operations/invokeintern.go +++ /dev/null @@ -1,46 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type InvokeInternRequest struct { - // The intern to run. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - InternInvokeRequest components.InternInvokeRequest `request:"mediaType=application/json"` -} - -func (i *InvokeInternRequest) GetInternID() string { - if i == nil { - return "" - } - return i.InternID -} - -func (i *InvokeInternRequest) GetInternInvokeRequest() components.InternInvokeRequest { - if i == nil { - return components.InternInvokeRequest{} - } - return i.InternInvokeRequest -} - -type InvokeInternResponse struct { - Headers map[string][]string - Result components.InternInvokeAcceptedResponse -} - -func (i *InvokeInternResponse) GetHeaders() map[string][]string { - if i == nil { - return map[string][]string{} - } - return i.Headers -} - -func (i *InvokeInternResponse) GetResult() components.InternInvokeAcceptedResponse { - if i == nil { - return components.InternInvokeAcceptedResponse{} - } - return i.Result -} diff --git a/models/operations/listinterns.go b/models/operations/listinterns.go deleted file mode 100644 index 1f1818fa5..000000000 --- a/models/operations/listinterns.go +++ /dev/null @@ -1,85 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/internal/utils" -) - -type Status string - -const ( - StatusAwaitingSlackInstall Status = "awaiting_slack_install" - StatusQueued Status = "queued" - StatusProvisioning Status = "provisioning" - StatusRunning Status = "running" - StatusFailed Status = "failed" - StatusStopped Status = "stopped" - StatusDestroying Status = "destroying" - StatusDestroyFailed Status = "destroy_failed" -) - -func (e Status) ToPointer() *Status { - return &e -} - -// IsExact returns true if the value matches a known enum value, false otherwise. -func (e *Status) IsExact() bool { - if e != nil { - switch *e { - case "awaiting_slack_install", "queued", "provisioning", "running", "failed", "stopped", "destroying", "destroy_failed": - return true - } - } - return false -} - -type ListInternsRequest struct { - // Maximum number of interns to return, from 1 through 500. - Limit *int64 `queryParam:"style=form,explode=true,name=limit"` - // Comma-separated lifecycle statuses to include, at most 8. Repeats are collapsed. - Status []Status `queryParam:"style=form,explode=false,name=status"` - // The opaque `next_cursor` of the previous page. Returns the interns that come after it in the newest-first order. A malformed cursor is a 400. - StartingAfter *string `queryParam:"style=form,explode=true,name=starting_after"` - // Only return interns in this workspace. It must match the API key workspace. - WorkspaceID *string `queryParam:"style=form,explode=true,name=workspace_id"` -} - -func (l ListInternsRequest) MarshalJSON() ([]byte, error) { - return utils.MarshalJSON(l, "", false) -} - -func (l *ListInternsRequest) UnmarshalJSON(data []byte) error { - if err := utils.UnmarshalJSON(data, &l, "", false, nil); err != nil { - return err - } - return nil -} - -func (l *ListInternsRequest) GetLimit() *int64 { - if l == nil { - return nil - } - return l.Limit -} - -func (l *ListInternsRequest) GetStatus() []Status { - if l == nil { - return nil - } - return l.Status -} - -func (l *ListInternsRequest) GetStartingAfter() *string { - if l == nil { - return nil - } - return l.StartingAfter -} - -func (l *ListInternsRequest) GetWorkspaceID() *string { - if l == nil { - return nil - } - return l.WorkspaceID -} diff --git a/models/operations/options.go b/models/operations/options.go index 2300993a5..b7b472815 100644 --- a/models/operations/options.go +++ b/models/operations/options.go @@ -25,7 +25,6 @@ const ( AcceptHeaderEnumAudioWildcard AcceptHeaderEnum = "audio/*" AcceptHeaderEnumTextEventStream AcceptHeaderEnum = "text/event-stream" AcceptHeaderEnumApplicationOctetStream AcceptHeaderEnum = "application/octet-stream" - AcceptHeaderEnumImageWildcard AcceptHeaderEnum = "image/*" AcceptHeaderEnumVideoMp4 AcceptHeaderEnum = "video/mp4" ) diff --git a/models/operations/provisionintern.go b/models/operations/provisionintern.go deleted file mode 100644 index 7af7aeca7..000000000 --- a/models/operations/provisionintern.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type ProvisionInternRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (p *ProvisionInternRequest) GetInternID() string { - if p == nil { - return "" - } - return p.InternID -} diff --git a/models/operations/signinterndaemonaccessrequest.go b/models/operations/signinterndaemonaccessrequest.go deleted file mode 100644 index 581d52b6d..000000000 --- a/models/operations/signinterndaemonaccessrequest.go +++ /dev/null @@ -1,46 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type SignInternDaemonAccessRequestRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - SignInternDaemonRequest components.SignInternDaemonRequest `request:"mediaType=application/json"` -} - -func (s *SignInternDaemonAccessRequestRequest) GetInternID() string { - if s == nil { - return "" - } - return s.InternID -} - -func (s *SignInternDaemonAccessRequestRequest) GetSignInternDaemonRequest() components.SignInternDaemonRequest { - if s == nil { - return components.SignInternDaemonRequest{} - } - return s.SignInternDaemonRequest -} - -type SignInternDaemonAccessRequestResponse struct { - Headers map[string][]string - Result components.SignInternDaemonResponse -} - -func (s *SignInternDaemonAccessRequestResponse) GetHeaders() map[string][]string { - if s == nil { - return map[string][]string{} - } - return s.Headers -} - -func (s *SignInternDaemonAccessRequestResponse) GetResult() components.SignInternDaemonResponse { - if s == nil { - return components.SignInternDaemonResponse{} - } - return s.Result -} diff --git a/models/operations/signinterndaemonrequest.go b/models/operations/signinterndaemonrequest.go deleted file mode 100644 index 81d32c4a9..000000000 --- a/models/operations/signinterndaemonrequest.go +++ /dev/null @@ -1,46 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type SignInternDaemonRequestRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - SignInternDaemonRequest components.SignInternDaemonRequest `request:"mediaType=application/json"` -} - -func (s *SignInternDaemonRequestRequest) GetInternID() string { - if s == nil { - return "" - } - return s.InternID -} - -func (s *SignInternDaemonRequestRequest) GetSignInternDaemonRequest() components.SignInternDaemonRequest { - if s == nil { - return components.SignInternDaemonRequest{} - } - return s.SignInternDaemonRequest -} - -type SignInternDaemonRequestResponse struct { - Headers map[string][]string - Result components.SignInternDaemonResponse -} - -func (s *SignInternDaemonRequestResponse) GetHeaders() map[string][]string { - if s == nil { - return map[string][]string{} - } - return s.Headers -} - -func (s *SignInternDaemonRequestResponse) GetResult() components.SignInternDaemonResponse { - if s == nil { - return components.SignInternDaemonResponse{} - } - return s.Result -} diff --git a/models/operations/suspendintern.go b/models/operations/suspendintern.go deleted file mode 100644 index b0ced2125..000000000 --- a/models/operations/suspendintern.go +++ /dev/null @@ -1,15 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -type SuspendInternRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` -} - -func (s *SuspendInternRequest) GetInternID() string { - if s == nil { - return "" - } - return s.InternID -} diff --git a/models/operations/updateintern.go b/models/operations/updateintern.go deleted file mode 100644 index 1e78062ab..000000000 --- a/models/operations/updateintern.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package operations - -import ( - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -type UpdateInternRequest struct { - // ID of an intern visible to the authenticated API key. - InternID string `pathParam:"style=simple,explode=false,name=internId"` - UpdateInternRequest components.UpdateInternRequest `request:"mediaType=application/json"` -} - -func (u *UpdateInternRequest) GetInternID() string { - if u == nil { - return "" - } - return u.InternID -} - -func (u *UpdateInternRequest) GetUpdateInternRequest() components.UpdateInternRequest { - if u == nil { - return components.UpdateInternRequest{} - } - return u.UpdateInternRequest -} diff --git a/models/sdkerrors/internchaterrorresponse.go b/models/sdkerrors/internchaterrorresponse.go deleted file mode 100644 index ba844779b..000000000 --- a/models/sdkerrors/internchaterrorresponse.go +++ /dev/null @@ -1,21 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package sdkerrors - -import ( - "encoding/json" - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -// InternChatErrorResponse - A refusal before the stream opens. Once the response is `200` and streaming, failures arrive as a chunk with `finish_reason: "error"` instead. -type InternChatErrorResponse struct { - // The OpenAI-compatible error object. `metadata` is present on refusals from the chat route. Authentication refusals (`401`), the departed-creator `403` and the programme `404` carry only `code` and `message`. - Error_ components.InternChatError `json:"error"` -} - -var _ error = &InternChatErrorResponse{} - -func (e *InternChatErrorResponse) Error() string { - data, _ := json.Marshal(e) - return string(data) -} diff --git a/models/sdkerrors/internlifecycleerror.go b/models/sdkerrors/internlifecycleerror.go deleted file mode 100644 index 7a44ba53f..000000000 --- a/models/sdkerrors/internlifecycleerror.go +++ /dev/null @@ -1,20 +0,0 @@ -// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - -package sdkerrors - -import ( - "encoding/json" - "github.com/OpenRouterTeam/go-sdk/models/components" -) - -// InternLifecycleError - Intern lifecycle request failure. -type InternLifecycleError struct { - Error_ components.InternLifecycleErrorError `json:"error"` -} - -var _ error = &InternLifecycleError{} - -func (e *InternLifecycleError) Error() string { - data, _ := json.Marshal(e) - return string(data) -} diff --git a/openrouter.go b/openrouter.go index 9309fb9c0..71c3a62c9 100644 --- a/openrouter.go +++ b/openrouter.go @@ -95,8 +95,6 @@ type OpenRouter struct { Guardrails *Guardrails // Images endpoints Images *Images - // Create, inspect, update, provision, suspend and delete OpenRouter interns through an API key, and talk to them: the chat route streams OpenAI-compatible completions from one intern, pausing as an `openrouter.provide_input` tool call when the intern needs your permission or an answer. Available to interns programme members; other callers receive 404. See https://openrouter.ai/docs/guides/ori/intern-chat. - Interns *Interns // API key management endpoints APIKeys *APIKeys // Model information endpoints @@ -219,9 +217,9 @@ func WithTimeout(timeout time.Duration) SDKOption { // New creates a new instance of the SDK with the provided options func New(opts ...SDKOption) *OpenRouter { sdk := &OpenRouter{ - SDKVersion: "0.9.74", + SDKVersion: "0.9.75", sdkConfiguration: config.SDKConfiguration{ - UserAgent: "speakeasy-sdk/go 0.9.74 2.914.0 1.0.0 github.com/OpenRouterTeam/go-sdk", + UserAgent: "speakeasy-sdk/go 0.9.75 2.914.0 1.0.0 github.com/OpenRouterTeam/go-sdk", Globals: globals.Globals{}, ServerList: ServerList, }, @@ -267,7 +265,6 @@ func New(opts ...SDKOption) *OpenRouter { sdk.Generations = newGenerations(sdk, sdk.sdkConfiguration, sdk.hooks) sdk.Guardrails = newGuardrails(sdk, sdk.sdkConfiguration, sdk.hooks) sdk.Images = newImages(sdk, sdk.sdkConfiguration, sdk.hooks) - sdk.Interns = newInterns(sdk, sdk.sdkConfiguration, sdk.hooks) sdk.APIKeys = newAPIKeys(sdk, sdk.sdkConfiguration, sdk.hooks) sdk.Models = newModels(sdk, sdk.sdkConfiguration, sdk.hooks) sdk.Observability = newObservability(sdk, sdk.sdkConfiguration, sdk.hooks) From dd2028a937cb0f62bd3a3cbe5459df400b57ccf4 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 23 Oct 2026 18:05:18 +0000 Subject: [PATCH 2/2] docs: sync install snippets to v0.9.75 --- OVERVIEW.md | 2 +- README.md | 2 +- doc.go | 2 +- example_test.go | 2 +- examples/README.md | 4 ++-- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/OVERVIEW.md b/OVERVIEW.md index bbd4501e4..e6b79fb5d 100644 --- a/OVERVIEW.md +++ b/OVERVIEW.md @@ -117,7 +117,7 @@ go get github.com/OpenRouterTeam/go-sdk For beta releases, pin an explicit version: ```bash -go get github.com/OpenRouterTeam/go-sdk@v0.9.74 +go get github.com/OpenRouterTeam/go-sdk@v0.9.75 ``` **Requirements:** Go 1.25 or higher diff --git a/README.md b/README.md index c7e227ebf..171a1dd05 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ To learn more, see the [API Reference](https://openrouter.ai/docs/sdks/go/api-re > This SDK is in **beta**. Pin to a specific version to avoid unexpected breaking changes: > > ```bash -> go get github.com/OpenRouterTeam/go-sdk@v0.9.74 +> go get github.com/OpenRouterTeam/go-sdk@v0.9.75 > ``` diff --git a/doc.go b/doc.go index 3355fcf3b..0b73c88ed 100644 --- a/doc.go +++ b/doc.go @@ -6,7 +6,7 @@ provider selection, and unified billing. This SDK is in beta. Pin to a specific module version to avoid unexpected breaking changes: - go get github.com/OpenRouterTeam/go-sdk@v0.9.74 + go get github.com/OpenRouterTeam/go-sdk@v0.9.75 For full API documentation, visit: https://openrouter.ai/docs/client-sdks/go/overview diff --git a/example_test.go b/example_test.go index 44cff5003..17a108598 100644 --- a/example_test.go +++ b/example_test.go @@ -18,7 +18,7 @@ func ExampleNew() { openrouter.WithSecurity("your-api-key"), ) fmt.Println(sdk.SDKVersion) - // Output: 0.9.74 + // Output: 0.9.75 } // Example demonstrates basic usage of the OpenRouter SDK for chat completions. diff --git a/examples/README.md b/examples/README.md index 94e41df89..94bf82889 100644 --- a/examples/README.md +++ b/examples/README.md @@ -43,7 +43,7 @@ cd ../generation && go run . Each example pins a released SDK version in `go.mod`: ```go -require github.com/OpenRouterTeam/go-sdk v0.9.74 +require github.com/OpenRouterTeam/go-sdk v0.9.75 ``` This should match the version in [README.md](../README.md) and `.speakeasy/gen.lock` `releaseVersion`. CI runs `scripts/bump-examples.sh` after releases to keep these in sync. @@ -51,7 +51,7 @@ This should match the version in [README.md](../README.md) and `.speakeasy/gen.l To use a different version: ```bash -go get github.com/OpenRouterTeam/go-sdk@v0.9.74 +go get github.com/OpenRouterTeam/go-sdk@v0.9.75 go run . ```