@spicyapi/sdk 0.1.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 (41) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +21 -0
  3. package/SECURITY.md +4 -0
  4. package/contracts/openapi.yaml +752 -0
  5. package/dist/src/docs/index.d.ts +10 -0
  6. package/dist/src/docs/index.d.ts.map +1 -0
  7. package/dist/src/docs/index.js +181 -0
  8. package/dist/src/docs/index.js.map +1 -0
  9. package/dist/src/generated/openapi.d.ts +888 -0
  10. package/dist/src/generated/openapi.d.ts.map +1 -0
  11. package/dist/src/generated/openapi.js +6 -0
  12. package/dist/src/generated/openapi.js.map +1 -0
  13. package/dist/src/index.d.ts +6 -0
  14. package/dist/src/index.d.ts.map +1 -0
  15. package/dist/src/index.js +5 -0
  16. package/dist/src/index.js.map +1 -0
  17. package/dist/src/openapi.d.ts +2 -0
  18. package/dist/src/openapi.d.ts.map +1 -0
  19. package/dist/src/openapi.js +18 -0
  20. package/dist/src/openapi.js.map +1 -0
  21. package/dist/src/sdk/client.d.ts +41 -0
  22. package/dist/src/sdk/client.d.ts.map +1 -0
  23. package/dist/src/sdk/client.js +407 -0
  24. package/dist/src/sdk/client.js.map +1 -0
  25. package/dist/src/sdk/errors.d.ts +36 -0
  26. package/dist/src/sdk/errors.d.ts.map +1 -0
  27. package/dist/src/sdk/errors.js +53 -0
  28. package/dist/src/sdk/errors.js.map +1 -0
  29. package/dist/src/sdk/index.d.ts +4 -0
  30. package/dist/src/sdk/index.d.ts.map +1 -0
  31. package/dist/src/sdk/index.js +3 -0
  32. package/dist/src/sdk/index.js.map +1 -0
  33. package/dist/src/sdk/types.d.ts +73 -0
  34. package/dist/src/sdk/types.d.ts.map +1 -0
  35. package/dist/src/sdk/types.js +2 -0
  36. package/dist/src/sdk/types.js.map +1 -0
  37. package/dist/src/webhooks/index.d.ts +28 -0
  38. package/dist/src/webhooks/index.d.ts.map +1 -0
  39. package/dist/src/webhooks/index.js +83 -0
  40. package/dist/src/webhooks/index.js.map +1 -0
  41. package/package.json +49 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../../src/generated/openapi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../../src/generated/openapi.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,6 @@
1
+ export * from "./sdk/index.js";
2
+ export * from "./webhooks/index.js";
3
+ export * from "./docs/index.js";
4
+ export { readOpenApiContract } from "./openapi.js";
5
+ export type { components, operations, paths } from "./generated/openapi.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * from "./sdk/index.js";
2
+ export * from "./webhooks/index.js";
3
+ export * from "./docs/index.js";
4
+ export { readOpenApiContract } from "./openapi.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function readOpenApiContract(): Promise<string>;
2
+ //# sourceMappingURL=openapi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAEA,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAa3D"}
@@ -0,0 +1,18 @@
1
+ import { readFile } from "node:fs/promises";
2
+ export async function readOpenApiContract() {
3
+ const candidates = [
4
+ new URL("../../contracts/openapi.yaml", import.meta.url),
5
+ new URL("../contracts/openapi.yaml", import.meta.url),
6
+ ];
7
+ for (const candidate of candidates) {
8
+ try {
9
+ return await readFile(candidate, "utf8");
10
+ }
11
+ catch (error) {
12
+ if (error.code !== "ENOENT")
13
+ throw error;
14
+ }
15
+ }
16
+ throw new Error("the packaged SpicyAPI OpenAPI contract could not be found");
17
+ }
18
+ //# sourceMappingURL=openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openapi.js","sourceRoot":"","sources":["../../src/openapi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,mBAAmB;IACvC,MAAM,UAAU,GAAG;QACjB,IAAI,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACxD,IAAI,GAAG,CAAC,2BAA2B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;KACtD,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QACtE,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,41 @@
1
+ import type { ApiModel, Balance, BillableRequestOptions, CreateTaskInput, CreateTaskResult, DownloadTicket, ListModelsOptions, ModelList, RequestOptions, RetryTaskResult, ServiceStatus, SpicyClientOptions, TaskRecord, UploadBytesOptions, UploadContentType, UploadedFile, UploadFileOptions, UploadTicket, WaitForTaskOptions } from "./types.js";
2
+ export declare const DEFAULT_API_BASE_URL = "https://api.spicyapi.ai/api/v1";
3
+ export declare const DEFAULT_SERVICE_BASE_URL = "https://api.spicyapi.ai";
4
+ export declare const DEFAULT_TIMEOUT_MS = 30000;
5
+ export declare const DEFAULT_WAIT_TIMEOUT_MS: number;
6
+ export declare const DEFAULT_WAIT_INTERVAL_MS = 2000;
7
+ export declare const MAX_API_RESPONSE_BYTES: number;
8
+ export declare class SpicyClient {
9
+ private readonly apiKey;
10
+ private readonly apiBaseUrl;
11
+ private readonly serviceBaseUrl;
12
+ private readonly timeoutMs;
13
+ private readonly maxRetries;
14
+ private readonly retryBaseDelayMs;
15
+ private readonly maxRetryDelayMs;
16
+ private readonly transport;
17
+ private readonly now;
18
+ private readonly random;
19
+ private readonly sleep;
20
+ constructor(options?: SpicyClientOptions);
21
+ getStatus(options?: RequestOptions): Promise<ServiceStatus>;
22
+ listModels(options?: ListModelsOptions): Promise<ModelList>;
23
+ getModel(model: string, options?: RequestOptions): Promise<ApiModel>;
24
+ getBalance(options?: RequestOptions): Promise<Balance>;
25
+ getTask(taskId: string, options?: RequestOptions): Promise<TaskRecord>;
26
+ createTask(payload: CreateTaskInput, options?: BillableRequestOptions): Promise<CreateTaskResult>;
27
+ retryTask(taskId: string, options?: BillableRequestOptions): Promise<RetryTaskResult>;
28
+ waitForTask(taskId: string, options?: WaitForTaskOptions): Promise<TaskRecord>;
29
+ createUploadUrl(contentType: UploadContentType, bytes: number, options?: RequestOptions): Promise<UploadTicket>;
30
+ commitUploadedFile(fileId: string, options?: RequestOptions): Promise<UploadedFile>;
31
+ uploadBytes(data: Uint8Array, options: UploadBytesOptions): Promise<UploadedFile>;
32
+ uploadFile(filePath: string, options?: UploadFileOptions): Promise<UploadedFile>;
33
+ createDownloadUrl(taskId: string, key?: string, options?: RequestOptions): Promise<DownloadTicket>;
34
+ private idempotencyHeaders;
35
+ private probe;
36
+ private apiRequest;
37
+ private fetchWithRetry;
38
+ private fetchAttempt;
39
+ private retryDelay;
40
+ }
41
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/sdk/client.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,QAAQ,EACR,OAAO,EACP,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,SAAS,EAET,cAAc,EACd,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,oBAAoB,mCAAmC,CAAC;AACrE,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AAClE,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,uBAAuB,QAAc,CAAC;AACnD,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,eAAO,MAAM,sBAAsB,QAAoB,CAAC;AA+GxD,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAqB;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;IACnC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAe;IACtC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgE;gBAE1E,OAAO,GAAE,kBAAuB;IAoCtC,SAAS,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAarE,UAAU,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IAiB/D,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAQxE,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAO1D,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,UAAU,CAAC;IAQ1E,UAAU,CACR,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,sBAA2B,GACnC,OAAO,CAAC,gBAAgB,CAAC;IAU5B,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,sBAA2B,GAAG,OAAO,CAAC,eAAe,CAAC;IAUnF,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAwBxF,eAAe,CACb,WAAW,EAAE,iBAAiB,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,YAAY,CAAC;IAOxB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQjF,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAuBjF,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,YAAY,CAAC;IAQ1F,iBAAiB,CACf,MAAM,EAAE,MAAM,EACd,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,cAAc,CAAC;IAU1B,OAAO,CAAC,kBAAkB;YAOZ,KAAK;YAsBL,UAAU;YAkEV,cAAc;YA4Bd,YAAY;IA8B1B,OAAO,CAAC,UAAU;CAMnB"}
@@ -0,0 +1,407 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { extname } from "node:path";
3
+ import { SpicyApiError, SpicyTimeoutError, SpicyTransportError, SpicyUploadError, SpicyWaitTimeoutError, } from "./errors.js";
4
+ export const DEFAULT_API_BASE_URL = "https://api.spicyapi.ai/api/v1";
5
+ export const DEFAULT_SERVICE_BASE_URL = "https://api.spicyapi.ai";
6
+ export const DEFAULT_TIMEOUT_MS = 30_000;
7
+ export const DEFAULT_WAIT_TIMEOUT_MS = 10 * 60_000;
8
+ export const DEFAULT_WAIT_INTERVAL_MS = 2_000;
9
+ export const MAX_API_RESPONSE_BYTES = 4 * 1_024 * 1_024;
10
+ const TERMINAL_STATES = new Set(["succeeded", "failed", "canceled", "expired"]);
11
+ const RETRYABLE_STATUSES = new Set([408, 429, 500, 502, 503, 504]);
12
+ const CONTENT_TYPES_BY_EXTENSION = {
13
+ ".gif": "image/gif",
14
+ ".jpeg": "image/jpeg",
15
+ ".jpg": "image/jpeg",
16
+ ".png": "image/png",
17
+ ".webp": "image/webp",
18
+ };
19
+ function isLoopback(hostname) {
20
+ const normalized = hostname.replace(/^\[|\]$/g, "").toLowerCase();
21
+ return normalized === "localhost" || normalized === "::1" || normalized.startsWith("127.");
22
+ }
23
+ function normalizeBaseUrl(value, label) {
24
+ let url;
25
+ try {
26
+ url = new URL(value);
27
+ }
28
+ catch {
29
+ throw new TypeError(`${label} must be an absolute URL`);
30
+ }
31
+ if (url.protocol !== "https:" && !(url.protocol === "http:" && isLoopback(url.hostname))) {
32
+ throw new TypeError(`${label} must use HTTPS; HTTP is allowed only for loopback development`);
33
+ }
34
+ if (url.username || url.password)
35
+ throw new TypeError(`${label} must not contain credentials`);
36
+ if (url.search || url.hash)
37
+ throw new TypeError(`${label} must not contain a query or fragment`);
38
+ return url.toString().replace(/\/$/, "");
39
+ }
40
+ function requireIdentifier(value, label) {
41
+ const normalized = value.trim();
42
+ if (!normalized)
43
+ throw new TypeError(`${label} is required`);
44
+ if (normalized.includes("\r") || normalized.includes("\n")) {
45
+ throw new TypeError(`${label} must not contain line breaks`);
46
+ }
47
+ return normalized;
48
+ }
49
+ function parseIntegerHeader(value) {
50
+ if (value === null || !/^\d+$/.test(value))
51
+ return undefined;
52
+ const parsed = Number(value);
53
+ return Number.isSafeInteger(parsed) ? parsed : undefined;
54
+ }
55
+ function parseRetryAfter(value, now) {
56
+ if (value === null)
57
+ return undefined;
58
+ if (/^\d+(?:\.\d+)?$/.test(value))
59
+ return Math.max(0, Number(value) * 1_000);
60
+ const date = Date.parse(value);
61
+ return Number.isNaN(date) ? undefined : Math.max(0, date - now);
62
+ }
63
+ function abortError(signal) {
64
+ return signal.reason instanceof Error
65
+ ? signal.reason
66
+ : new SpicyTransportError("operation canceled");
67
+ }
68
+ function defaultSleep(milliseconds, signal) {
69
+ if (signal?.aborted)
70
+ return Promise.reject(abortError(signal));
71
+ return new Promise((resolve, reject) => {
72
+ const timer = setTimeout(resolve, milliseconds);
73
+ signal?.addEventListener("abort", () => {
74
+ clearTimeout(timer);
75
+ reject(abortError(signal));
76
+ }, { once: true });
77
+ });
78
+ }
79
+ async function readBoundedText(response) {
80
+ const declared = parseIntegerHeader(response.headers.get("content-length"));
81
+ if (declared !== undefined && declared > MAX_API_RESPONSE_BYTES) {
82
+ throw new SpicyTransportError(`API response exceeded ${MAX_API_RESPONSE_BYTES} bytes`);
83
+ }
84
+ const bytes = new Uint8Array(await response.arrayBuffer());
85
+ if (bytes.byteLength > MAX_API_RESPONSE_BYTES) {
86
+ throw new SpicyTransportError(`API response exceeded ${MAX_API_RESPONSE_BYTES} bytes`);
87
+ }
88
+ return new TextDecoder().decode(bytes);
89
+ }
90
+ function inferContentType(filePath) {
91
+ const contentType = CONTENT_TYPES_BY_EXTENSION[extname(filePath).toLowerCase()];
92
+ if (!contentType) {
93
+ throw new TypeError("contentType is required unless the file extension is jpg, jpeg, png, webp, or gif");
94
+ }
95
+ return contentType;
96
+ }
97
+ export class SpicyClient {
98
+ apiKey;
99
+ apiBaseUrl;
100
+ serviceBaseUrl;
101
+ timeoutMs;
102
+ maxRetries;
103
+ retryBaseDelayMs;
104
+ maxRetryDelayMs;
105
+ transport;
106
+ now;
107
+ random;
108
+ sleep;
109
+ constructor(options = {}) {
110
+ const configuredKey = options.apiKey ?? process.env.SPICY_API_KEY;
111
+ this.apiKey = configuredKey?.trim() || undefined;
112
+ this.apiBaseUrl = normalizeBaseUrl(options.apiBaseUrl ?? process.env.SPICY_API_BASE_URL ?? DEFAULT_API_BASE_URL, "apiBaseUrl");
113
+ this.serviceBaseUrl = normalizeBaseUrl(options.serviceBaseUrl ?? process.env.SPICY_SERVICE_BASE_URL ?? DEFAULT_SERVICE_BASE_URL, "serviceBaseUrl");
114
+ this.timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
115
+ this.maxRetries = options.maxRetries ?? 2;
116
+ this.retryBaseDelayMs = options.retryBaseDelayMs ?? 250;
117
+ this.maxRetryDelayMs = options.maxRetryDelayMs ?? 30_000;
118
+ this.transport = options.fetch ?? globalThis.fetch;
119
+ this.now = options.now ?? Date.now;
120
+ this.random = options.random ?? Math.random;
121
+ this.sleep = options.sleep ?? defaultSleep;
122
+ if (!Number.isInteger(this.timeoutMs) || this.timeoutMs < 1 || this.timeoutMs > 120_000) {
123
+ throw new TypeError("timeoutMs must be an integer between 1 and 120000");
124
+ }
125
+ if (!Number.isInteger(this.maxRetries) || this.maxRetries < 0 || this.maxRetries > 5) {
126
+ throw new TypeError("maxRetries must be an integer between 0 and 5");
127
+ }
128
+ if (!Number.isInteger(this.retryBaseDelayMs) || this.retryBaseDelayMs < 1) {
129
+ throw new TypeError("retryBaseDelayMs must be a positive integer");
130
+ }
131
+ if (!Number.isInteger(this.maxRetryDelayMs) || this.maxRetryDelayMs < this.retryBaseDelayMs) {
132
+ throw new TypeError("maxRetryDelayMs must be an integer no smaller than retryBaseDelayMs");
133
+ }
134
+ if (typeof this.transport !== "function")
135
+ throw new TypeError("a fetch implementation is required");
136
+ }
137
+ async getStatus(options = {}) {
138
+ const [health, readiness] = await Promise.all([
139
+ this.probe("/healthz", options.signal),
140
+ this.probe("/readyz", options.signal),
141
+ ]);
142
+ return {
143
+ operational: health.ok && readiness.ok,
144
+ health,
145
+ readiness,
146
+ checkedAt: new Date(this.now()).toISOString(),
147
+ };
148
+ }
149
+ listModels(options = {}) {
150
+ const query = new URLSearchParams();
151
+ if (options.modality !== undefined)
152
+ query.set("modality", options.modality);
153
+ if (options.provider !== undefined)
154
+ query.set("provider", options.provider);
155
+ if (options.task !== undefined)
156
+ query.set("task", options.task);
157
+ if (options.search !== undefined)
158
+ query.set("search", options.search);
159
+ if (options.includeSchema !== undefined)
160
+ query.set("includeSchema", options.includeSchema ? "1" : "0");
161
+ if (options.includeExamples !== undefined)
162
+ query.set("includeExamples", options.includeExamples ? "1" : "0");
163
+ const suffix = query.size === 0 ? "" : `?${query.toString()}`;
164
+ return this.apiRequest("GET", `/models${suffix}`, {
165
+ retryable: true,
166
+ signal: options.signal,
167
+ });
168
+ }
169
+ getModel(model, options = {}) {
170
+ const value = encodeURIComponent(requireIdentifier(model, "model"));
171
+ return this.apiRequest("GET", `/models/${value}`, {
172
+ retryable: true,
173
+ signal: options.signal,
174
+ });
175
+ }
176
+ getBalance(options = {}) {
177
+ return this.apiRequest("GET", "/chat/credit", {
178
+ retryable: true,
179
+ signal: options.signal,
180
+ });
181
+ }
182
+ getTask(taskId, options = {}) {
183
+ const query = new URLSearchParams({ taskId: requireIdentifier(taskId, "taskId") });
184
+ return this.apiRequest("GET", `/jobs/recordInfo?${query.toString()}`, {
185
+ retryable: true,
186
+ signal: options.signal,
187
+ });
188
+ }
189
+ createTask(payload, options = {}) {
190
+ const headers = this.idempotencyHeaders(options.idempotencyKey);
191
+ return this.apiRequest("POST", "/jobs/createTask", {
192
+ body: { ...payload, mature: payload.mature ?? false },
193
+ headers,
194
+ retryable: headers !== undefined,
195
+ signal: options.signal,
196
+ });
197
+ }
198
+ retryTask(taskId, options = {}) {
199
+ const headers = this.idempotencyHeaders(options.idempotencyKey);
200
+ return this.apiRequest("POST", "/jobs/retry", {
201
+ body: { taskId: requireIdentifier(taskId, "taskId") },
202
+ headers,
203
+ retryable: headers !== undefined,
204
+ signal: options.signal,
205
+ });
206
+ }
207
+ async waitForTask(taskId, options = {}) {
208
+ const id = requireIdentifier(taskId, "taskId");
209
+ const intervalMs = options.intervalMs ?? DEFAULT_WAIT_INTERVAL_MS;
210
+ const timeoutMs = options.timeoutMs ?? DEFAULT_WAIT_TIMEOUT_MS;
211
+ if (!Number.isInteger(intervalMs) || intervalMs < 100 || intervalMs > 60_000) {
212
+ throw new TypeError("intervalMs must be an integer between 100 and 60000");
213
+ }
214
+ if (!Number.isInteger(timeoutMs) || timeoutMs < 1 || timeoutMs > 24 * 60 * 60_000) {
215
+ throw new TypeError("timeoutMs must be an integer between 1 and 86400000");
216
+ }
217
+ const startedAt = this.now();
218
+ let lastTask;
219
+ while (this.now() - startedAt <= timeoutMs) {
220
+ lastTask = await this.getTask(id, { signal: options.signal });
221
+ await options.onUpdate?.(lastTask);
222
+ if (TERMINAL_STATES.has(lastTask.state))
223
+ return lastTask;
224
+ const remaining = timeoutMs - (this.now() - startedAt);
225
+ if (remaining <= 0)
226
+ break;
227
+ await this.sleep(Math.min(intervalMs, remaining), options.signal);
228
+ }
229
+ throw new SpicyWaitTimeoutError(id, timeoutMs, lastTask);
230
+ }
231
+ createUploadUrl(contentType, bytes, options = {}) {
232
+ return this.apiRequest("POST", "/common/upload-url", {
233
+ body: { contentType, bytes },
234
+ signal: options.signal,
235
+ });
236
+ }
237
+ commitUploadedFile(fileId, options = {}) {
238
+ const id = encodeURIComponent(requireIdentifier(fileId, "fileId"));
239
+ return this.apiRequest("POST", `/files/${id}/commit`, {
240
+ retryable: true,
241
+ signal: options.signal,
242
+ });
243
+ }
244
+ async uploadBytes(data, options) {
245
+ const ticket = await this.createUploadUrl(options.contentType, data.byteLength, options);
246
+ const response = await this.fetchWithRetry(ticket.uploadUrl, {
247
+ method: ticket.method,
248
+ headers: ticket.headers,
249
+ body: Uint8Array.from(data).buffer,
250
+ }, false, options.signal);
251
+ if (!response.ok) {
252
+ await response.body?.cancel();
253
+ throw new SpicyUploadError(`presigned upload failed with HTTP ${response.status}`, response.status);
254
+ }
255
+ await response.body?.cancel();
256
+ return this.commitUploadedFile(ticket.fileId, options);
257
+ }
258
+ async uploadFile(filePath, options = {}) {
259
+ const data = await readFile(filePath);
260
+ return this.uploadBytes(data, {
261
+ contentType: options.contentType ?? inferContentType(filePath),
262
+ ...(options.signal === undefined ? {} : { signal: options.signal }),
263
+ });
264
+ }
265
+ createDownloadUrl(taskId, key, options = {}) {
266
+ return this.apiRequest("POST", "/common/download-url", {
267
+ body: {
268
+ taskId: requireIdentifier(taskId, "taskId"),
269
+ ...(key === undefined ? {} : { key }),
270
+ },
271
+ signal: options.signal,
272
+ });
273
+ }
274
+ idempotencyHeaders(idempotencyKey) {
275
+ if (idempotencyKey === undefined)
276
+ return undefined;
277
+ return { "Idempotency-Key": requireIdentifier(idempotencyKey, "idempotencyKey") };
278
+ }
279
+ async probe(path, signal) {
280
+ try {
281
+ const response = await this.fetchWithRetry(`${this.serviceBaseUrl}${path}`, { method: "GET", headers: { Accept: "application/json, text/plain;q=0.9" } }, true, signal);
282
+ const body = (await readBoundedText(response)).trim().slice(0, 512);
283
+ return { path, ok: response.ok, status: response.status, body };
284
+ }
285
+ catch (error) {
286
+ if (signal?.aborted)
287
+ throw error;
288
+ return {
289
+ path,
290
+ ok: false,
291
+ status: 0,
292
+ body: "",
293
+ error: error instanceof Error ? error.message : "unknown probe error",
294
+ };
295
+ }
296
+ }
297
+ async apiRequest(method, path, configuration = {}) {
298
+ if (!this.apiKey)
299
+ throw new TypeError("SPICY_API_KEY is required for authenticated API operations");
300
+ const response = await this.fetchWithRetry(`${this.apiBaseUrl}${path}`, {
301
+ method,
302
+ headers: {
303
+ Accept: "application/json",
304
+ Authorization: `Bearer ${this.apiKey}`,
305
+ "User-Agent": "SpicyAPI-Devkit/0.1.0",
306
+ ...(configuration.body === undefined ? {} : { "Content-Type": "application/json" }),
307
+ ...configuration.headers,
308
+ },
309
+ ...(configuration.body === undefined ? {} : { body: JSON.stringify(configuration.body) }),
310
+ }, configuration.retryable ?? false, configuration.signal);
311
+ const text = await readBoundedText(response);
312
+ let parsed;
313
+ try {
314
+ parsed = JSON.parse(text);
315
+ }
316
+ catch {
317
+ throw new SpicyApiError("API response was not valid JSON", { status: response.status });
318
+ }
319
+ if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) {
320
+ throw new SpicyApiError("API response was not a JSON object", { status: response.status });
321
+ }
322
+ const envelope = parsed;
323
+ const code = typeof envelope.code === "number" ? envelope.code : undefined;
324
+ const requestId = typeof envelope.request_id === "string" ? envelope.request_id : undefined;
325
+ if (!response.ok || code !== 200) {
326
+ const retryAfterMs = parseRetryAfter(response.headers.get("retry-after"), this.now());
327
+ const rateLimitLimit = parseIntegerHeader(response.headers.get("x-ratelimit-limit"));
328
+ const rateLimitRemaining = parseIntegerHeader(response.headers.get("x-ratelimit-remaining"));
329
+ throw new SpicyApiError(typeof envelope.msg === "string" && envelope.msg
330
+ ? envelope.msg
331
+ : `request failed with HTTP ${response.status}`, {
332
+ status: response.status,
333
+ ...(code === undefined ? {} : { code }),
334
+ ...(requestId === undefined ? {} : { requestId }),
335
+ ...(retryAfterMs === undefined ? {} : { retryAfterSeconds: retryAfterMs / 1_000 }),
336
+ ...(rateLimitLimit === undefined ? {} : { rateLimitLimit }),
337
+ ...(rateLimitRemaining === undefined ? {} : { rateLimitRemaining }),
338
+ });
339
+ }
340
+ if (!("data" in envelope)) {
341
+ throw new SpicyApiError("successful API response omitted data", {
342
+ status: response.status,
343
+ ...(code === undefined ? {} : { code }),
344
+ ...(requestId === undefined ? {} : { requestId }),
345
+ });
346
+ }
347
+ return envelope.data;
348
+ }
349
+ async fetchWithRetry(url, init, retryable, signal) {
350
+ let lastError;
351
+ for (let attempt = 0; attempt <= this.maxRetries; attempt += 1) {
352
+ try {
353
+ const response = await this.fetchAttempt(url, init, signal);
354
+ if (!retryable || !RETRYABLE_STATUSES.has(response.status) || attempt === this.maxRetries) {
355
+ return response;
356
+ }
357
+ const retryAfter = parseRetryAfter(response.headers.get("retry-after"), this.now());
358
+ await response.body?.cancel();
359
+ await this.sleep(this.retryDelay(attempt, retryAfter), signal);
360
+ }
361
+ catch (error) {
362
+ if (signal?.aborted)
363
+ throw error;
364
+ lastError = error;
365
+ if (!retryable || attempt === this.maxRetries)
366
+ throw error;
367
+ await this.sleep(this.retryDelay(attempt), signal);
368
+ }
369
+ }
370
+ throw new SpicyTransportError("network request failed", {
371
+ cause: lastError instanceof Error ? lastError : undefined,
372
+ });
373
+ }
374
+ async fetchAttempt(url, init, signal) {
375
+ const controller = new AbortController();
376
+ const onAbort = () => controller.abort(signal?.reason);
377
+ signal?.addEventListener("abort", onAbort, { once: true });
378
+ const timer = setTimeout(() => controller.abort(new SpicyTimeoutError(this.timeoutMs)), this.timeoutMs);
379
+ try {
380
+ return await this.transport(url, { ...init, signal: controller.signal });
381
+ }
382
+ catch (error) {
383
+ if (signal?.aborted) {
384
+ throw signal.reason instanceof Error
385
+ ? signal.reason
386
+ : new SpicyTransportError("operation canceled");
387
+ }
388
+ if (controller.signal.reason instanceof SpicyTimeoutError)
389
+ throw controller.signal.reason;
390
+ throw new SpicyTransportError("network request failed", {
391
+ cause: error instanceof Error ? error : undefined,
392
+ });
393
+ }
394
+ finally {
395
+ clearTimeout(timer);
396
+ signal?.removeEventListener("abort", onAbort);
397
+ }
398
+ }
399
+ retryDelay(attempt, retryAfter) {
400
+ if (retryAfter !== undefined)
401
+ return Math.min(retryAfter, this.maxRetryDelayMs);
402
+ const exponential = this.retryBaseDelayMs * 2 ** attempt;
403
+ const jitter = 0.75 + this.random() * 0.5;
404
+ return Math.min(Math.round(exponential * jitter), this.maxRetryDelayMs);
405
+ }
406
+ }
407
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/sdk/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ import type { TaskRecord } from "./types.js";
2
+ export interface SpicyApiErrorOptions {
3
+ status: number;
4
+ code?: number | undefined;
5
+ requestId?: string | undefined;
6
+ retryAfterSeconds?: number | undefined;
7
+ rateLimitLimit?: number | undefined;
8
+ rateLimitRemaining?: number | undefined;
9
+ }
10
+ export declare class SpicyApiError extends Error {
11
+ readonly status: number;
12
+ readonly code: number | undefined;
13
+ readonly requestId: string | undefined;
14
+ readonly retryAfterSeconds: number | undefined;
15
+ readonly rateLimitLimit: number | undefined;
16
+ readonly rateLimitRemaining: number | undefined;
17
+ constructor(message: string, options: SpicyApiErrorOptions);
18
+ }
19
+ export declare class SpicyTransportError extends Error {
20
+ constructor(message: string, options?: ErrorOptions);
21
+ }
22
+ export declare class SpicyTimeoutError extends SpicyTransportError {
23
+ readonly timeoutMs: number;
24
+ constructor(timeoutMs: number);
25
+ }
26
+ export declare class SpicyWaitTimeoutError extends Error {
27
+ readonly taskId: string;
28
+ readonly timeoutMs: number;
29
+ readonly lastTask: TaskRecord | undefined;
30
+ constructor(taskId: string, timeoutMs: number, lastTask?: TaskRecord);
31
+ }
32
+ export declare class SpicyUploadError extends Error {
33
+ readonly status: number;
34
+ constructor(message: string, status: number);
35
+ }
36
+ //# sourceMappingURL=errors.d.ts.map