@deeprelay/sdk 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (514) hide show
  1. package/.openapi-generator/FILES +66 -0
  2. package/README.md +47 -11
  3. package/dist/apis/AlertsApi.d.ts +50 -0
  4. package/dist/apis/AlertsApi.js +127 -0
  5. package/dist/apis/ApiKeysApi.d.ts +107 -0
  6. package/dist/apis/ApiKeysApi.js +284 -0
  7. package/dist/apis/BillingApi.d.ts +25 -7
  8. package/dist/apis/BillingApi.js +57 -7
  9. package/dist/apis/InferenceApi.d.ts +12 -1
  10. package/dist/apis/InferenceApi.js +22 -1
  11. package/dist/apis/MetaApi.d.ts +1 -1
  12. package/dist/apis/MetaApi.js +1 -1
  13. package/dist/apis/RequestsApi.d.ts +130 -0
  14. package/dist/apis/RequestsApi.js +269 -0
  15. package/dist/apis/UsageApi.d.ts +15 -1
  16. package/dist/apis/UsageApi.js +19 -2
  17. package/dist/apis/WebhooksApi.d.ts +1 -1
  18. package/dist/apis/WebhooksApi.js +1 -1
  19. package/dist/apis/index.d.ts +3 -0
  20. package/dist/apis/index.js +3 -0
  21. package/dist/esm/apis/AlertsApi.d.ts +50 -0
  22. package/dist/esm/apis/AlertsApi.js +123 -0
  23. package/dist/esm/apis/ApiKeysApi.d.ts +107 -0
  24. package/dist/esm/apis/ApiKeysApi.js +280 -0
  25. package/dist/esm/apis/BillingApi.d.ts +25 -7
  26. package/dist/esm/apis/BillingApi.js +57 -7
  27. package/dist/esm/apis/InferenceApi.d.ts +12 -1
  28. package/dist/esm/apis/InferenceApi.js +22 -1
  29. package/dist/esm/apis/MetaApi.d.ts +1 -1
  30. package/dist/esm/apis/MetaApi.js +1 -1
  31. package/dist/esm/apis/RequestsApi.d.ts +130 -0
  32. package/dist/esm/apis/RequestsApi.js +265 -0
  33. package/dist/esm/apis/UsageApi.d.ts +15 -1
  34. package/dist/esm/apis/UsageApi.js +18 -1
  35. package/dist/esm/apis/WebhooksApi.d.ts +1 -1
  36. package/dist/esm/apis/WebhooksApi.js +1 -1
  37. package/dist/esm/apis/index.d.ts +3 -0
  38. package/dist/esm/apis/index.js +3 -0
  39. package/dist/esm/models/AlertEmailToggles.d.ts +50 -0
  40. package/dist/esm/models/AlertEmailToggles.js +55 -0
  41. package/dist/esm/models/AlertSettings.d.ts +51 -0
  42. package/dist/esm/models/AlertSettings.js +56 -0
  43. package/dist/esm/models/AlertSettingsUpdate.d.ts +39 -0
  44. package/dist/esm/models/AlertSettingsUpdate.js +48 -0
  45. package/dist/esm/models/ApiKey.d.ts +123 -0
  46. package/dist/esm/models/ApiKey.js +96 -0
  47. package/dist/esm/models/ApiKeyCreate.d.ts +70 -0
  48. package/dist/esm/models/ApiKeyCreate.js +57 -0
  49. package/dist/esm/models/ApiKeyCreated.d.ts +129 -0
  50. package/dist/esm/models/ApiKeyCreated.js +100 -0
  51. package/dist/esm/models/ApiKeyList.d.ts +33 -0
  52. package/dist/esm/models/ApiKeyList.js +44 -0
  53. package/dist/esm/models/ApiKeyScopes.d.ts +65 -0
  54. package/dist/esm/models/ApiKeyScopes.js +66 -0
  55. package/dist/esm/models/ApiKeyUpdate.d.ts +62 -0
  56. package/dist/esm/models/ApiKeyUpdate.js +51 -0
  57. package/dist/esm/models/Balance.d.ts +1 -1
  58. package/dist/esm/models/Balance.js +1 -1
  59. package/dist/esm/models/ChatChoice.d.ts +11 -1
  60. package/dist/esm/models/ChatChoice.js +3 -1
  61. package/dist/esm/models/ChatCompletionRequest.d.ts +78 -2
  62. package/dist/esm/models/ChatCompletionRequest.js +26 -1
  63. package/dist/esm/models/ChatCompletionRequestResponseFormat.d.ts +31 -0
  64. package/dist/esm/models/ChatCompletionRequestResponseFormat.js +52 -0
  65. package/dist/esm/models/ChatCompletionRequestToolChoice.d.ts +23 -0
  66. package/dist/esm/models/ChatCompletionRequestToolChoice.js +50 -0
  67. package/dist/esm/models/ChatCompletionResponse.d.ts +1 -1
  68. package/dist/esm/models/ChatCompletionResponse.js +1 -1
  69. package/dist/esm/models/ChatMessage.d.ts +22 -2
  70. package/dist/esm/models/ChatMessage.js +10 -5
  71. package/dist/esm/models/CostDetails.d.ts +59 -0
  72. package/dist/esm/models/CostDetails.js +59 -0
  73. package/dist/esm/models/CreateCryptoDepositRequest.d.ts +4 -1
  74. package/dist/esm/models/CreateCryptoDepositRequest.js +4 -2
  75. package/dist/esm/models/CreateWebhookEndpointRequest.d.ts +5 -1
  76. package/dist/esm/models/CreateWebhookEndpointRequest.js +6 -2
  77. package/dist/esm/models/CryptoDeposit.d.ts +3 -1
  78. package/dist/esm/models/CryptoDeposit.js +4 -2
  79. package/dist/esm/models/Embedding.d.ts +1 -1
  80. package/dist/esm/models/Embedding.js +1 -1
  81. package/dist/esm/models/EmbeddingsRequest.d.ts +1 -1
  82. package/dist/esm/models/EmbeddingsRequest.js +1 -1
  83. package/dist/esm/models/EmbeddingsRequestInput.d.ts +1 -1
  84. package/dist/esm/models/EmbeddingsRequestInput.js +1 -1
  85. package/dist/esm/models/EmbeddingsResponse.d.ts +1 -1
  86. package/dist/esm/models/EmbeddingsResponse.js +1 -1
  87. package/dist/esm/models/EmbeddingsUsage.d.ts +1 -1
  88. package/dist/esm/models/EmbeddingsUsage.js +1 -1
  89. package/dist/esm/models/GetHealth200Response.d.ts +1 -1
  90. package/dist/esm/models/GetHealth200Response.js +1 -1
  91. package/dist/esm/models/ImagesGenerationsRequest.d.ts +2 -2
  92. package/dist/esm/models/ImagesGenerationsRequest.js +1 -1
  93. package/dist/esm/models/ImagesResponse.d.ts +1 -1
  94. package/dist/esm/models/ImagesResponse.js +1 -1
  95. package/dist/esm/models/ImagesResponseDataInner.d.ts +1 -1
  96. package/dist/esm/models/ImagesResponseDataInner.js +1 -1
  97. package/dist/esm/models/ImagesResponseUsage.d.ts +1 -1
  98. package/dist/esm/models/ImagesResponseUsage.js +1 -1
  99. package/dist/esm/models/InferencePreflight.d.ts +5 -2
  100. package/dist/esm/models/InferencePreflight.js +4 -1
  101. package/dist/esm/models/JSONSchemaFormat.d.ts +54 -0
  102. package/dist/esm/models/JSONSchemaFormat.js +49 -0
  103. package/dist/esm/models/ListDeposits200Response.d.ts +1 -1
  104. package/dist/esm/models/ListDeposits200Response.js +1 -1
  105. package/dist/esm/models/Model.d.ts +54 -5
  106. package/dist/esm/models/Model.js +21 -2
  107. package/dist/esm/models/ModelList.d.ts +1 -1
  108. package/dist/esm/models/ModelList.js +1 -1
  109. package/dist/esm/models/ModelMetrics.d.ts +101 -0
  110. package/dist/esm/models/ModelMetrics.js +85 -0
  111. package/dist/esm/models/ModelParametersInner.d.ts +1 -1
  112. package/dist/esm/models/ModelParametersInner.js +1 -1
  113. package/dist/esm/models/ModelPricing.d.ts +1 -1
  114. package/dist/esm/models/ModelPricing.js +1 -1
  115. package/dist/esm/models/ModelRate.d.ts +1 -1
  116. package/dist/esm/models/ModelRate.js +1 -1
  117. package/dist/esm/models/OpenAIErrorEnvelope.d.ts +1 -1
  118. package/dist/esm/models/OpenAIErrorEnvelope.js +1 -1
  119. package/dist/esm/models/OpenAIErrorEnvelopeError.d.ts +8 -2
  120. package/dist/esm/models/OpenAIErrorEnvelopeError.js +3 -1
  121. package/dist/esm/models/PeakWindow.d.ts +1 -1
  122. package/dist/esm/models/PeakWindow.js +1 -1
  123. package/dist/esm/models/Problem.d.ts +22 -1
  124. package/dist/esm/models/Problem.js +14 -1
  125. package/dist/esm/models/RefereeStatus.d.ts +1 -1
  126. package/dist/esm/models/RefereeStatus.js +1 -1
  127. package/dist/esm/models/Referral.d.ts +14 -2
  128. package/dist/esm/models/Referral.js +9 -1
  129. package/dist/esm/models/RequestLogEntry.d.ts +210 -0
  130. package/dist/esm/models/RequestLogEntry.js +129 -0
  131. package/dist/esm/models/RequestLogPage.d.ts +45 -0
  132. package/dist/esm/models/RequestLogPage.js +52 -0
  133. package/dist/esm/models/ResponseFormatJSONObject.d.ts +39 -0
  134. package/dist/esm/models/ResponseFormatJSONObject.js +51 -0
  135. package/dist/esm/models/ResponseFormatJSONSchema.d.ts +46 -0
  136. package/dist/esm/models/ResponseFormatJSONSchema.js +56 -0
  137. package/dist/esm/models/ResponseFormatText.d.ts +39 -0
  138. package/dist/esm/models/ResponseFormatText.js +51 -0
  139. package/dist/esm/models/SpendingLimit.d.ts +1 -1
  140. package/dist/esm/models/SpendingLimit.js +1 -1
  141. package/dist/esm/models/StreamOptions.d.ts +1 -1
  142. package/dist/esm/models/StreamOptions.js +1 -1
  143. package/dist/esm/models/Subscription.d.ts +9 -2
  144. package/dist/esm/models/Subscription.js +6 -1
  145. package/dist/esm/models/SubscriptionCheckoutRequest.d.ts +18 -4
  146. package/dist/esm/models/SubscriptionCheckoutRequest.js +10 -1
  147. package/dist/esm/models/SubscriptionCheckoutSession.d.ts +21 -1
  148. package/dist/esm/models/SubscriptionCheckoutSession.js +12 -1
  149. package/dist/esm/models/SubscriptionModelUsage.d.ts +68 -0
  150. package/dist/esm/models/SubscriptionModelUsage.js +67 -0
  151. package/dist/esm/models/SubscriptionPlan.d.ts +4 -4
  152. package/dist/esm/models/SubscriptionPlan.js +1 -1
  153. package/dist/esm/models/SubscriptionPortalRequest.d.ts +1 -1
  154. package/dist/esm/models/SubscriptionPortalRequest.js +1 -1
  155. package/dist/esm/models/SubscriptionPortalSession.d.ts +1 -1
  156. package/dist/esm/models/SubscriptionPortalSession.js +1 -1
  157. package/dist/esm/models/SubscriptionPrice.d.ts +1 -1
  158. package/dist/esm/models/SubscriptionPrice.js +1 -1
  159. package/dist/esm/models/SubscriptionQuota.d.ts +10 -4
  160. package/dist/esm/models/SubscriptionQuota.js +8 -4
  161. package/dist/esm/models/SubscriptionTier.d.ts +53 -0
  162. package/dist/esm/models/SubscriptionTier.js +55 -0
  163. package/dist/esm/models/SubscriptionUpgradeRequest.d.ts +32 -0
  164. package/dist/esm/models/SubscriptionUpgradeRequest.js +43 -0
  165. package/dist/esm/models/SubscriptionUsage.d.ts +28 -3
  166. package/dist/esm/models/SubscriptionUsage.js +15 -4
  167. package/dist/esm/models/Tool.d.ts +46 -0
  168. package/dist/esm/models/Tool.js +56 -0
  169. package/dist/esm/models/ToolCall.d.ts +60 -0
  170. package/dist/esm/models/ToolCall.js +56 -0
  171. package/dist/esm/models/ToolCallFunction.d.ts +39 -0
  172. package/dist/esm/models/ToolCallFunction.js +47 -0
  173. package/dist/esm/models/ToolChoiceFunction.d.ts +46 -0
  174. package/dist/esm/models/ToolChoiceFunction.js +56 -0
  175. package/dist/esm/models/ToolChoiceFunctionFunction.d.ts +32 -0
  176. package/dist/esm/models/ToolChoiceFunctionFunction.js +43 -0
  177. package/dist/esm/models/ToolFunction.d.ts +47 -0
  178. package/dist/esm/models/ToolFunction.js +47 -0
  179. package/dist/esm/models/UpdateSpendingLimitRequest.d.ts +1 -1
  180. package/dist/esm/models/UpdateSpendingLimitRequest.js +1 -1
  181. package/dist/esm/models/Usage.d.ts +29 -1
  182. package/dist/esm/models/Usage.js +12 -1
  183. package/dist/esm/models/UsageBucket.d.ts +39 -6
  184. package/dist/esm/models/UsageBucket.js +11 -1
  185. package/dist/esm/models/UsageCompletionTokensDetails.d.ts +32 -0
  186. package/dist/esm/models/UsageCompletionTokensDetails.js +41 -0
  187. package/dist/esm/models/UsagePage.d.ts +2 -1
  188. package/dist/esm/models/UsagePage.js +1 -1
  189. package/dist/esm/models/UsagePromptTokensDetails.d.ts +33 -0
  190. package/dist/esm/models/UsagePromptTokensDetails.js +41 -0
  191. package/dist/esm/models/VideoCreateRequest.d.ts +1 -1
  192. package/dist/esm/models/VideoCreateRequest.js +1 -1
  193. package/dist/esm/models/VideoJob.d.ts +1 -1
  194. package/dist/esm/models/VideoJob.js +1 -1
  195. package/dist/esm/models/VideoList.d.ts +1 -1
  196. package/dist/esm/models/VideoList.js +1 -1
  197. package/dist/esm/models/WebhookEndpoint.d.ts +5 -1
  198. package/dist/esm/models/WebhookEndpoint.js +6 -2
  199. package/dist/esm/models/WebhookEndpointPage.d.ts +1 -1
  200. package/dist/esm/models/WebhookEndpointPage.js +1 -1
  201. package/dist/esm/models/index.d.ts +30 -0
  202. package/dist/esm/models/index.js +30 -0
  203. package/dist/esm/runtime.d.ts +1 -1
  204. package/dist/esm/runtime.js +2 -2
  205. package/dist/models/AlertEmailToggles.d.ts +50 -0
  206. package/dist/models/AlertEmailToggles.js +62 -0
  207. package/dist/models/AlertSettings.d.ts +51 -0
  208. package/dist/models/AlertSettings.js +63 -0
  209. package/dist/models/AlertSettingsUpdate.d.ts +39 -0
  210. package/dist/models/AlertSettingsUpdate.js +55 -0
  211. package/dist/models/ApiKey.d.ts +123 -0
  212. package/dist/models/ApiKey.js +103 -0
  213. package/dist/models/ApiKeyCreate.d.ts +70 -0
  214. package/dist/models/ApiKeyCreate.js +64 -0
  215. package/dist/models/ApiKeyCreated.d.ts +129 -0
  216. package/dist/models/ApiKeyCreated.js +107 -0
  217. package/dist/models/ApiKeyList.d.ts +33 -0
  218. package/dist/models/ApiKeyList.js +51 -0
  219. package/dist/models/ApiKeyScopes.d.ts +65 -0
  220. package/dist/models/ApiKeyScopes.js +74 -0
  221. package/dist/models/ApiKeyUpdate.d.ts +62 -0
  222. package/dist/models/ApiKeyUpdate.js +58 -0
  223. package/dist/models/Balance.d.ts +1 -1
  224. package/dist/models/Balance.js +1 -1
  225. package/dist/models/ChatChoice.d.ts +11 -1
  226. package/dist/models/ChatChoice.js +3 -1
  227. package/dist/models/ChatCompletionRequest.d.ts +78 -2
  228. package/dist/models/ChatCompletionRequest.js +26 -1
  229. package/dist/models/ChatCompletionRequestResponseFormat.d.ts +31 -0
  230. package/dist/models/ChatCompletionRequestResponseFormat.js +58 -0
  231. package/dist/models/ChatCompletionRequestToolChoice.d.ts +23 -0
  232. package/dist/models/ChatCompletionRequestToolChoice.js +56 -0
  233. package/dist/models/ChatCompletionResponse.d.ts +1 -1
  234. package/dist/models/ChatCompletionResponse.js +1 -1
  235. package/dist/models/ChatMessage.d.ts +22 -2
  236. package/dist/models/ChatMessage.js +10 -5
  237. package/dist/models/CostDetails.d.ts +59 -0
  238. package/dist/models/CostDetails.js +66 -0
  239. package/dist/models/CreateCryptoDepositRequest.d.ts +4 -1
  240. package/dist/models/CreateCryptoDepositRequest.js +4 -2
  241. package/dist/models/CreateWebhookEndpointRequest.d.ts +5 -1
  242. package/dist/models/CreateWebhookEndpointRequest.js +6 -2
  243. package/dist/models/CryptoDeposit.d.ts +3 -1
  244. package/dist/models/CryptoDeposit.js +4 -2
  245. package/dist/models/Embedding.d.ts +1 -1
  246. package/dist/models/Embedding.js +1 -1
  247. package/dist/models/EmbeddingsRequest.d.ts +1 -1
  248. package/dist/models/EmbeddingsRequest.js +1 -1
  249. package/dist/models/EmbeddingsRequestInput.d.ts +1 -1
  250. package/dist/models/EmbeddingsRequestInput.js +1 -1
  251. package/dist/models/EmbeddingsResponse.d.ts +1 -1
  252. package/dist/models/EmbeddingsResponse.js +1 -1
  253. package/dist/models/EmbeddingsUsage.d.ts +1 -1
  254. package/dist/models/EmbeddingsUsage.js +1 -1
  255. package/dist/models/GetHealth200Response.d.ts +1 -1
  256. package/dist/models/GetHealth200Response.js +1 -1
  257. package/dist/models/ImagesGenerationsRequest.d.ts +2 -2
  258. package/dist/models/ImagesGenerationsRequest.js +1 -1
  259. package/dist/models/ImagesResponse.d.ts +1 -1
  260. package/dist/models/ImagesResponse.js +1 -1
  261. package/dist/models/ImagesResponseDataInner.d.ts +1 -1
  262. package/dist/models/ImagesResponseDataInner.js +1 -1
  263. package/dist/models/ImagesResponseUsage.d.ts +1 -1
  264. package/dist/models/ImagesResponseUsage.js +1 -1
  265. package/dist/models/InferencePreflight.d.ts +5 -2
  266. package/dist/models/InferencePreflight.js +4 -1
  267. package/dist/models/JSONSchemaFormat.d.ts +54 -0
  268. package/dist/models/JSONSchemaFormat.js +56 -0
  269. package/dist/models/ListDeposits200Response.d.ts +1 -1
  270. package/dist/models/ListDeposits200Response.js +1 -1
  271. package/dist/models/Model.d.ts +54 -5
  272. package/dist/models/Model.js +21 -2
  273. package/dist/models/ModelList.d.ts +1 -1
  274. package/dist/models/ModelList.js +1 -1
  275. package/dist/models/ModelMetrics.d.ts +101 -0
  276. package/dist/models/ModelMetrics.js +93 -0
  277. package/dist/models/ModelParametersInner.d.ts +1 -1
  278. package/dist/models/ModelParametersInner.js +1 -1
  279. package/dist/models/ModelPricing.d.ts +1 -1
  280. package/dist/models/ModelPricing.js +1 -1
  281. package/dist/models/ModelRate.d.ts +1 -1
  282. package/dist/models/ModelRate.js +1 -1
  283. package/dist/models/OpenAIErrorEnvelope.d.ts +1 -1
  284. package/dist/models/OpenAIErrorEnvelope.js +1 -1
  285. package/dist/models/OpenAIErrorEnvelopeError.d.ts +8 -2
  286. package/dist/models/OpenAIErrorEnvelopeError.js +3 -1
  287. package/dist/models/PeakWindow.d.ts +1 -1
  288. package/dist/models/PeakWindow.js +1 -1
  289. package/dist/models/Problem.d.ts +22 -1
  290. package/dist/models/Problem.js +14 -1
  291. package/dist/models/RefereeStatus.d.ts +1 -1
  292. package/dist/models/RefereeStatus.js +1 -1
  293. package/dist/models/Referral.d.ts +14 -2
  294. package/dist/models/Referral.js +9 -1
  295. package/dist/models/RequestLogEntry.d.ts +210 -0
  296. package/dist/models/RequestLogEntry.js +137 -0
  297. package/dist/models/RequestLogPage.d.ts +45 -0
  298. package/dist/models/RequestLogPage.js +59 -0
  299. package/dist/models/ResponseFormatJSONObject.d.ts +39 -0
  300. package/dist/models/ResponseFormatJSONObject.js +59 -0
  301. package/dist/models/ResponseFormatJSONSchema.d.ts +46 -0
  302. package/dist/models/ResponseFormatJSONSchema.js +64 -0
  303. package/dist/models/ResponseFormatText.d.ts +39 -0
  304. package/dist/models/ResponseFormatText.js +59 -0
  305. package/dist/models/SpendingLimit.d.ts +1 -1
  306. package/dist/models/SpendingLimit.js +1 -1
  307. package/dist/models/StreamOptions.d.ts +1 -1
  308. package/dist/models/StreamOptions.js +1 -1
  309. package/dist/models/Subscription.d.ts +9 -2
  310. package/dist/models/Subscription.js +6 -1
  311. package/dist/models/SubscriptionCheckoutRequest.d.ts +18 -4
  312. package/dist/models/SubscriptionCheckoutRequest.js +11 -1
  313. package/dist/models/SubscriptionCheckoutSession.d.ts +21 -1
  314. package/dist/models/SubscriptionCheckoutSession.js +13 -1
  315. package/dist/models/SubscriptionModelUsage.d.ts +68 -0
  316. package/dist/models/SubscriptionModelUsage.js +74 -0
  317. package/dist/models/SubscriptionPlan.d.ts +4 -4
  318. package/dist/models/SubscriptionPlan.js +1 -1
  319. package/dist/models/SubscriptionPortalRequest.d.ts +1 -1
  320. package/dist/models/SubscriptionPortalRequest.js +1 -1
  321. package/dist/models/SubscriptionPortalSession.d.ts +1 -1
  322. package/dist/models/SubscriptionPortalSession.js +1 -1
  323. package/dist/models/SubscriptionPrice.d.ts +1 -1
  324. package/dist/models/SubscriptionPrice.js +1 -1
  325. package/dist/models/SubscriptionQuota.d.ts +10 -4
  326. package/dist/models/SubscriptionQuota.js +8 -4
  327. package/dist/models/SubscriptionTier.d.ts +53 -0
  328. package/dist/models/SubscriptionTier.js +62 -0
  329. package/dist/models/SubscriptionUpgradeRequest.d.ts +32 -0
  330. package/dist/models/SubscriptionUpgradeRequest.js +50 -0
  331. package/dist/models/SubscriptionUsage.d.ts +28 -3
  332. package/dist/models/SubscriptionUsage.js +15 -4
  333. package/dist/models/Tool.d.ts +46 -0
  334. package/dist/models/Tool.js +64 -0
  335. package/dist/models/ToolCall.d.ts +60 -0
  336. package/dist/models/ToolCall.js +64 -0
  337. package/dist/models/ToolCallFunction.d.ts +39 -0
  338. package/dist/models/ToolCallFunction.js +54 -0
  339. package/dist/models/ToolChoiceFunction.d.ts +46 -0
  340. package/dist/models/ToolChoiceFunction.js +64 -0
  341. package/dist/models/ToolChoiceFunctionFunction.d.ts +32 -0
  342. package/dist/models/ToolChoiceFunctionFunction.js +50 -0
  343. package/dist/models/ToolFunction.d.ts +47 -0
  344. package/dist/models/ToolFunction.js +54 -0
  345. package/dist/models/UpdateSpendingLimitRequest.d.ts +1 -1
  346. package/dist/models/UpdateSpendingLimitRequest.js +1 -1
  347. package/dist/models/Usage.d.ts +29 -1
  348. package/dist/models/Usage.js +12 -1
  349. package/dist/models/UsageBucket.d.ts +39 -6
  350. package/dist/models/UsageBucket.js +11 -1
  351. package/dist/models/UsageCompletionTokensDetails.d.ts +32 -0
  352. package/dist/models/UsageCompletionTokensDetails.js +48 -0
  353. package/dist/models/UsagePage.d.ts +2 -1
  354. package/dist/models/UsagePage.js +1 -1
  355. package/dist/models/UsagePromptTokensDetails.d.ts +33 -0
  356. package/dist/models/UsagePromptTokensDetails.js +48 -0
  357. package/dist/models/VideoCreateRequest.d.ts +1 -1
  358. package/dist/models/VideoCreateRequest.js +1 -1
  359. package/dist/models/VideoJob.d.ts +1 -1
  360. package/dist/models/VideoJob.js +1 -1
  361. package/dist/models/VideoList.d.ts +1 -1
  362. package/dist/models/VideoList.js +1 -1
  363. package/dist/models/WebhookEndpoint.d.ts +5 -1
  364. package/dist/models/WebhookEndpoint.js +6 -2
  365. package/dist/models/WebhookEndpointPage.d.ts +1 -1
  366. package/dist/models/WebhookEndpointPage.js +1 -1
  367. package/dist/models/index.d.ts +30 -0
  368. package/dist/models/index.js +30 -0
  369. package/dist/runtime.d.ts +1 -1
  370. package/dist/runtime.js +2 -2
  371. package/docs/AlertEmailToggles.md +40 -0
  372. package/docs/AlertSettings.md +40 -0
  373. package/docs/AlertSettingsUpdate.md +36 -0
  374. package/docs/AlertsApi.md +151 -0
  375. package/docs/ApiKey.md +65 -0
  376. package/docs/ApiKeyCreate.md +46 -0
  377. package/docs/ApiKeyCreated.md +67 -0
  378. package/docs/ApiKeyList.md +34 -0
  379. package/docs/ApiKeyScopes.md +38 -0
  380. package/docs/ApiKeyUpdate.md +45 -0
  381. package/docs/ApiKeysApi.md +389 -0
  382. package/docs/BillingApi.md +83 -3
  383. package/docs/ChatChoice.md +2 -0
  384. package/docs/ChatCompletionRequest.md +22 -0
  385. package/docs/ChatCompletionRequestResponseFormat.md +37 -0
  386. package/docs/ChatCompletionRequestToolChoice.md +37 -0
  387. package/docs/ChatMessage.md +4 -0
  388. package/docs/CostDetails.md +43 -0
  389. package/docs/InferenceApi.md +94 -71
  390. package/docs/JSONSchemaFormat.md +41 -0
  391. package/docs/Model.md +16 -0
  392. package/docs/ModelMetrics.md +55 -0
  393. package/docs/OpenAIErrorEnvelopeError.md +2 -0
  394. package/docs/Problem.md +4 -0
  395. package/docs/Referral.md +6 -2
  396. package/docs/RequestLogEntry.md +87 -0
  397. package/docs/RequestLogPage.md +38 -0
  398. package/docs/RequestsApi.md +282 -0
  399. package/docs/ResponseFormatJSONObject.md +35 -0
  400. package/docs/ResponseFormatJSONSchema.md +36 -0
  401. package/docs/ResponseFormatText.md +34 -0
  402. package/docs/Subscription.md +3 -1
  403. package/docs/SubscriptionCheckoutRequest.md +2 -0
  404. package/docs/SubscriptionCheckoutSession.md +4 -0
  405. package/docs/SubscriptionModelUsage.md +47 -0
  406. package/docs/SubscriptionPlan.md +1 -1
  407. package/docs/SubscriptionQuota.md +5 -3
  408. package/docs/SubscriptionTier.md +41 -0
  409. package/docs/SubscriptionUpgradeRequest.md +34 -0
  410. package/docs/SubscriptionUsage.md +10 -2
  411. package/docs/Tool.md +36 -0
  412. package/docs/ToolCall.md +41 -0
  413. package/docs/ToolCallFunction.md +36 -0
  414. package/docs/ToolChoiceFunction.md +36 -0
  415. package/docs/ToolChoiceFunctionFunction.md +34 -0
  416. package/docs/ToolFunction.md +38 -0
  417. package/docs/Usage.md +8 -0
  418. package/docs/UsageApi.md +17 -9
  419. package/docs/UsageBucket.md +11 -0
  420. package/docs/UsageCompletionTokensDetails.md +34 -0
  421. package/docs/UsagePromptTokensDetails.md +35 -0
  422. package/package.json +1 -1
  423. package/src/apis/AlertsApi.ts +145 -0
  424. package/src/apis/ApiKeysApi.ts +357 -0
  425. package/src/apis/BillingApi.ts +73 -7
  426. package/src/apis/InferenceApi.ts +32 -1
  427. package/src/apis/MetaApi.ts +1 -1
  428. package/src/apis/RequestsApi.ts +335 -0
  429. package/src/apis/UsageApi.ts +23 -1
  430. package/src/apis/WebhooksApi.ts +1 -1
  431. package/src/apis/index.ts +3 -0
  432. package/src/models/AlertEmailToggles.ts +93 -0
  433. package/src/models/AlertSettings.ts +101 -0
  434. package/src/models/AlertSettingsUpdate.ts +83 -0
  435. package/src/models/ApiKey.ts +205 -0
  436. package/src/models/ApiKeyCreate.ts +115 -0
  437. package/src/models/ApiKeyCreated.ts +214 -0
  438. package/src/models/ApiKeyList.ts +74 -0
  439. package/src/models/ApiKeyScopes.ts +106 -0
  440. package/src/models/ApiKeyUpdate.ts +105 -0
  441. package/src/models/Balance.ts +1 -1
  442. package/src/models/ChatChoice.ts +11 -1
  443. package/src/models/ChatCompletionRequest.ts +118 -2
  444. package/src/models/ChatCompletionRequestResponseFormat.ts +84 -0
  445. package/src/models/ChatCompletionRequestToolChoice.ts +70 -0
  446. package/src/models/ChatCompletionResponse.ts +1 -1
  447. package/src/models/ChatMessage.ts +35 -5
  448. package/src/models/CostDetails.ts +105 -0
  449. package/src/models/CreateCryptoDepositRequest.ts +5 -2
  450. package/src/models/CreateWebhookEndpointRequest.ts +6 -2
  451. package/src/models/CryptoDeposit.ts +4 -2
  452. package/src/models/Embedding.ts +1 -1
  453. package/src/models/EmbeddingsRequest.ts +1 -1
  454. package/src/models/EmbeddingsRequestInput.ts +1 -1
  455. package/src/models/EmbeddingsResponse.ts +1 -1
  456. package/src/models/EmbeddingsUsage.ts +1 -1
  457. package/src/models/GetHealth200Response.ts +1 -1
  458. package/src/models/ImagesGenerationsRequest.ts +2 -2
  459. package/src/models/ImagesResponse.ts +1 -1
  460. package/src/models/ImagesResponseDataInner.ts +1 -1
  461. package/src/models/ImagesResponseUsage.ts +1 -1
  462. package/src/models/InferencePreflight.ts +5 -2
  463. package/src/models/JSONSchemaFormat.ts +92 -0
  464. package/src/models/ListDeposits200Response.ts +1 -1
  465. package/src/models/Model.ts +78 -6
  466. package/src/models/ModelList.ts +1 -1
  467. package/src/models/ModelMetrics.ts +165 -0
  468. package/src/models/ModelParametersInner.ts +1 -1
  469. package/src/models/ModelPricing.ts +1 -1
  470. package/src/models/ModelRate.ts +1 -1
  471. package/src/models/OpenAIErrorEnvelope.ts +1 -1
  472. package/src/models/OpenAIErrorEnvelopeError.ts +10 -2
  473. package/src/models/PeakWindow.ts +1 -1
  474. package/src/models/Problem.ts +26 -1
  475. package/src/models/RefereeStatus.ts +1 -1
  476. package/src/models/Referral.ts +20 -2
  477. package/src/models/RequestLogEntry.ts +307 -0
  478. package/src/models/RequestLogPage.ts +92 -0
  479. package/src/models/ResponseFormatJSONObject.ts +78 -0
  480. package/src/models/ResponseFormatJSONSchema.ts +95 -0
  481. package/src/models/ResponseFormatText.ts +78 -0
  482. package/src/models/SpendingLimit.ts +1 -1
  483. package/src/models/StreamOptions.ts +1 -1
  484. package/src/models/Subscription.ts +18 -2
  485. package/src/models/SubscriptionCheckoutRequest.ts +23 -4
  486. package/src/models/SubscriptionCheckoutSession.ts +28 -1
  487. package/src/models/SubscriptionModelUsage.ts +120 -0
  488. package/src/models/SubscriptionPlan.ts +4 -4
  489. package/src/models/SubscriptionPortalRequest.ts +1 -1
  490. package/src/models/SubscriptionPortalSession.ts +1 -1
  491. package/src/models/SubscriptionPrice.ts +1 -1
  492. package/src/models/SubscriptionQuota.ts +16 -7
  493. package/src/models/SubscriptionTier.ts +108 -0
  494. package/src/models/SubscriptionUpgradeRequest.ts +66 -0
  495. package/src/models/SubscriptionUsage.ts +47 -6
  496. package/src/models/Tool.ts +95 -0
  497. package/src/models/ToolCall.ts +110 -0
  498. package/src/models/ToolCallFunction.ts +76 -0
  499. package/src/models/ToolChoiceFunction.ts +95 -0
  500. package/src/models/ToolChoiceFunctionFunction.ts +66 -0
  501. package/src/models/ToolFunction.ts +83 -0
  502. package/src/models/UpdateSpendingLimitRequest.ts +1 -1
  503. package/src/models/Usage.ts +56 -1
  504. package/src/models/UsageBucket.ts +49 -6
  505. package/src/models/UsageCompletionTokensDetails.ts +65 -0
  506. package/src/models/UsagePage.ts +2 -1
  507. package/src/models/UsagePromptTokensDetails.ts +66 -0
  508. package/src/models/VideoCreateRequest.ts +1 -1
  509. package/src/models/VideoJob.ts +1 -1
  510. package/src/models/VideoList.ts +1 -1
  511. package/src/models/WebhookEndpoint.ts +6 -2
  512. package/src/models/WebhookEndpointPage.ts +1 -1
  513. package/src/models/index.ts +30 -0
  514. package/src/runtime.ts +2 -2
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * deeprelay Public Developer API
3
- * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details.
3
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
4
4
  *
5
5
  * The version of the OpenAPI document: 1.0.0
6
6
  * Contact: support@deeprelay.ai
@@ -27,17 +27,21 @@ export interface CancelVideoRequest {
27
27
  }
28
28
  export interface CreateChatCompletionRequest {
29
29
  chatCompletionRequest: ChatCompletionRequest;
30
+ xClientRequestId?: string;
30
31
  }
31
32
  export interface CreateEmbeddingsRequest {
32
33
  embeddingsRequest: EmbeddingsRequest;
34
+ xClientRequestId?: string;
33
35
  }
34
36
  export interface CreateImageRequest {
35
37
  imagesGenerationsRequest: ImagesGenerationsRequest;
36
38
  idempotencyKey?: string;
39
+ xClientRequestId?: string;
37
40
  }
38
41
  export interface CreateVideoRequest {
39
42
  videoCreateRequest: VideoCreateRequest;
40
43
  idempotencyKey?: string;
44
+ xClientRequestId?: string;
41
45
  }
42
46
  export interface GetModelRequest {
43
47
  id: string;
@@ -53,6 +57,7 @@ export interface InferencePreflightRequest {
53
57
  }
54
58
  export interface ListModelsRequest {
55
59
  modality?: ListModelsModalityEnum;
60
+ ifNoneMatch?: string;
56
61
  }
57
62
  export interface ListVideosRequest {
58
63
  after?: string;
@@ -79,10 +84,12 @@ export declare class InferenceApi extends runtime.BaseAPI {
79
84
  */
80
85
  createChatCompletionRequestOpts(requestParameters: CreateChatCompletionRequest): Promise<runtime.RequestOpts>;
81
86
  /**
87
+ * OpenAI-compatible chat completion. Parameters fall into three groups: - **Semantic parameters are gated per model.** `response_format`, `tools`/`tool_choice`, `logprobs`/`top_logprobs` and `image_url` content parts are sent only to a model whose `/v1/models` entry lists the capability in `supported_parameters` (`vision` for images). A model without it returns 400 `unsupported_parameter` whose message names the models that do support it. When the model supports the parameter but none of its currently routable upstreams does, the request fails with 503 `upstream_unavailable` rather than being silently degraded. - **Hints are forwarded or dropped, never rejected.** `reasoning_effort`, `presence_penalty`, `frequency_penalty`, `seed` and `parallel_tool_calls` are forwarded to an upstream that accepts them and otherwise dropped. Every drop is reported in the `x-deeprelay-ignored-params` response header. - **Rejected everywhere.** `logit_bias` and `function_call` return 400 `unsupported_parameter`; `input_audio` and `file` content parts return 400 `unsupported_content_part`. A non-strict `json_schema` sent to a model that can only guarantee JSON is served as `json_object` and reported as `response_format:downgraded`; a strict one is rejected. A `json_schema` over 64 KiB or nested deeper than 32 levels returns 400 `unsupported_parameter` (param `response_format`). An upstream rejection of a request the relay accepted returns 400 `upstream_rejected_request`. A non-chat model id returns 404 `model_not_found`. The request body is capped at 32 MiB (413 `request_too_large`). Every successful response carries `usage.cost` and `usage.cost_details` (on a stream, only in the final usage chunk). See https://deeprelay.ai/docs/api/inference#openai-compatibility.
82
88
  * Create a chat completion (OpenAI-compatible)
83
89
  */
84
90
  createChatCompletionRaw(requestParameters: CreateChatCompletionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ChatCompletionResponse>>;
85
91
  /**
92
+ * OpenAI-compatible chat completion. Parameters fall into three groups: - **Semantic parameters are gated per model.** `response_format`, `tools`/`tool_choice`, `logprobs`/`top_logprobs` and `image_url` content parts are sent only to a model whose `/v1/models` entry lists the capability in `supported_parameters` (`vision` for images). A model without it returns 400 `unsupported_parameter` whose message names the models that do support it. When the model supports the parameter but none of its currently routable upstreams does, the request fails with 503 `upstream_unavailable` rather than being silently degraded. - **Hints are forwarded or dropped, never rejected.** `reasoning_effort`, `presence_penalty`, `frequency_penalty`, `seed` and `parallel_tool_calls` are forwarded to an upstream that accepts them and otherwise dropped. Every drop is reported in the `x-deeprelay-ignored-params` response header. - **Rejected everywhere.** `logit_bias` and `function_call` return 400 `unsupported_parameter`; `input_audio` and `file` content parts return 400 `unsupported_content_part`. A non-strict `json_schema` sent to a model that can only guarantee JSON is served as `json_object` and reported as `response_format:downgraded`; a strict one is rejected. A `json_schema` over 64 KiB or nested deeper than 32 levels returns 400 `unsupported_parameter` (param `response_format`). An upstream rejection of a request the relay accepted returns 400 `upstream_rejected_request`. A non-chat model id returns 404 `model_not_found`. The request body is capped at 32 MiB (413 `request_too_large`). Every successful response carries `usage.cost` and `usage.cost_details` (on a stream, only in the final usage chunk). See https://deeprelay.ai/docs/api/inference#openai-compatibility.
86
93
  * Create a chat completion (OpenAI-compatible)
87
94
  */
88
95
  createChatCompletion(requestParameters: CreateChatCompletionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ChatCompletionResponse>;
@@ -133,10 +140,12 @@ export declare class InferenceApi extends runtime.BaseAPI {
133
140
  */
134
141
  getModelRequestOpts(requestParameters: GetModelRequest): Promise<runtime.RequestOpts>;
135
142
  /**
143
+ * A key with a model allowlist gets 403 `model_not_allowed_for_key` for a model off its list, and the same 403 for an id that does not exist.
136
144
  * Get a specific model (OpenAI-compatible)
137
145
  */
138
146
  getModelRaw(requestParameters: GetModelRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Model>>;
139
147
  /**
148
+ * A key with a model allowlist gets 403 `model_not_allowed_for_key` for a model off its list, and the same 403 for an id that does not exist.
140
149
  * Get a specific model (OpenAI-compatible)
141
150
  */
142
151
  getModel(requestParameters: GetModelRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Model>;
@@ -185,10 +194,12 @@ export declare class InferenceApi extends runtime.BaseAPI {
185
194
  */
186
195
  listModelsRequestOpts(requestParameters: ListModelsRequest): Promise<runtime.RequestOpts>;
187
196
  /**
197
+ * Works with or without an API key, and returns the same body either way. Without a key the response is publicly cacheable (`Cache-Control: public, max-age=60`), carries a strong `ETag` (send `If-None-Match` to get a 304), and is rate-limited per client IP (429 `rate_limit_exceeded` with Retry-After). With a key it is `Cache-Control: private` and counts against the key\'s rate limit; an invalid key returns 401, it does not fall back to anonymous access. Error responses are `no-store`. Each entry\'s `supported_parameters` is backed by live capability probes of the model\'s upstreams: it is the list to check before sending a gated parameter (`response_format`, `structured_outputs`, `logprobs`, `tools`, `vision`, ...). One exception to \"the same body\": a key with a model allowlist (`allowed_models`) sees only the models on its list. Each entry may carry a `metrics` object (always the last key): measured time to first token, decode rate and success rate over a rolling window of deeprelay customer traffic. Below the sample minimum `insufficient_data` is true and the figure is omitted, never zero.
188
198
  * List available models (OpenAI-compatible)
189
199
  */
190
200
  listModelsRaw(requestParameters: ListModelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ModelList>>;
191
201
  /**
202
+ * Works with or without an API key, and returns the same body either way. Without a key the response is publicly cacheable (`Cache-Control: public, max-age=60`), carries a strong `ETag` (send `If-None-Match` to get a 304), and is rate-limited per client IP (429 `rate_limit_exceeded` with Retry-After). With a key it is `Cache-Control: private` and counts against the key\'s rate limit; an invalid key returns 401, it does not fall back to anonymous access. Error responses are `no-store`. Each entry\'s `supported_parameters` is backed by live capability probes of the model\'s upstreams: it is the list to check before sending a gated parameter (`response_format`, `structured_outputs`, `logprobs`, `tools`, `vision`, ...). One exception to \"the same body\": a key with a model allowlist (`allowed_models`) sees only the models on its list. Each entry may carry a `metrics` object (always the last key): measured time to first token, decode rate and success rate over a rolling window of deeprelay customer traffic. Below the sample minimum `insufficient_data` is true and the figure is omitted, never zero.
192
203
  * List available models (OpenAI-compatible)
193
204
  */
194
205
  listModels(requestParameters?: ListModelsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ModelList>;
@@ -2,7 +2,7 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * deeprelay Public Developer API
5
- * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details.
5
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0.0
8
8
  * Contact: support@deeprelay.ai
@@ -94,6 +94,9 @@ export class InferenceApi extends runtime.BaseAPI {
94
94
  const queryParameters = {};
95
95
  const headerParameters = {};
96
96
  headerParameters['Content-Type'] = 'application/json';
97
+ if (requestParameters['xClientRequestId'] != null) {
98
+ headerParameters['X-Client-Request-Id'] = String(requestParameters['xClientRequestId']);
99
+ }
97
100
  if (this.configuration && this.configuration.accessToken) {
98
101
  const token = this.configuration.accessToken;
99
102
  const tokenString = yield token("bearerAuth", []);
@@ -112,6 +115,7 @@ export class InferenceApi extends runtime.BaseAPI {
112
115
  });
113
116
  }
114
117
  /**
118
+ * OpenAI-compatible chat completion. Parameters fall into three groups: - **Semantic parameters are gated per model.** `response_format`, `tools`/`tool_choice`, `logprobs`/`top_logprobs` and `image_url` content parts are sent only to a model whose `/v1/models` entry lists the capability in `supported_parameters` (`vision` for images). A model without it returns 400 `unsupported_parameter` whose message names the models that do support it. When the model supports the parameter but none of its currently routable upstreams does, the request fails with 503 `upstream_unavailable` rather than being silently degraded. - **Hints are forwarded or dropped, never rejected.** `reasoning_effort`, `presence_penalty`, `frequency_penalty`, `seed` and `parallel_tool_calls` are forwarded to an upstream that accepts them and otherwise dropped. Every drop is reported in the `x-deeprelay-ignored-params` response header. - **Rejected everywhere.** `logit_bias` and `function_call` return 400 `unsupported_parameter`; `input_audio` and `file` content parts return 400 `unsupported_content_part`. A non-strict `json_schema` sent to a model that can only guarantee JSON is served as `json_object` and reported as `response_format:downgraded`; a strict one is rejected. A `json_schema` over 64 KiB or nested deeper than 32 levels returns 400 `unsupported_parameter` (param `response_format`). An upstream rejection of a request the relay accepted returns 400 `upstream_rejected_request`. A non-chat model id returns 404 `model_not_found`. The request body is capped at 32 MiB (413 `request_too_large`). Every successful response carries `usage.cost` and `usage.cost_details` (on a stream, only in the final usage chunk). See https://deeprelay.ai/docs/api/inference#openai-compatibility.
115
119
  * Create a chat completion (OpenAI-compatible)
116
120
  */
117
121
  createChatCompletionRaw(requestParameters, initOverrides) {
@@ -122,6 +126,7 @@ export class InferenceApi extends runtime.BaseAPI {
122
126
  });
123
127
  }
124
128
  /**
129
+ * OpenAI-compatible chat completion. Parameters fall into three groups: - **Semantic parameters are gated per model.** `response_format`, `tools`/`tool_choice`, `logprobs`/`top_logprobs` and `image_url` content parts are sent only to a model whose `/v1/models` entry lists the capability in `supported_parameters` (`vision` for images). A model without it returns 400 `unsupported_parameter` whose message names the models that do support it. When the model supports the parameter but none of its currently routable upstreams does, the request fails with 503 `upstream_unavailable` rather than being silently degraded. - **Hints are forwarded or dropped, never rejected.** `reasoning_effort`, `presence_penalty`, `frequency_penalty`, `seed` and `parallel_tool_calls` are forwarded to an upstream that accepts them and otherwise dropped. Every drop is reported in the `x-deeprelay-ignored-params` response header. - **Rejected everywhere.** `logit_bias` and `function_call` return 400 `unsupported_parameter`; `input_audio` and `file` content parts return 400 `unsupported_content_part`. A non-strict `json_schema` sent to a model that can only guarantee JSON is served as `json_object` and reported as `response_format:downgraded`; a strict one is rejected. A `json_schema` over 64 KiB or nested deeper than 32 levels returns 400 `unsupported_parameter` (param `response_format`). An upstream rejection of a request the relay accepted returns 400 `upstream_rejected_request`. A non-chat model id returns 404 `model_not_found`. The request body is capped at 32 MiB (413 `request_too_large`). Every successful response carries `usage.cost` and `usage.cost_details` (on a stream, only in the final usage chunk). See https://deeprelay.ai/docs/api/inference#openai-compatibility.
125
130
  * Create a chat completion (OpenAI-compatible)
126
131
  */
127
132
  createChatCompletion(requestParameters, initOverrides) {
@@ -141,6 +146,9 @@ export class InferenceApi extends runtime.BaseAPI {
141
146
  const queryParameters = {};
142
147
  const headerParameters = {};
143
148
  headerParameters['Content-Type'] = 'application/json';
149
+ if (requestParameters['xClientRequestId'] != null) {
150
+ headerParameters['X-Client-Request-Id'] = String(requestParameters['xClientRequestId']);
151
+ }
144
152
  if (this.configuration && this.configuration.accessToken) {
145
153
  const token = this.configuration.accessToken;
146
154
  const tokenString = yield token("bearerAuth", []);
@@ -193,6 +201,9 @@ export class InferenceApi extends runtime.BaseAPI {
193
201
  if (requestParameters['idempotencyKey'] != null) {
194
202
  headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
195
203
  }
204
+ if (requestParameters['xClientRequestId'] != null) {
205
+ headerParameters['X-Client-Request-Id'] = String(requestParameters['xClientRequestId']);
206
+ }
196
207
  if (this.configuration && this.configuration.accessToken) {
197
208
  const token = this.configuration.accessToken;
198
209
  const tokenString = yield token("bearerAuth", []);
@@ -245,6 +256,9 @@ export class InferenceApi extends runtime.BaseAPI {
245
256
  if (requestParameters['idempotencyKey'] != null) {
246
257
  headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
247
258
  }
259
+ if (requestParameters['xClientRequestId'] != null) {
260
+ headerParameters['X-Client-Request-Id'] = String(requestParameters['xClientRequestId']);
261
+ }
248
262
  if (this.configuration && this.configuration.accessToken) {
249
263
  const token = this.configuration.accessToken;
250
264
  const tokenString = yield token("bearerAuth", []);
@@ -311,6 +325,7 @@ export class InferenceApi extends runtime.BaseAPI {
311
325
  });
312
326
  }
313
327
  /**
328
+ * A key with a model allowlist gets 403 `model_not_allowed_for_key` for a model off its list, and the same 403 for an id that does not exist.
314
329
  * Get a specific model (OpenAI-compatible)
315
330
  */
316
331
  getModelRaw(requestParameters, initOverrides) {
@@ -321,6 +336,7 @@ export class InferenceApi extends runtime.BaseAPI {
321
336
  });
322
337
  }
323
338
  /**
339
+ * A key with a model allowlist gets 403 `model_not_allowed_for_key` for a model off its list, and the same 403 for an id that does not exist.
324
340
  * Get a specific model (OpenAI-compatible)
325
341
  */
326
342
  getModel(requestParameters, initOverrides) {
@@ -483,6 +499,9 @@ export class InferenceApi extends runtime.BaseAPI {
483
499
  queryParameters['modality'] = requestParameters['modality'];
484
500
  }
485
501
  const headerParameters = {};
502
+ if (requestParameters['ifNoneMatch'] != null) {
503
+ headerParameters['If-None-Match'] = String(requestParameters['ifNoneMatch']);
504
+ }
486
505
  if (this.configuration && this.configuration.accessToken) {
487
506
  const token = this.configuration.accessToken;
488
507
  const tokenString = yield token("bearerAuth", []);
@@ -500,6 +519,7 @@ export class InferenceApi extends runtime.BaseAPI {
500
519
  });
501
520
  }
502
521
  /**
522
+ * Works with or without an API key, and returns the same body either way. Without a key the response is publicly cacheable (`Cache-Control: public, max-age=60`), carries a strong `ETag` (send `If-None-Match` to get a 304), and is rate-limited per client IP (429 `rate_limit_exceeded` with Retry-After). With a key it is `Cache-Control: private` and counts against the key\'s rate limit; an invalid key returns 401, it does not fall back to anonymous access. Error responses are `no-store`. Each entry\'s `supported_parameters` is backed by live capability probes of the model\'s upstreams: it is the list to check before sending a gated parameter (`response_format`, `structured_outputs`, `logprobs`, `tools`, `vision`, ...). One exception to \"the same body\": a key with a model allowlist (`allowed_models`) sees only the models on its list. Each entry may carry a `metrics` object (always the last key): measured time to first token, decode rate and success rate over a rolling window of deeprelay customer traffic. Below the sample minimum `insufficient_data` is true and the figure is omitted, never zero.
503
523
  * List available models (OpenAI-compatible)
504
524
  */
505
525
  listModelsRaw(requestParameters, initOverrides) {
@@ -510,6 +530,7 @@ export class InferenceApi extends runtime.BaseAPI {
510
530
  });
511
531
  }
512
532
  /**
533
+ * Works with or without an API key, and returns the same body either way. Without a key the response is publicly cacheable (`Cache-Control: public, max-age=60`), carries a strong `ETag` (send `If-None-Match` to get a 304), and is rate-limited per client IP (429 `rate_limit_exceeded` with Retry-After). With a key it is `Cache-Control: private` and counts against the key\'s rate limit; an invalid key returns 401, it does not fall back to anonymous access. Error responses are `no-store`. Each entry\'s `supported_parameters` is backed by live capability probes of the model\'s upstreams: it is the list to check before sending a gated parameter (`response_format`, `structured_outputs`, `logprobs`, `tools`, `vision`, ...). One exception to \"the same body\": a key with a model allowlist (`allowed_models`) sees only the models on its list. Each entry may carry a `metrics` object (always the last key): measured time to first token, decode rate and success rate over a rolling window of deeprelay customer traffic. Below the sample minimum `insufficient_data` is true and the figure is omitted, never zero.
513
534
  * List available models (OpenAI-compatible)
514
535
  */
515
536
  listModels() {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * deeprelay Public Developer API
3
- * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details.
3
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
4
4
  *
5
5
  * The version of the OpenAPI document: 1.0.0
6
6
  * Contact: support@deeprelay.ai
@@ -2,7 +2,7 @@
2
2
  /* eslint-disable */
3
3
  /**
4
4
  * deeprelay Public Developer API
5
- * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details.
5
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
6
6
  *
7
7
  * The version of the OpenAPI document: 1.0.0
8
8
  * Contact: support@deeprelay.ai
@@ -0,0 +1,130 @@
1
+ /**
2
+ * deeprelay Public Developer API
3
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@deeprelay.ai
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import * as runtime from '../runtime';
13
+ import { type RequestLogEntry } from '../models/RequestLogEntry';
14
+ import { type RequestLogPage } from '../models/RequestLogPage';
15
+ export interface ExportRequestsRequest {
16
+ key?: string;
17
+ model?: string;
18
+ surface?: ExportRequestsSurfaceEnum;
19
+ status?: ExportRequestsStatusEnum;
20
+ errorCode?: string;
21
+ clientRequestId?: string;
22
+ from?: Date;
23
+ to?: Date;
24
+ }
25
+ export interface GetRequestRequest {
26
+ id: string;
27
+ }
28
+ export interface ListRequestsRequest {
29
+ key?: string;
30
+ model?: string;
31
+ surface?: ListRequestsSurfaceEnum;
32
+ status?: ListRequestsStatusEnum;
33
+ errorCode?: string;
34
+ clientRequestId?: string;
35
+ from?: Date;
36
+ to?: Date;
37
+ cursor?: string;
38
+ limit?: number;
39
+ }
40
+ /**
41
+ *
42
+ */
43
+ export declare class RequestsApi extends runtime.BaseAPI {
44
+ /**
45
+ * Creates request options for exportRequests without sending the request
46
+ */
47
+ exportRequestsRequestOpts(requestParameters: ExportRequestsRequest): Promise<runtime.RequestOpts>;
48
+ /**
49
+ * Streams every request-log row matching the filters as a CSV attachment, oldest columns first: `request_id, client_request_id, occurred_at, surface, model, key_id, key_name, key_prefix, status, http_status, error_code, finish_reason, prompt_tokens, completion_tokens, cached_tokens, reasoning_tokens, quota_units, cost, plan_covered, ttft_ms, duration_ms, ignored_params`. Takes the same filters and visibility rules as `GET /requests`, without the cursor and limit. The export is counted before anything is written. When the filters match more rows than the export cap, the answer is 422 `export_too_large` and the problem body carries `max_rows`; narrow the time range or add a filter, then export again. Requires the `serverless:read` scope. Exports have their own, tighter per-key rate limit.
50
+ * Export the request log as CSV
51
+ */
52
+ exportRequestsRaw(requestParameters: ExportRequestsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<string>>;
53
+ /**
54
+ * Streams every request-log row matching the filters as a CSV attachment, oldest columns first: `request_id, client_request_id, occurred_at, surface, model, key_id, key_name, key_prefix, status, http_status, error_code, finish_reason, prompt_tokens, completion_tokens, cached_tokens, reasoning_tokens, quota_units, cost, plan_covered, ttft_ms, duration_ms, ignored_params`. Takes the same filters and visibility rules as `GET /requests`, without the cursor and limit. The export is counted before anything is written. When the filters match more rows than the export cap, the answer is 422 `export_too_large` and the problem body carries `max_rows`; narrow the time range or add a filter, then export again. Requires the `serverless:read` scope. Exports have their own, tighter per-key rate limit.
55
+ * Export the request log as CSV
56
+ */
57
+ exportRequests(requestParameters?: ExportRequestsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<string>;
58
+ /**
59
+ * Creates request options for getRequest without sending the request
60
+ */
61
+ getRequestRequestOpts(requestParameters: GetRequestRequest): Promise<runtime.RequestOpts>;
62
+ /**
63
+ * Returns one request-log row. An unknown id, an id older than 90 days and an id the caller cannot see all answer the same 404. Requires the `serverless:read` scope.
64
+ * Get one request
65
+ */
66
+ getRequestRaw(requestParameters: GetRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RequestLogEntry>>;
67
+ /**
68
+ * Returns one request-log row. An unknown id, an id older than 90 days and an id the caller cannot see all answer the same 404. Requires the `serverless:read` scope.
69
+ * Get one request
70
+ */
71
+ getRequest(requestParameters: GetRequestRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RequestLogEntry>;
72
+ /**
73
+ * Creates request options for listRequests without sending the request
74
+ */
75
+ listRequestsRequestOpts(requestParameters: ListRequestsRequest): Promise<runtime.RequestOpts>;
76
+ /**
77
+ * Returns one newest-first page of the organization\'s inference request log: one row per call to chat completions, messages, responses, embeddings, image generation or video creation, including calls that were refused before they reached a model (`status: rejected`). Rows are kept for 90 days; `window_days` says how far back the log reaches, and a `from` older than that is clamped rather than rejected. Visibility follows the caller. An org admin\'s key and a `full_access` key see the whole organization; any other key sees only its own rows. A `key` filter naming a key the caller cannot see returns an empty page. A row never carries prompt or completion content. `client_request_id` is the value the caller sent in `X-Client-Request-Id` (or `metadata.client_request_id` on `/responses`), kept for correlation. Requires the `serverless:read` scope. Reads are rate-limited per key (429 `rate_limited` with Retry-After).
78
+ * List requests (the request log)
79
+ */
80
+ listRequestsRaw(requestParameters: ListRequestsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RequestLogPage>>;
81
+ /**
82
+ * Returns one newest-first page of the organization\'s inference request log: one row per call to chat completions, messages, responses, embeddings, image generation or video creation, including calls that were refused before they reached a model (`status: rejected`). Rows are kept for 90 days; `window_days` says how far back the log reaches, and a `from` older than that is clamped rather than rejected. Visibility follows the caller. An org admin\'s key and a `full_access` key see the whole organization; any other key sees only its own rows. A `key` filter naming a key the caller cannot see returns an empty page. A row never carries prompt or completion content. `client_request_id` is the value the caller sent in `X-Client-Request-Id` (or `metadata.client_request_id` on `/responses`), kept for correlation. Requires the `serverless:read` scope. Reads are rate-limited per key (429 `rate_limited` with Retry-After).
83
+ * List requests (the request log)
84
+ */
85
+ listRequests(requestParameters?: ListRequestsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RequestLogPage>;
86
+ }
87
+ /**
88
+ * @export
89
+ */
90
+ export declare const ExportRequestsSurfaceEnum: {
91
+ readonly Chat: "chat";
92
+ readonly Messages: "messages";
93
+ readonly Responses: "responses";
94
+ readonly Embeddings: "embeddings";
95
+ readonly Image: "image";
96
+ readonly Video: "video";
97
+ };
98
+ export type ExportRequestsSurfaceEnum = typeof ExportRequestsSurfaceEnum[keyof typeof ExportRequestsSurfaceEnum];
99
+ /**
100
+ * @export
101
+ */
102
+ export declare const ExportRequestsStatusEnum: {
103
+ readonly Ok: "ok";
104
+ readonly Error: "error";
105
+ readonly Cancelled: "cancelled";
106
+ readonly Rejected: "rejected";
107
+ };
108
+ export type ExportRequestsStatusEnum = typeof ExportRequestsStatusEnum[keyof typeof ExportRequestsStatusEnum];
109
+ /**
110
+ * @export
111
+ */
112
+ export declare const ListRequestsSurfaceEnum: {
113
+ readonly Chat: "chat";
114
+ readonly Messages: "messages";
115
+ readonly Responses: "responses";
116
+ readonly Embeddings: "embeddings";
117
+ readonly Image: "image";
118
+ readonly Video: "video";
119
+ };
120
+ export type ListRequestsSurfaceEnum = typeof ListRequestsSurfaceEnum[keyof typeof ListRequestsSurfaceEnum];
121
+ /**
122
+ * @export
123
+ */
124
+ export declare const ListRequestsStatusEnum: {
125
+ readonly Ok: "ok";
126
+ readonly Error: "error";
127
+ readonly Cancelled: "cancelled";
128
+ readonly Rejected: "rejected";
129
+ };
130
+ export type ListRequestsStatusEnum = typeof ListRequestsStatusEnum[keyof typeof ListRequestsStatusEnum];
@@ -0,0 +1,265 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * deeprelay Public Developer API
5
+ * Programmatic API for deeprelay. Authenticate with API keys minted from the dashboard. See https://deeprelay.ai/docs for details. Keys minted from the dashboard or `deeprelay login` belong to the Production server, https://api.deeprelay.ai/v1. The Demo server is an internal staging environment with its own key store. Versioning: `/v1` is the API version. `info.version` is the revision of this `/v1` document, not a separate API. OpenAI compatibility: chat completions follow the OpenAI request and response shapes, but not every OpenAI parameter is carried. Some are rejected with 400 `unsupported_parameter` and any parameter not declared in this spec is accepted and ignored. The full table is at https://deeprelay.ai/docs/api/inference#openai-compatibility.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@deeprelay.ai
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
+ return new (P || (P = Promise))(function (resolve, reject) {
17
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
21
+ });
22
+ };
23
+ import * as runtime from '../runtime';
24
+ import { RequestLogEntryFromJSON, } from '../models/RequestLogEntry';
25
+ import { RequestLogPageFromJSON, } from '../models/RequestLogPage';
26
+ /**
27
+ *
28
+ */
29
+ export class RequestsApi extends runtime.BaseAPI {
30
+ /**
31
+ * Creates request options for exportRequests without sending the request
32
+ */
33
+ exportRequestsRequestOpts(requestParameters) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ const queryParameters = {};
36
+ if (requestParameters['key'] != null) {
37
+ queryParameters['key'] = requestParameters['key'];
38
+ }
39
+ if (requestParameters['model'] != null) {
40
+ queryParameters['model'] = requestParameters['model'];
41
+ }
42
+ if (requestParameters['surface'] != null) {
43
+ queryParameters['surface'] = requestParameters['surface'];
44
+ }
45
+ if (requestParameters['status'] != null) {
46
+ queryParameters['status'] = requestParameters['status'];
47
+ }
48
+ if (requestParameters['errorCode'] != null) {
49
+ queryParameters['error_code'] = requestParameters['errorCode'];
50
+ }
51
+ if (requestParameters['clientRequestId'] != null) {
52
+ queryParameters['client_request_id'] = requestParameters['clientRequestId'];
53
+ }
54
+ if (requestParameters['from'] != null) {
55
+ queryParameters['from'] = requestParameters['from'].toISOString();
56
+ }
57
+ if (requestParameters['to'] != null) {
58
+ queryParameters['to'] = requestParameters['to'].toISOString();
59
+ }
60
+ const headerParameters = {};
61
+ if (this.configuration && this.configuration.accessToken) {
62
+ const token = this.configuration.accessToken;
63
+ const tokenString = yield token("bearerAuth", []);
64
+ if (tokenString) {
65
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
66
+ }
67
+ }
68
+ let urlPath = `/requests/export`;
69
+ return {
70
+ path: urlPath,
71
+ method: 'GET',
72
+ headers: headerParameters,
73
+ query: queryParameters,
74
+ };
75
+ });
76
+ }
77
+ /**
78
+ * Streams every request-log row matching the filters as a CSV attachment, oldest columns first: `request_id, client_request_id, occurred_at, surface, model, key_id, key_name, key_prefix, status, http_status, error_code, finish_reason, prompt_tokens, completion_tokens, cached_tokens, reasoning_tokens, quota_units, cost, plan_covered, ttft_ms, duration_ms, ignored_params`. Takes the same filters and visibility rules as `GET /requests`, without the cursor and limit. The export is counted before anything is written. When the filters match more rows than the export cap, the answer is 422 `export_too_large` and the problem body carries `max_rows`; narrow the time range or add a filter, then export again. Requires the `serverless:read` scope. Exports have their own, tighter per-key rate limit.
79
+ * Export the request log as CSV
80
+ */
81
+ exportRequestsRaw(requestParameters, initOverrides) {
82
+ return __awaiter(this, void 0, void 0, function* () {
83
+ const requestOptions = yield this.exportRequestsRequestOpts(requestParameters);
84
+ const response = yield this.request(requestOptions, initOverrides);
85
+ if (this.isJsonMime(response.headers.get('content-type'))) {
86
+ return new runtime.JSONApiResponse(response);
87
+ }
88
+ else {
89
+ return new runtime.TextApiResponse(response);
90
+ }
91
+ });
92
+ }
93
+ /**
94
+ * Streams every request-log row matching the filters as a CSV attachment, oldest columns first: `request_id, client_request_id, occurred_at, surface, model, key_id, key_name, key_prefix, status, http_status, error_code, finish_reason, prompt_tokens, completion_tokens, cached_tokens, reasoning_tokens, quota_units, cost, plan_covered, ttft_ms, duration_ms, ignored_params`. Takes the same filters and visibility rules as `GET /requests`, without the cursor and limit. The export is counted before anything is written. When the filters match more rows than the export cap, the answer is 422 `export_too_large` and the problem body carries `max_rows`; narrow the time range or add a filter, then export again. Requires the `serverless:read` scope. Exports have their own, tighter per-key rate limit.
95
+ * Export the request log as CSV
96
+ */
97
+ exportRequests() {
98
+ return __awaiter(this, arguments, void 0, function* (requestParameters = {}, initOverrides) {
99
+ const response = yield this.exportRequestsRaw(requestParameters, initOverrides);
100
+ return yield response.value();
101
+ });
102
+ }
103
+ /**
104
+ * Creates request options for getRequest without sending the request
105
+ */
106
+ getRequestRequestOpts(requestParameters) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ if (requestParameters['id'] == null) {
109
+ throw new runtime.RequiredError('id', 'Required parameter "id" was null or undefined when calling getRequest().');
110
+ }
111
+ const queryParameters = {};
112
+ const headerParameters = {};
113
+ if (this.configuration && this.configuration.accessToken) {
114
+ const token = this.configuration.accessToken;
115
+ const tokenString = yield token("bearerAuth", []);
116
+ if (tokenString) {
117
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
118
+ }
119
+ }
120
+ let urlPath = `/requests/{id}`;
121
+ urlPath = urlPath.replace('{id}', encodeURIComponent(String(requestParameters['id'])));
122
+ return {
123
+ path: urlPath,
124
+ method: 'GET',
125
+ headers: headerParameters,
126
+ query: queryParameters,
127
+ };
128
+ });
129
+ }
130
+ /**
131
+ * Returns one request-log row. An unknown id, an id older than 90 days and an id the caller cannot see all answer the same 404. Requires the `serverless:read` scope.
132
+ * Get one request
133
+ */
134
+ getRequestRaw(requestParameters, initOverrides) {
135
+ return __awaiter(this, void 0, void 0, function* () {
136
+ const requestOptions = yield this.getRequestRequestOpts(requestParameters);
137
+ const response = yield this.request(requestOptions, initOverrides);
138
+ return new runtime.JSONApiResponse(response, (jsonValue) => RequestLogEntryFromJSON(jsonValue));
139
+ });
140
+ }
141
+ /**
142
+ * Returns one request-log row. An unknown id, an id older than 90 days and an id the caller cannot see all answer the same 404. Requires the `serverless:read` scope.
143
+ * Get one request
144
+ */
145
+ getRequest(requestParameters, initOverrides) {
146
+ return __awaiter(this, void 0, void 0, function* () {
147
+ const response = yield this.getRequestRaw(requestParameters, initOverrides);
148
+ return yield response.value();
149
+ });
150
+ }
151
+ /**
152
+ * Creates request options for listRequests without sending the request
153
+ */
154
+ listRequestsRequestOpts(requestParameters) {
155
+ return __awaiter(this, void 0, void 0, function* () {
156
+ const queryParameters = {};
157
+ if (requestParameters['key'] != null) {
158
+ queryParameters['key'] = requestParameters['key'];
159
+ }
160
+ if (requestParameters['model'] != null) {
161
+ queryParameters['model'] = requestParameters['model'];
162
+ }
163
+ if (requestParameters['surface'] != null) {
164
+ queryParameters['surface'] = requestParameters['surface'];
165
+ }
166
+ if (requestParameters['status'] != null) {
167
+ queryParameters['status'] = requestParameters['status'];
168
+ }
169
+ if (requestParameters['errorCode'] != null) {
170
+ queryParameters['error_code'] = requestParameters['errorCode'];
171
+ }
172
+ if (requestParameters['clientRequestId'] != null) {
173
+ queryParameters['client_request_id'] = requestParameters['clientRequestId'];
174
+ }
175
+ if (requestParameters['from'] != null) {
176
+ queryParameters['from'] = requestParameters['from'].toISOString();
177
+ }
178
+ if (requestParameters['to'] != null) {
179
+ queryParameters['to'] = requestParameters['to'].toISOString();
180
+ }
181
+ if (requestParameters['cursor'] != null) {
182
+ queryParameters['cursor'] = requestParameters['cursor'];
183
+ }
184
+ if (requestParameters['limit'] != null) {
185
+ queryParameters['limit'] = requestParameters['limit'];
186
+ }
187
+ const headerParameters = {};
188
+ if (this.configuration && this.configuration.accessToken) {
189
+ const token = this.configuration.accessToken;
190
+ const tokenString = yield token("bearerAuth", []);
191
+ if (tokenString) {
192
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
193
+ }
194
+ }
195
+ let urlPath = `/requests`;
196
+ return {
197
+ path: urlPath,
198
+ method: 'GET',
199
+ headers: headerParameters,
200
+ query: queryParameters,
201
+ };
202
+ });
203
+ }
204
+ /**
205
+ * Returns one newest-first page of the organization\'s inference request log: one row per call to chat completions, messages, responses, embeddings, image generation or video creation, including calls that were refused before they reached a model (`status: rejected`). Rows are kept for 90 days; `window_days` says how far back the log reaches, and a `from` older than that is clamped rather than rejected. Visibility follows the caller. An org admin\'s key and a `full_access` key see the whole organization; any other key sees only its own rows. A `key` filter naming a key the caller cannot see returns an empty page. A row never carries prompt or completion content. `client_request_id` is the value the caller sent in `X-Client-Request-Id` (or `metadata.client_request_id` on `/responses`), kept for correlation. Requires the `serverless:read` scope. Reads are rate-limited per key (429 `rate_limited` with Retry-After).
206
+ * List requests (the request log)
207
+ */
208
+ listRequestsRaw(requestParameters, initOverrides) {
209
+ return __awaiter(this, void 0, void 0, function* () {
210
+ const requestOptions = yield this.listRequestsRequestOpts(requestParameters);
211
+ const response = yield this.request(requestOptions, initOverrides);
212
+ return new runtime.JSONApiResponse(response, (jsonValue) => RequestLogPageFromJSON(jsonValue));
213
+ });
214
+ }
215
+ /**
216
+ * Returns one newest-first page of the organization\'s inference request log: one row per call to chat completions, messages, responses, embeddings, image generation or video creation, including calls that were refused before they reached a model (`status: rejected`). Rows are kept for 90 days; `window_days` says how far back the log reaches, and a `from` older than that is clamped rather than rejected. Visibility follows the caller. An org admin\'s key and a `full_access` key see the whole organization; any other key sees only its own rows. A `key` filter naming a key the caller cannot see returns an empty page. A row never carries prompt or completion content. `client_request_id` is the value the caller sent in `X-Client-Request-Id` (or `metadata.client_request_id` on `/responses`), kept for correlation. Requires the `serverless:read` scope. Reads are rate-limited per key (429 `rate_limited` with Retry-After).
217
+ * List requests (the request log)
218
+ */
219
+ listRequests() {
220
+ return __awaiter(this, arguments, void 0, function* (requestParameters = {}, initOverrides) {
221
+ const response = yield this.listRequestsRaw(requestParameters, initOverrides);
222
+ return yield response.value();
223
+ });
224
+ }
225
+ }
226
+ /**
227
+ * @export
228
+ */
229
+ export const ExportRequestsSurfaceEnum = {
230
+ Chat: 'chat',
231
+ Messages: 'messages',
232
+ Responses: 'responses',
233
+ Embeddings: 'embeddings',
234
+ Image: 'image',
235
+ Video: 'video'
236
+ };
237
+ /**
238
+ * @export
239
+ */
240
+ export const ExportRequestsStatusEnum = {
241
+ Ok: 'ok',
242
+ Error: 'error',
243
+ Cancelled: 'cancelled',
244
+ Rejected: 'rejected'
245
+ };
246
+ /**
247
+ * @export
248
+ */
249
+ export const ListRequestsSurfaceEnum = {
250
+ Chat: 'chat',
251
+ Messages: 'messages',
252
+ Responses: 'responses',
253
+ Embeddings: 'embeddings',
254
+ Image: 'image',
255
+ Video: 'video'
256
+ };
257
+ /**
258
+ * @export
259
+ */
260
+ export const ListRequestsStatusEnum = {
261
+ Ok: 'ok',
262
+ Error: 'error',
263
+ Cancelled: 'cancelled',
264
+ Rejected: 'rejected'
265
+ };