@deeprelay/sdk 0.2.1 → 0.4.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 (512) 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 +1 -1
  16. package/dist/apis/UsageApi.js +1 -1
  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 +1 -1
  34. package/dist/esm/apis/UsageApi.js +1 -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 +1 -1
  184. package/dist/esm/models/UsageBucket.js +1 -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 +1 -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 +1 -1
  350. package/dist/models/UsageBucket.js +1 -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 +1 -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/UsageCompletionTokensDetails.md +34 -0
  419. package/docs/UsagePromptTokensDetails.md +35 -0
  420. package/package.json +1 -1
  421. package/src/apis/AlertsApi.ts +145 -0
  422. package/src/apis/ApiKeysApi.ts +357 -0
  423. package/src/apis/BillingApi.ts +73 -7
  424. package/src/apis/InferenceApi.ts +32 -1
  425. package/src/apis/MetaApi.ts +1 -1
  426. package/src/apis/RequestsApi.ts +335 -0
  427. package/src/apis/UsageApi.ts +1 -1
  428. package/src/apis/WebhooksApi.ts +1 -1
  429. package/src/apis/index.ts +3 -0
  430. package/src/models/AlertEmailToggles.ts +93 -0
  431. package/src/models/AlertSettings.ts +101 -0
  432. package/src/models/AlertSettingsUpdate.ts +83 -0
  433. package/src/models/ApiKey.ts +205 -0
  434. package/src/models/ApiKeyCreate.ts +115 -0
  435. package/src/models/ApiKeyCreated.ts +214 -0
  436. package/src/models/ApiKeyList.ts +74 -0
  437. package/src/models/ApiKeyScopes.ts +106 -0
  438. package/src/models/ApiKeyUpdate.ts +105 -0
  439. package/src/models/Balance.ts +1 -1
  440. package/src/models/ChatChoice.ts +11 -1
  441. package/src/models/ChatCompletionRequest.ts +118 -2
  442. package/src/models/ChatCompletionRequestResponseFormat.ts +84 -0
  443. package/src/models/ChatCompletionRequestToolChoice.ts +70 -0
  444. package/src/models/ChatCompletionResponse.ts +1 -1
  445. package/src/models/ChatMessage.ts +35 -5
  446. package/src/models/CostDetails.ts +105 -0
  447. package/src/models/CreateCryptoDepositRequest.ts +5 -2
  448. package/src/models/CreateWebhookEndpointRequest.ts +6 -2
  449. package/src/models/CryptoDeposit.ts +4 -2
  450. package/src/models/Embedding.ts +1 -1
  451. package/src/models/EmbeddingsRequest.ts +1 -1
  452. package/src/models/EmbeddingsRequestInput.ts +1 -1
  453. package/src/models/EmbeddingsResponse.ts +1 -1
  454. package/src/models/EmbeddingsUsage.ts +1 -1
  455. package/src/models/GetHealth200Response.ts +1 -1
  456. package/src/models/ImagesGenerationsRequest.ts +2 -2
  457. package/src/models/ImagesResponse.ts +1 -1
  458. package/src/models/ImagesResponseDataInner.ts +1 -1
  459. package/src/models/ImagesResponseUsage.ts +1 -1
  460. package/src/models/InferencePreflight.ts +5 -2
  461. package/src/models/JSONSchemaFormat.ts +92 -0
  462. package/src/models/ListDeposits200Response.ts +1 -1
  463. package/src/models/Model.ts +78 -6
  464. package/src/models/ModelList.ts +1 -1
  465. package/src/models/ModelMetrics.ts +165 -0
  466. package/src/models/ModelParametersInner.ts +1 -1
  467. package/src/models/ModelPricing.ts +1 -1
  468. package/src/models/ModelRate.ts +1 -1
  469. package/src/models/OpenAIErrorEnvelope.ts +1 -1
  470. package/src/models/OpenAIErrorEnvelopeError.ts +10 -2
  471. package/src/models/PeakWindow.ts +1 -1
  472. package/src/models/Problem.ts +26 -1
  473. package/src/models/RefereeStatus.ts +1 -1
  474. package/src/models/Referral.ts +20 -2
  475. package/src/models/RequestLogEntry.ts +307 -0
  476. package/src/models/RequestLogPage.ts +92 -0
  477. package/src/models/ResponseFormatJSONObject.ts +78 -0
  478. package/src/models/ResponseFormatJSONSchema.ts +95 -0
  479. package/src/models/ResponseFormatText.ts +78 -0
  480. package/src/models/SpendingLimit.ts +1 -1
  481. package/src/models/StreamOptions.ts +1 -1
  482. package/src/models/Subscription.ts +18 -2
  483. package/src/models/SubscriptionCheckoutRequest.ts +23 -4
  484. package/src/models/SubscriptionCheckoutSession.ts +28 -1
  485. package/src/models/SubscriptionModelUsage.ts +120 -0
  486. package/src/models/SubscriptionPlan.ts +4 -4
  487. package/src/models/SubscriptionPortalRequest.ts +1 -1
  488. package/src/models/SubscriptionPortalSession.ts +1 -1
  489. package/src/models/SubscriptionPrice.ts +1 -1
  490. package/src/models/SubscriptionQuota.ts +16 -7
  491. package/src/models/SubscriptionTier.ts +108 -0
  492. package/src/models/SubscriptionUpgradeRequest.ts +66 -0
  493. package/src/models/SubscriptionUsage.ts +47 -6
  494. package/src/models/Tool.ts +95 -0
  495. package/src/models/ToolCall.ts +110 -0
  496. package/src/models/ToolCallFunction.ts +76 -0
  497. package/src/models/ToolChoiceFunction.ts +95 -0
  498. package/src/models/ToolChoiceFunctionFunction.ts +66 -0
  499. package/src/models/ToolFunction.ts +83 -0
  500. package/src/models/UpdateSpendingLimitRequest.ts +1 -1
  501. package/src/models/Usage.ts +56 -1
  502. package/src/models/UsageBucket.ts +1 -1
  503. package/src/models/UsageCompletionTokensDetails.ts +65 -0
  504. package/src/models/UsagePage.ts +1 -1
  505. package/src/models/UsagePromptTokensDetails.ts +66 -0
  506. package/src/models/VideoCreateRequest.ts +1 -1
  507. package/src/models/VideoJob.ts +1 -1
  508. package/src/models/VideoList.ts +1 -1
  509. package/src/models/WebhookEndpoint.ts +6 -2
  510. package/src/models/WebhookEndpointPage.ts +1 -1
  511. package/src/models/index.ts +30 -0
  512. package/src/runtime.ts +2 -2
@@ -0,0 +1,357 @@
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
+
15
+ import * as runtime from '../runtime';
16
+ import {
17
+ type ApiKey,
18
+ ApiKeyFromJSON,
19
+ ApiKeyToJSON,
20
+ } from '../models/ApiKey';
21
+ import {
22
+ type ApiKeyCreate,
23
+ ApiKeyCreateFromJSON,
24
+ ApiKeyCreateToJSON,
25
+ } from '../models/ApiKeyCreate';
26
+ import {
27
+ type ApiKeyCreated,
28
+ ApiKeyCreatedFromJSON,
29
+ ApiKeyCreatedToJSON,
30
+ } from '../models/ApiKeyCreated';
31
+ import {
32
+ type ApiKeyList,
33
+ ApiKeyListFromJSON,
34
+ ApiKeyListToJSON,
35
+ } from '../models/ApiKeyList';
36
+ import {
37
+ type ApiKeyUpdate,
38
+ ApiKeyUpdateFromJSON,
39
+ ApiKeyUpdateToJSON,
40
+ } from '../models/ApiKeyUpdate';
41
+ import {
42
+ type Problem,
43
+ ProblemFromJSON,
44
+ ProblemToJSON,
45
+ } from '../models/Problem';
46
+
47
+ export interface CreateApiKeyRequest {
48
+ apiKeyCreate: ApiKeyCreate;
49
+ }
50
+
51
+ export interface GetApiKeyRequest {
52
+ id: string;
53
+ }
54
+
55
+ export interface RevokeApiKeyRequest {
56
+ id: string;
57
+ idempotencyKey?: string;
58
+ }
59
+
60
+ export interface UpdateApiKeyRequest {
61
+ id: string;
62
+ apiKeyUpdate: ApiKeyUpdate;
63
+ idempotencyKey?: string;
64
+ }
65
+
66
+ /**
67
+ *
68
+ */
69
+ export class ApiKeysApi extends runtime.BaseAPI {
70
+
71
+ /**
72
+ * Creates request options for createApiKey without sending the request
73
+ */
74
+ async createApiKeyRequestOpts(requestParameters: CreateApiKeyRequest): Promise<runtime.RequestOpts> {
75
+ if (requestParameters['apiKeyCreate'] == null) {
76
+ throw new runtime.RequiredError(
77
+ 'apiKeyCreate',
78
+ 'Required parameter "apiKeyCreate" was null or undefined when calling createApiKey().'
79
+ );
80
+ }
81
+
82
+ const queryParameters: any = {};
83
+
84
+ const headerParameters: runtime.HTTPHeaders = {};
85
+
86
+ headerParameters['Content-Type'] = 'application/json';
87
+
88
+ if (this.configuration && this.configuration.accessToken) {
89
+ const token = this.configuration.accessToken;
90
+ const tokenString = await token("bearerAuth", []);
91
+
92
+ if (tokenString) {
93
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
94
+ }
95
+ }
96
+
97
+ let urlPath = `/api-keys`;
98
+
99
+ return {
100
+ path: urlPath,
101
+ method: 'POST',
102
+ headers: headerParameters,
103
+ query: queryParameters,
104
+ body: ApiKeyCreateToJSON(requestParameters['apiKeyCreate']),
105
+ };
106
+ }
107
+
108
+ /**
109
+ * Mints a key. The response is the only place the secret (`key`) appears; store it then, because it cannot be read again. Requires the `keys:manage` capability: a `full_access` key, or a key whose scopes grant `{\"keys\": \"write\"}`. Any other key gets 403 `keys_manage_required`. A key can never mint a key stronger than itself: scopes it does not hold answer 403 `scope_exceeds_caller`, and a minting key that has a budget, a model allowlist, a rate limit or an expiry passes each down as an upper bound (422 `validation_failed` naming the `field`). Only an org admin can mint a `full_access` key.
110
+ * Create an API key
111
+ */
112
+ async createApiKeyRaw(requestParameters: CreateApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKeyCreated>> {
113
+ const requestOptions = await this.createApiKeyRequestOpts(requestParameters);
114
+ const response = await this.request(requestOptions, initOverrides);
115
+
116
+ return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyCreatedFromJSON(jsonValue));
117
+ }
118
+
119
+ /**
120
+ * Mints a key. The response is the only place the secret (`key`) appears; store it then, because it cannot be read again. Requires the `keys:manage` capability: a `full_access` key, or a key whose scopes grant `{\"keys\": \"write\"}`. Any other key gets 403 `keys_manage_required`. A key can never mint a key stronger than itself: scopes it does not hold answer 403 `scope_exceeds_caller`, and a minting key that has a budget, a model allowlist, a rate limit or an expiry passes each down as an upper bound (422 `validation_failed` naming the `field`). Only an org admin can mint a `full_access` key.
121
+ * Create an API key
122
+ */
123
+ async createApiKey(requestParameters: CreateApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKeyCreated> {
124
+ const response = await this.createApiKeyRaw(requestParameters, initOverrides);
125
+ return await response.value();
126
+ }
127
+
128
+ /**
129
+ * Creates request options for getApiKey without sending the request
130
+ */
131
+ async getApiKeyRequestOpts(requestParameters: GetApiKeyRequest): Promise<runtime.RequestOpts> {
132
+ if (requestParameters['id'] == null) {
133
+ throw new runtime.RequiredError(
134
+ 'id',
135
+ 'Required parameter "id" was null or undefined when calling getApiKey().'
136
+ );
137
+ }
138
+
139
+ const queryParameters: any = {};
140
+
141
+ const headerParameters: runtime.HTTPHeaders = {};
142
+
143
+ if (this.configuration && this.configuration.accessToken) {
144
+ const token = this.configuration.accessToken;
145
+ const tokenString = await token("bearerAuth", []);
146
+
147
+ if (tokenString) {
148
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
149
+ }
150
+ }
151
+
152
+ let urlPath = `/api-keys/{id}`;
153
+ urlPath = urlPath.replace('{id}', encodeURIComponent(String(requestParameters['id'])));
154
+
155
+ return {
156
+ path: urlPath,
157
+ method: 'GET',
158
+ headers: headerParameters,
159
+ query: queryParameters,
160
+ };
161
+ }
162
+
163
+ /**
164
+ * Returns one key. A key the caller cannot see answers 404. Requires the `keys:read` scope.
165
+ * Get an API key
166
+ */
167
+ async getApiKeyRaw(requestParameters: GetApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKey>> {
168
+ const requestOptions = await this.getApiKeyRequestOpts(requestParameters);
169
+ const response = await this.request(requestOptions, initOverrides);
170
+
171
+ return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyFromJSON(jsonValue));
172
+ }
173
+
174
+ /**
175
+ * Returns one key. A key the caller cannot see answers 404. Requires the `keys:read` scope.
176
+ * Get an API key
177
+ */
178
+ async getApiKey(requestParameters: GetApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKey> {
179
+ const response = await this.getApiKeyRaw(requestParameters, initOverrides);
180
+ return await response.value();
181
+ }
182
+
183
+ /**
184
+ * Creates request options for listApiKeys without sending the request
185
+ */
186
+ async listApiKeysRequestOpts(): Promise<runtime.RequestOpts> {
187
+ const queryParameters: any = {};
188
+
189
+ const headerParameters: runtime.HTTPHeaders = {};
190
+
191
+ if (this.configuration && this.configuration.accessToken) {
192
+ const token = this.configuration.accessToken;
193
+ const tokenString = await token("bearerAuth", []);
194
+
195
+ if (tokenString) {
196
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
197
+ }
198
+ }
199
+
200
+ let urlPath = `/api-keys`;
201
+
202
+ return {
203
+ path: urlPath,
204
+ method: 'GET',
205
+ headers: headerParameters,
206
+ query: queryParameters,
207
+ };
208
+ }
209
+
210
+ /**
211
+ * Lists the organization\'s API keys with their limits and current budget use. An org admin\'s key and a `full_access` key see every key in the organization; any other key sees only the keys its owner created. The secret is never returned here. Requires the `keys:read` scope.
212
+ * List API keys
213
+ */
214
+ async listApiKeysRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKeyList>> {
215
+ const requestOptions = await this.listApiKeysRequestOpts();
216
+ const response = await this.request(requestOptions, initOverrides);
217
+
218
+ return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyListFromJSON(jsonValue));
219
+ }
220
+
221
+ /**
222
+ * Lists the organization\'s API keys with their limits and current budget use. An org admin\'s key and a `full_access` key see every key in the organization; any other key sees only the keys its owner created. The secret is never returned here. Requires the `keys:read` scope.
223
+ * List API keys
224
+ */
225
+ async listApiKeys(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKeyList> {
226
+ const response = await this.listApiKeysRaw(initOverrides);
227
+ return await response.value();
228
+ }
229
+
230
+ /**
231
+ * Creates request options for revokeApiKey without sending the request
232
+ */
233
+ async revokeApiKeyRequestOpts(requestParameters: RevokeApiKeyRequest): Promise<runtime.RequestOpts> {
234
+ if (requestParameters['id'] == null) {
235
+ throw new runtime.RequiredError(
236
+ 'id',
237
+ 'Required parameter "id" was null or undefined when calling revokeApiKey().'
238
+ );
239
+ }
240
+
241
+ const queryParameters: any = {};
242
+
243
+ const headerParameters: runtime.HTTPHeaders = {};
244
+
245
+ if (requestParameters['idempotencyKey'] != null) {
246
+ headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
247
+ }
248
+
249
+ if (this.configuration && this.configuration.accessToken) {
250
+ const token = this.configuration.accessToken;
251
+ const tokenString = await token("bearerAuth", []);
252
+
253
+ if (tokenString) {
254
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
255
+ }
256
+ }
257
+
258
+ let urlPath = `/api-keys/{id}`;
259
+ urlPath = urlPath.replace('{id}', encodeURIComponent(String(requestParameters['id'])));
260
+
261
+ return {
262
+ path: urlPath,
263
+ method: 'DELETE',
264
+ headers: headerParameters,
265
+ query: queryParameters,
266
+ };
267
+ }
268
+
269
+ /**
270
+ * Revokes the key immediately; it cannot be restored. Requires the `keys:manage` capability (403 `keys_manage_required` otherwise); a member can only revoke keys they created.
271
+ * Revoke an API key
272
+ */
273
+ async revokeApiKeyRaw(requestParameters: RevokeApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
274
+ const requestOptions = await this.revokeApiKeyRequestOpts(requestParameters);
275
+ const response = await this.request(requestOptions, initOverrides);
276
+
277
+ return new runtime.VoidApiResponse(response);
278
+ }
279
+
280
+ /**
281
+ * Revokes the key immediately; it cannot be restored. Requires the `keys:manage` capability (403 `keys_manage_required` otherwise); a member can only revoke keys they created.
282
+ * Revoke an API key
283
+ */
284
+ async revokeApiKey(requestParameters: RevokeApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
285
+ await this.revokeApiKeyRaw(requestParameters, initOverrides);
286
+ }
287
+
288
+ /**
289
+ * Creates request options for updateApiKey without sending the request
290
+ */
291
+ async updateApiKeyRequestOpts(requestParameters: UpdateApiKeyRequest): Promise<runtime.RequestOpts> {
292
+ if (requestParameters['id'] == null) {
293
+ throw new runtime.RequiredError(
294
+ 'id',
295
+ 'Required parameter "id" was null or undefined when calling updateApiKey().'
296
+ );
297
+ }
298
+
299
+ if (requestParameters['apiKeyUpdate'] == null) {
300
+ throw new runtime.RequiredError(
301
+ 'apiKeyUpdate',
302
+ 'Required parameter "apiKeyUpdate" was null or undefined when calling updateApiKey().'
303
+ );
304
+ }
305
+
306
+ const queryParameters: any = {};
307
+
308
+ const headerParameters: runtime.HTTPHeaders = {};
309
+
310
+ headerParameters['Content-Type'] = 'application/json';
311
+
312
+ if (requestParameters['idempotencyKey'] != null) {
313
+ headerParameters['Idempotency-Key'] = String(requestParameters['idempotencyKey']);
314
+ }
315
+
316
+ if (this.configuration && this.configuration.accessToken) {
317
+ const token = this.configuration.accessToken;
318
+ const tokenString = await token("bearerAuth", []);
319
+
320
+ if (tokenString) {
321
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
322
+ }
323
+ }
324
+
325
+ let urlPath = `/api-keys/{id}`;
326
+ urlPath = urlPath.replace('{id}', encodeURIComponent(String(requestParameters['id'])));
327
+
328
+ return {
329
+ path: urlPath,
330
+ method: 'PATCH',
331
+ headers: headerParameters,
332
+ query: queryParameters,
333
+ body: ApiKeyUpdateToJSON(requestParameters['apiKeyUpdate']),
334
+ };
335
+ }
336
+
337
+ /**
338
+ * Changes a key\'s name, budget, model allowlist, rate limit or expiry. An absent field is left unchanged; an explicit `null` clears `budget_cents`, `allowed_models` or `expires_at`. `scopes` cannot be changed after minting, and unknown fields are refused (422), so a typo never looks like a successful change. Requires the `keys:manage` capability (403 `keys_manage_required` otherwise); a member can only change keys they created.
339
+ * Update an API key\'s name or limits
340
+ */
341
+ async updateApiKeyRaw(requestParameters: UpdateApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ApiKey>> {
342
+ const requestOptions = await this.updateApiKeyRequestOpts(requestParameters);
343
+ const response = await this.request(requestOptions, initOverrides);
344
+
345
+ return new runtime.JSONApiResponse(response, (jsonValue) => ApiKeyFromJSON(jsonValue));
346
+ }
347
+
348
+ /**
349
+ * Changes a key\'s name, budget, model allowlist, rate limit or expiry. An absent field is left unchanged; an explicit `null` clears `budget_cents`, `allowed_models` or `expires_at`. `scopes` cannot be changed after minting, and unknown fields are refused (422), so a typo never looks like a successful change. Requires the `keys:manage` capability (403 `keys_manage_required` otherwise); a member can only change keys they created.
350
+ * Update an API key\'s name or limits
351
+ */
352
+ async updateApiKey(requestParameters: UpdateApiKeyRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ApiKey> {
353
+ const response = await this.updateApiKeyRaw(requestParameters, initOverrides);
354
+ return await response.value();
355
+ }
356
+
357
+ }
@@ -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
@@ -73,6 +73,11 @@ import {
73
73
  SubscriptionPortalSessionFromJSON,
74
74
  SubscriptionPortalSessionToJSON,
75
75
  } from '../models/SubscriptionPortalSession';
76
+ import {
77
+ type SubscriptionUpgradeRequest,
78
+ SubscriptionUpgradeRequestFromJSON,
79
+ SubscriptionUpgradeRequestToJSON,
80
+ } from '../models/SubscriptionUpgradeRequest';
76
81
  import {
77
82
  type UpdateSpendingLimitRequest,
78
83
  UpdateSpendingLimitRequestFromJSON,
@@ -99,6 +104,10 @@ export interface UpdateSpendingLimitOperationRequest {
99
104
  updateSpendingLimitRequest: UpdateSpendingLimitRequest;
100
105
  }
101
106
 
107
+ export interface UpgradeSubscriptionRequest {
108
+ subscriptionUpgradeRequest: SubscriptionUpgradeRequest;
109
+ }
110
+
102
111
  /**
103
112
  *
104
113
  */
@@ -192,7 +201,7 @@ export class BillingApi extends runtime.BaseAPI {
192
201
  }
193
202
 
194
203
  /**
195
- * Opens a hosted checkout session for the flat tier and returns its URL. Requires the `billing:write` scope AND organization-admin privileges — subscribing spends organization money. This endpoint does NOT subscribe anyone. Checkout is a hosted page that needs a browser and a card, so the caller\'s job is to put the returned URL in front of a human. The subscription becomes active when payment completes, which is not synchronous with this call: poll `/billing/subscription` to confirm. `success_url` and `cancel_url` are optional and fall back to the deployment\'s configured redirects, which is what lets a command-line client start a purchase without having any URLs of its own. An empty request body is valid and means \"use every default\". `plan_key`, when sent, pins the plan the client DISPLAYED: an unknown key is a 400 rather than a silent purchase of a different tier. Today there is one tier, so the only accepted value is its key — but sending it is the forward-compatible choice. One flat tier means at most one subscription per organization: a second checkout while an entitling subscription exists is a 409.
204
+ * Opens a hosted checkout session for a subscription plan and returns its URL. Requires the `billing:write` scope AND organization-admin privileges — subscribing spends organization money. This endpoint does NOT subscribe anyone. Checkout is a hosted page that needs a browser and a card, so the caller\'s job is to put the returned URL in front of a human. The subscription becomes active when payment completes, which is not synchronous with this call: poll `/billing/subscription` to confirm. `success_url` and `cancel_url` are optional and fall back to the deployment\'s configured redirects, which is what lets a command-line client start a purchase without having any URLs of its own. An empty request body is valid and means \"use every default\". When sent, they must be on the deployment\'s dashboard origin, else 422 `validation_failed`. `plan_key` names the plan to buy: `flat` (Base, the default when the field is omitted) or `plus`. It pins the plan the client DISPLAYED — an unknown key, or a plan this deployment does not offer, is a 400 rather than a silent purchase of a different tier. The `plans` array on `/billing/subscription` lists the accepted keys. One subscription per organization: a second checkout while an entitling subscription exists is a 409. To move an existing subscription to a bigger plan use `/billing/subscription/upgrade`. `method` picks how the plan is paid: `card` (dollars, card or Link; the default) or `upi` (rupees, UPI AutoPay, India). On an organization that already subscribes, an explicit `method` in the other currency is a switch, not a second subscription: the link saves the new card or UPI AutoPay mandate (nothing is charged), and once that completes the same plan is moved to the new currency, first charged on the current renewal date (that month is already paid). The answer then carries `switch_to` and `first_charge_at`. A switch is refused (409) within two days of renewal, while the plan is set to cancel, while an upgrade waits on its UPI payment, and in the currency the plan already uses.
196
205
  * Start a subscription checkout session
197
206
  */
198
207
  async createSubscriptionCheckoutRaw(requestParameters: CreateSubscriptionCheckoutRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<SubscriptionCheckoutSession>> {
@@ -203,7 +212,7 @@ export class BillingApi extends runtime.BaseAPI {
203
212
  }
204
213
 
205
214
  /**
206
- * Opens a hosted checkout session for the flat tier and returns its URL. Requires the `billing:write` scope AND organization-admin privileges — subscribing spends organization money. This endpoint does NOT subscribe anyone. Checkout is a hosted page that needs a browser and a card, so the caller\'s job is to put the returned URL in front of a human. The subscription becomes active when payment completes, which is not synchronous with this call: poll `/billing/subscription` to confirm. `success_url` and `cancel_url` are optional and fall back to the deployment\'s configured redirects, which is what lets a command-line client start a purchase without having any URLs of its own. An empty request body is valid and means \"use every default\". `plan_key`, when sent, pins the plan the client DISPLAYED: an unknown key is a 400 rather than a silent purchase of a different tier. Today there is one tier, so the only accepted value is its key — but sending it is the forward-compatible choice. One flat tier means at most one subscription per organization: a second checkout while an entitling subscription exists is a 409.
215
+ * Opens a hosted checkout session for a subscription plan and returns its URL. Requires the `billing:write` scope AND organization-admin privileges — subscribing spends organization money. This endpoint does NOT subscribe anyone. Checkout is a hosted page that needs a browser and a card, so the caller\'s job is to put the returned URL in front of a human. The subscription becomes active when payment completes, which is not synchronous with this call: poll `/billing/subscription` to confirm. `success_url` and `cancel_url` are optional and fall back to the deployment\'s configured redirects, which is what lets a command-line client start a purchase without having any URLs of its own. An empty request body is valid and means \"use every default\". When sent, they must be on the deployment\'s dashboard origin, else 422 `validation_failed`. `plan_key` names the plan to buy: `flat` (Base, the default when the field is omitted) or `plus`. It pins the plan the client DISPLAYED — an unknown key, or a plan this deployment does not offer, is a 400 rather than a silent purchase of a different tier. The `plans` array on `/billing/subscription` lists the accepted keys. One subscription per organization: a second checkout while an entitling subscription exists is a 409. To move an existing subscription to a bigger plan use `/billing/subscription/upgrade`. `method` picks how the plan is paid: `card` (dollars, card or Link; the default) or `upi` (rupees, UPI AutoPay, India). On an organization that already subscribes, an explicit `method` in the other currency is a switch, not a second subscription: the link saves the new card or UPI AutoPay mandate (nothing is charged), and once that completes the same plan is moved to the new currency, first charged on the current renewal date (that month is already paid). The answer then carries `switch_to` and `first_charge_at`. A switch is refused (409) within two days of renewal, while the plan is set to cancel, while an upgrade waits on its UPI payment, and in the currency the plan already uses.
207
216
  * Start a subscription checkout session
208
217
  */
209
218
  async createSubscriptionCheckout(requestParameters: CreateSubscriptionCheckoutRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<SubscriptionCheckoutSession> {
@@ -437,7 +446,7 @@ export class BillingApi extends runtime.BaseAPI {
437
446
  }
438
447
 
439
448
  /**
440
- * Returns the organization\'s shareable referral code and invite link (minting the code on first read), the program terms, the referrer\'s stats, and — when this organization itself signed up through someone else\'s link — its own progress toward the referee reward. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. The program: share the invite link; when a friend signs up through it and spends `qualify_spend_cents` on inference, the referrer receives `reward_cents` and the friend receives `referee_reward_cents`, both as non-withdrawable credit, after a `hold_days` chargeback hold. The terms ride on the wire so a client never hard-codes the amounts. `referred` is ABSENT (not null) for an organization nobody referred — key on its presence. This is the same contract the dashboard\'s referral card reads.
449
+ * Returns the organization\'s shareable referral code and invite link (minting the code on first read), the program terms, the referrer\'s stats, and — when this organization itself signed up through someone else\'s link — its own progress toward the referee reward. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. The program: share the invite link; when a friend signs up through it and spends `qualify_spend_cents` on inference, the referrer receives `reward_cents` and the friend receives `referee_reward_cents`, both as non-withdrawable credit, after a `hold_days` chargeback hold. The referrer also earns `commission_pct` percent of every real deposit the friend makes, credited as spend-only promotional credit when the deposit clears (`commission_earned_cents`). Program rewards never apply to the subscription. The terms ride on the wire so a client never hard-codes the amounts. `referred` is ABSENT (not null) for an organization nobody referred — key on its presence. This is the same contract the dashboard\'s referral card reads.
441
450
  * Get the org referral code, invite link, terms and stats
442
451
  */
443
452
  async getReferralRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Referral>> {
@@ -448,7 +457,7 @@ export class BillingApi extends runtime.BaseAPI {
448
457
  }
449
458
 
450
459
  /**
451
- * Returns the organization\'s shareable referral code and invite link (minting the code on first read), the program terms, the referrer\'s stats, and — when this organization itself signed up through someone else\'s link — its own progress toward the referee reward. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. The program: share the invite link; when a friend signs up through it and spends `qualify_spend_cents` on inference, the referrer receives `reward_cents` and the friend receives `referee_reward_cents`, both as non-withdrawable credit, after a `hold_days` chargeback hold. The terms ride on the wire so a client never hard-codes the amounts. `referred` is ABSENT (not null) for an organization nobody referred — key on its presence. This is the same contract the dashboard\'s referral card reads.
460
+ * Returns the organization\'s shareable referral code and invite link (minting the code on first read), the program terms, the referrer\'s stats, and — when this organization itself signed up through someone else\'s link — its own progress toward the referee reward. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. The program: share the invite link; when a friend signs up through it and spends `qualify_spend_cents` on inference, the referrer receives `reward_cents` and the friend receives `referee_reward_cents`, both as non-withdrawable credit, after a `hold_days` chargeback hold. The referrer also earns `commission_pct` percent of every real deposit the friend makes, credited as spend-only promotional credit when the deposit clears (`commission_earned_cents`). Program rewards never apply to the subscription. The terms ride on the wire so a client never hard-codes the amounts. `referred` is ABSENT (not null) for an organization nobody referred — key on its presence. This is the same contract the dashboard\'s referral card reads.
452
461
  * Get the org referral code, invite link, terms and stats
453
462
  */
454
463
  async getReferral(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Referral> {
@@ -531,7 +540,7 @@ export class BillingApi extends runtime.BaseAPI {
531
540
  }
532
541
 
533
542
  /**
534
- * Returns the organization\'s flat-tier subscription: whether it is entitled, the current billing period, the plan\'s configured quota, and — for an entitled subscription — consumption against the four limits the server enforces on every request. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. An organization that never subscribed is NOT an error. It gets 200 with `subscribed: false`, `status: \"none\"` and the quota the plan would provide, so a client can answer \"what does the plan include\" without a second endpoint and without an error path. Read `subscribed`, not `status`, to decide whether the plan applies: `status` carries the billing provider\'s vocabulary, and the two can disagree — an `active` subscription just past its period end still entitles for a short grace window (renewal-webhook lag), while `past_due` and `canceled` never entitle. `usage` is present only for an entitled subscription whose meter could be read. An absent `usage` NEVER means \"nothing used\" — reading it as zero would report a full quota to an organization that has none left. This is the plan\'s meter. For pay-as-you-go credit see `/billing/balance`, for spend against a self-set cap see `/billing/spending-limit`, and for past consumption see `/usage`.
543
+ * Returns the organization\'s subscription: whether it is entitled, the current billing period, the plan it is on and that plan\'s configured quota, and — for an entitled subscription — consumption against the limits the server enforces on every request. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. `plan` and `quota` describe the plan the organization IS on (the Base plan for an organization that never subscribed). `plans` lists every plan this deployment offers — Base, then Plus — each with its price and quota, so a client can render an upgrade offer without a second call. An organization that never subscribed is NOT an error. It gets 200 with `subscribed: false`, `status: \"none\"` and the quota the Base plan would provide, so a client can answer \"what does the plan include\" without a second endpoint and without an error path. Read `subscribed`, not `status`, to decide whether the plan applies: `status` carries the billing provider\'s vocabulary, and the two can disagree — an `active` subscription just past its period end still entitles for a short grace window (renewal-webhook lag), while `past_due` and `canceled` never entitle. `usage` is present only for an entitled subscription whose meter could be read. An absent `usage` NEVER means \"nothing used\" — reading it as zero would report a full quota to an organization that has none left. This is the plan\'s meter. For pay-as-you-go credit see `/billing/balance`, for spend against a self-set cap see `/billing/spending-limit`, and for past consumption see `/usage`.
535
544
  * Get the org subscription status and quota usage
536
545
  */
537
546
  async getSubscriptionRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Subscription>> {
@@ -542,7 +551,7 @@ export class BillingApi extends runtime.BaseAPI {
542
551
  }
543
552
 
544
553
  /**
545
- * Returns the organization\'s flat-tier subscription: whether it is entitled, the current billing period, the plan\'s configured quota, and — for an entitled subscription — consumption against the four limits the server enforces on every request. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. An organization that never subscribed is NOT an error. It gets 200 with `subscribed: false`, `status: \"none\"` and the quota the plan would provide, so a client can answer \"what does the plan include\" without a second endpoint and without an error path. Read `subscribed`, not `status`, to decide whether the plan applies: `status` carries the billing provider\'s vocabulary, and the two can disagree — an `active` subscription just past its period end still entitles for a short grace window (renewal-webhook lag), while `past_due` and `canceled` never entitle. `usage` is present only for an entitled subscription whose meter could be read. An absent `usage` NEVER means \"nothing used\" — reading it as zero would report a full quota to an organization that has none left. This is the plan\'s meter. For pay-as-you-go credit see `/billing/balance`, for spend against a self-set cap see `/billing/spending-limit`, and for past consumption see `/usage`.
554
+ * Returns the organization\'s subscription: whether it is entitled, the current billing period, the plan it is on and that plan\'s configured quota, and — for an entitled subscription — consumption against the limits the server enforces on every request. Requires the `billing:read` scope. The organization is taken from the authenticated API key, never from a parameter. `plan` and `quota` describe the plan the organization IS on (the Base plan for an organization that never subscribed). `plans` lists every plan this deployment offers — Base, then Plus — each with its price and quota, so a client can render an upgrade offer without a second call. An organization that never subscribed is NOT an error. It gets 200 with `subscribed: false`, `status: \"none\"` and the quota the Base plan would provide, so a client can answer \"what does the plan include\" without a second endpoint and without an error path. Read `subscribed`, not `status`, to decide whether the plan applies: `status` carries the billing provider\'s vocabulary, and the two can disagree — an `active` subscription just past its period end still entitles for a short grace window (renewal-webhook lag), while `past_due` and `canceled` never entitle. `usage` is present only for an entitled subscription whose meter could be read. An absent `usage` NEVER means \"nothing used\" — reading it as zero would report a full quota to an organization that has none left. This is the plan\'s meter. For pay-as-you-go credit see `/billing/balance`, for spend against a self-set cap see `/billing/spending-limit`, and for past consumption see `/usage`.
546
555
  * Get the org subscription status and quota usage
547
556
  */
548
557
  async getSubscription(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Subscription> {
@@ -654,4 +663,61 @@ export class BillingApi extends runtime.BaseAPI {
654
663
  return await response.value();
655
664
  }
656
665
 
666
+ /**
667
+ * Creates request options for upgradeSubscription without sending the request
668
+ */
669
+ async upgradeSubscriptionRequestOpts(requestParameters: UpgradeSubscriptionRequest): Promise<runtime.RequestOpts> {
670
+ if (requestParameters['subscriptionUpgradeRequest'] == null) {
671
+ throw new runtime.RequiredError(
672
+ 'subscriptionUpgradeRequest',
673
+ 'Required parameter "subscriptionUpgradeRequest" was null or undefined when calling upgradeSubscription().'
674
+ );
675
+ }
676
+
677
+ const queryParameters: any = {};
678
+
679
+ const headerParameters: runtime.HTTPHeaders = {};
680
+
681
+ headerParameters['Content-Type'] = 'application/json';
682
+
683
+ if (this.configuration && this.configuration.accessToken) {
684
+ const token = this.configuration.accessToken;
685
+ const tokenString = await token("bearerAuth", []);
686
+
687
+ if (tokenString) {
688
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
689
+ }
690
+ }
691
+
692
+ let urlPath = `/billing/subscription/upgrade`;
693
+
694
+ return {
695
+ path: urlPath,
696
+ method: 'POST',
697
+ headers: headerParameters,
698
+ query: queryParameters,
699
+ body: SubscriptionUpgradeRequestToJSON(requestParameters['subscriptionUpgradeRequest']),
700
+ };
701
+ }
702
+
703
+ /**
704
+ * Moves the organization\'s EXISTING subscription onto a bigger plan. Requires the `billing:write` scope AND organization-admin privileges — an upgrade charges the organization\'s card on file. Unlike checkout, no hosted page is involved: the subscription\'s price is swapped, the new plan\'s FULL price is charged immediately (whenever in the cycle the upgrade happens), and a new billing period starts now. There is no credit for the unused remainder of the old plan\'s period, and the usage meters start from zero on the new plan because every quota window is summed over the current period. The response is the post-upgrade subscription, in the same shape as `/billing/subscription`. `plan_key` is required and names the target plan (`plus`). The target must be bigger than the plan the organization is on: upgrading to the current plan or to a smaller one is a 409 `not_an_upgrade` — downgrades go through the billing portal. An organization with no entitling subscription gets 409 `not_subscribed` and should use checkout instead. A subscription already set to end at the period close is refused with 409 `subscription_cancelling` (the upgrade would start a new period and move that end date); resume it in the portal first. If the charge cannot be collected (card declined, no payment method) the call is a 402 `payment_failed` and NOTHING changes — the organization stays on its current plan. Fix the card in the billing portal and retry.
705
+ * Upgrade the subscription to a bigger plan
706
+ */
707
+ async upgradeSubscriptionRaw(requestParameters: UpgradeSubscriptionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Subscription>> {
708
+ const requestOptions = await this.upgradeSubscriptionRequestOpts(requestParameters);
709
+ const response = await this.request(requestOptions, initOverrides);
710
+
711
+ return new runtime.JSONApiResponse(response, (jsonValue) => SubscriptionFromJSON(jsonValue));
712
+ }
713
+
714
+ /**
715
+ * Moves the organization\'s EXISTING subscription onto a bigger plan. Requires the `billing:write` scope AND organization-admin privileges — an upgrade charges the organization\'s card on file. Unlike checkout, no hosted page is involved: the subscription\'s price is swapped, the new plan\'s FULL price is charged immediately (whenever in the cycle the upgrade happens), and a new billing period starts now. There is no credit for the unused remainder of the old plan\'s period, and the usage meters start from zero on the new plan because every quota window is summed over the current period. The response is the post-upgrade subscription, in the same shape as `/billing/subscription`. `plan_key` is required and names the target plan (`plus`). The target must be bigger than the plan the organization is on: upgrading to the current plan or to a smaller one is a 409 `not_an_upgrade` — downgrades go through the billing portal. An organization with no entitling subscription gets 409 `not_subscribed` and should use checkout instead. A subscription already set to end at the period close is refused with 409 `subscription_cancelling` (the upgrade would start a new period and move that end date); resume it in the portal first. If the charge cannot be collected (card declined, no payment method) the call is a 402 `payment_failed` and NOTHING changes — the organization stays on its current plan. Fix the card in the billing portal and retry.
716
+ * Upgrade the subscription to a bigger plan
717
+ */
718
+ async upgradeSubscription(requestParameters: UpgradeSubscriptionRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Subscription> {
719
+ const response = await this.upgradeSubscriptionRaw(requestParameters, initOverrides);
720
+ return await response.value();
721
+ }
722
+
657
723
  }