@liqhtworks/sophon-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.
- package/.github/workflows/publish.yml +56 -0
- package/.openapi-generator/FILES +73 -0
- package/.openapi-generator/VERSION +1 -0
- package/.openapi-generator-ignore +23 -0
- package/LICENSE +12 -0
- package/README.md +164 -0
- package/dist/apis/DownloadsApi.d.ts +63 -0
- package/dist/apis/DownloadsApi.js +58 -0
- package/dist/apis/HealthApi.d.ts +92 -0
- package/dist/apis/HealthApi.js +85 -0
- package/dist/apis/JobsApi.d.ts +225 -0
- package/dist/apis/JobsApi.js +245 -0
- package/dist/apis/UploadsApi.d.ts +228 -0
- package/dist/apis/UploadsApi.js +255 -0
- package/dist/apis/WebhooksApi.d.ts +138 -0
- package/dist/apis/WebhooksApi.js +152 -0
- package/dist/apis/index.d.ts +5 -0
- package/dist/apis/index.js +23 -0
- package/dist/esm/apis/DownloadsApi.d.ts +63 -0
- package/dist/esm/apis/DownloadsApi.js +54 -0
- package/dist/esm/apis/HealthApi.d.ts +92 -0
- package/dist/esm/apis/HealthApi.js +81 -0
- package/dist/esm/apis/JobsApi.d.ts +225 -0
- package/dist/esm/apis/JobsApi.js +241 -0
- package/dist/esm/apis/UploadsApi.d.ts +228 -0
- package/dist/esm/apis/UploadsApi.js +251 -0
- package/dist/esm/apis/WebhooksApi.d.ts +138 -0
- package/dist/esm/apis/WebhooksApi.js +148 -0
- package/dist/esm/apis/index.d.ts +5 -0
- package/dist/esm/apis/index.js +7 -0
- package/dist/esm/helpers/index.d.ts +3 -0
- package/dist/esm/helpers/index.js +3 -0
- package/dist/esm/helpers/jobs.d.ts +48 -0
- package/dist/esm/helpers/jobs.js +61 -0
- package/dist/esm/helpers/uploads.d.ts +71 -0
- package/dist/esm/helpers/uploads.js +146 -0
- package/dist/esm/helpers/webhooks.d.ts +23 -0
- package/dist/esm/helpers/webhooks.js +84 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/models/CompleteUploadResponse.d.ts +57 -0
- package/dist/esm/models/CompleteUploadResponse.js +63 -0
- package/dist/esm/models/CreateJobOutputOptions.d.ts +55 -0
- package/dist/esm/models/CreateJobOutputOptions.js +46 -0
- package/dist/esm/models/CreateJobRequest.d.ts +61 -0
- package/dist/esm/models/CreateJobRequest.js +56 -0
- package/dist/esm/models/CreateUploadRequest.d.ts +44 -0
- package/dist/esm/models/CreateUploadRequest.js +51 -0
- package/dist/esm/models/CreateUploadResponse.d.ts +52 -0
- package/dist/esm/models/CreateUploadResponse.js +55 -0
- package/dist/esm/models/CreateWebhookRequest.d.ts +40 -0
- package/dist/esm/models/CreateWebhookRequest.js +45 -0
- package/dist/esm/models/ErrorBody.d.ts +72 -0
- package/dist/esm/models/ErrorBody.js +74 -0
- package/dist/esm/models/ErrorEnvelope.d.ts +33 -0
- package/dist/esm/models/ErrorEnvelope.js +44 -0
- package/dist/esm/models/JobOutputInfo.d.ts +95 -0
- package/dist/esm/models/JobOutputInfo.js +72 -0
- package/dist/esm/models/JobProfile.d.ts +49 -0
- package/dist/esm/models/JobProfile.js +69 -0
- package/dist/esm/models/JobProgress.d.ts +75 -0
- package/dist/esm/models/JobProgress.js +60 -0
- package/dist/esm/models/JobResponse.d.ts +134 -0
- package/dist/esm/models/JobResponse.js +94 -0
- package/dist/esm/models/JobSourceInfo.d.ts +62 -0
- package/dist/esm/models/JobSourceInfo.js +53 -0
- package/dist/esm/models/JobSourceType.d.ts +24 -0
- package/dist/esm/models/JobSourceType.js +44 -0
- package/dist/esm/models/JobStatus.d.ts +31 -0
- package/dist/esm/models/JobStatus.js +51 -0
- package/dist/esm/models/ListJobsResponse.d.ts +45 -0
- package/dist/esm/models/ListJobsResponse.js +50 -0
- package/dist/esm/models/OutputContainer.d.ts +27 -0
- package/dist/esm/models/OutputContainer.js +47 -0
- package/dist/esm/models/ReadyResponse.d.ts +38 -0
- package/dist/esm/models/ReadyResponse.js +45 -0
- package/dist/esm/models/UploadJobSource.d.ts +39 -0
- package/dist/esm/models/UploadJobSource.js +48 -0
- package/dist/esm/models/UploadPartResponse.d.ts +38 -0
- package/dist/esm/models/UploadPartResponse.js +47 -0
- package/dist/esm/models/UploadStatusResponse.d.ts +96 -0
- package/dist/esm/models/UploadStatusResponse.js +80 -0
- package/dist/esm/models/WebhookDeliveryPayload.d.ts +85 -0
- package/dist/esm/models/WebhookDeliveryPayload.js +83 -0
- package/dist/esm/models/WebhookListItem.d.ts +50 -0
- package/dist/esm/models/WebhookListItem.js +55 -0
- package/dist/esm/models/WebhookListResponse.d.ts +33 -0
- package/dist/esm/models/WebhookListResponse.js +44 -0
- package/dist/esm/models/WebhookResponse.d.ts +58 -0
- package/dist/esm/models/WebhookResponse.js +59 -0
- package/dist/esm/models/index.d.ts +25 -0
- package/dist/esm/models/index.js +27 -0
- package/dist/esm/runtime.d.ts +184 -0
- package/dist/esm/runtime.js +348 -0
- package/dist/helpers/index.d.ts +3 -0
- package/dist/helpers/index.js +19 -0
- package/dist/helpers/jobs.d.ts +48 -0
- package/dist/helpers/jobs.js +67 -0
- package/dist/helpers/uploads.d.ts +71 -0
- package/dist/helpers/uploads.js +149 -0
- package/dist/helpers/webhooks.d.ts +23 -0
- package/dist/helpers/webhooks.js +89 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +22 -0
- package/dist/models/CompleteUploadResponse.d.ts +57 -0
- package/dist/models/CompleteUploadResponse.js +71 -0
- package/dist/models/CreateJobOutputOptions.d.ts +55 -0
- package/dist/models/CreateJobOutputOptions.js +53 -0
- package/dist/models/CreateJobRequest.d.ts +61 -0
- package/dist/models/CreateJobRequest.js +63 -0
- package/dist/models/CreateUploadRequest.d.ts +44 -0
- package/dist/models/CreateUploadRequest.js +58 -0
- package/dist/models/CreateUploadResponse.d.ts +52 -0
- package/dist/models/CreateUploadResponse.js +62 -0
- package/dist/models/CreateWebhookRequest.d.ts +40 -0
- package/dist/models/CreateWebhookRequest.js +52 -0
- package/dist/models/ErrorBody.d.ts +72 -0
- package/dist/models/ErrorBody.js +82 -0
- package/dist/models/ErrorEnvelope.d.ts +33 -0
- package/dist/models/ErrorEnvelope.js +51 -0
- package/dist/models/JobOutputInfo.d.ts +95 -0
- package/dist/models/JobOutputInfo.js +80 -0
- package/dist/models/JobProfile.d.ts +49 -0
- package/dist/models/JobProfile.js +77 -0
- package/dist/models/JobProgress.d.ts +75 -0
- package/dist/models/JobProgress.js +67 -0
- package/dist/models/JobResponse.d.ts +134 -0
- package/dist/models/JobResponse.js +101 -0
- package/dist/models/JobSourceInfo.d.ts +62 -0
- package/dist/models/JobSourceInfo.js +60 -0
- package/dist/models/JobSourceType.d.ts +24 -0
- package/dist/models/JobSourceType.js +52 -0
- package/dist/models/JobStatus.d.ts +31 -0
- package/dist/models/JobStatus.js +59 -0
- package/dist/models/ListJobsResponse.d.ts +45 -0
- package/dist/models/ListJobsResponse.js +57 -0
- package/dist/models/OutputContainer.d.ts +27 -0
- package/dist/models/OutputContainer.js +55 -0
- package/dist/models/ReadyResponse.d.ts +38 -0
- package/dist/models/ReadyResponse.js +52 -0
- package/dist/models/UploadJobSource.d.ts +39 -0
- package/dist/models/UploadJobSource.js +55 -0
- package/dist/models/UploadPartResponse.d.ts +38 -0
- package/dist/models/UploadPartResponse.js +54 -0
- package/dist/models/UploadStatusResponse.d.ts +96 -0
- package/dist/models/UploadStatusResponse.js +88 -0
- package/dist/models/WebhookDeliveryPayload.d.ts +85 -0
- package/dist/models/WebhookDeliveryPayload.js +91 -0
- package/dist/models/WebhookListItem.d.ts +50 -0
- package/dist/models/WebhookListItem.js +62 -0
- package/dist/models/WebhookListResponse.d.ts +33 -0
- package/dist/models/WebhookListResponse.js +51 -0
- package/dist/models/WebhookResponse.d.ts +58 -0
- package/dist/models/WebhookResponse.js +66 -0
- package/dist/models/index.d.ts +25 -0
- package/dist/models/index.js +43 -0
- package/dist/runtime.d.ts +184 -0
- package/dist/runtime.js +364 -0
- package/docs/CompleteUploadResponse.md +40 -0
- package/docs/CreateJobOutputOptions.md +39 -0
- package/docs/CreateJobRequest.md +42 -0
- package/docs/CreateUploadRequest.md +38 -0
- package/docs/CreateUploadResponse.md +40 -0
- package/docs/CreateWebhookRequest.md +36 -0
- package/docs/DownloadsApi.md +78 -0
- package/docs/ErrorBody.md +40 -0
- package/docs/ErrorEnvelope.md +34 -0
- package/docs/HealthApi.md +129 -0
- package/docs/JobOutputInfo.md +50 -0
- package/docs/JobProfile.md +33 -0
- package/docs/JobProgress.md +48 -0
- package/docs/JobResponse.md +62 -0
- package/docs/JobSourceInfo.md +44 -0
- package/docs/JobSourceType.md +33 -0
- package/docs/JobStatus.md +33 -0
- package/docs/JobsApi.md +407 -0
- package/docs/ListJobsResponse.md +38 -0
- package/docs/OutputContainer.md +33 -0
- package/docs/ReadyResponse.md +36 -0
- package/docs/UploadJobSource.md +37 -0
- package/docs/UploadPartResponse.md +36 -0
- package/docs/UploadStatusResponse.md +50 -0
- package/docs/UploadsApi.md +415 -0
- package/docs/WebhookDeliveryPayload.md +45 -0
- package/docs/WebhookEventsApi.md +91 -0
- package/docs/WebhookListItem.md +40 -0
- package/docs/WebhookListResponse.md +34 -0
- package/docs/WebhookResponse.md +42 -0
- package/docs/WebhooksApi.md +235 -0
- package/package.json +24 -0
- package/src/apis/DownloadsApi.ts +114 -0
- package/src/apis/HealthApi.ts +160 -0
- package/src/apis/JobsApi.ts +491 -0
- package/src/apis/UploadsApi.ts +522 -0
- package/src/apis/WebhooksApi.ts +298 -0
- package/src/apis/index.ts +7 -0
- package/src/helpers/index.ts +3 -0
- package/src/helpers/jobs.ts +112 -0
- package/src/helpers/uploads.ts +243 -0
- package/src/helpers/webhooks.ts +134 -0
- package/src/index.ts +7 -0
- package/src/models/CompleteUploadResponse.ts +102 -0
- package/src/models/CreateJobOutputOptions.ts +101 -0
- package/src/models/CreateJobRequest.ts +123 -0
- package/src/models/CreateUploadRequest.ts +84 -0
- package/src/models/CreateUploadResponse.ts +95 -0
- package/src/models/CreateWebhookRequest.ts +76 -0
- package/src/models/ErrorBody.ts +116 -0
- package/src/models/ErrorEnvelope.ts +74 -0
- package/src/models/JobOutputInfo.ts +149 -0
- package/src/models/JobProfile.ts +76 -0
- package/src/models/JobProgress.ts +133 -0
- package/src/models/JobResponse.ts +236 -0
- package/src/models/JobSourceInfo.ts +106 -0
- package/src/models/JobSourceType.ts +51 -0
- package/src/models/JobStatus.ts +58 -0
- package/src/models/ListJobsResponse.ts +91 -0
- package/src/models/OutputContainer.ts +54 -0
- package/src/models/ReadyResponse.ts +74 -0
- package/src/models/UploadJobSource.ts +85 -0
- package/src/models/UploadPartResponse.ts +75 -0
- package/src/models/UploadStatusResponse.ts +153 -0
- package/src/models/WebhookDeliveryPayload.ts +134 -0
- package/src/models/WebhookListItem.ts +93 -0
- package/src/models/WebhookListResponse.ts +74 -0
- package/src/models/WebhookResponse.ts +104 -0
- package/src/models/index.ts +27 -0
- package/src/runtime.ts +450 -0
- package/tsconfig.esm.json +7 -0
- package/tsconfig.json +20 -0
|
@@ -0,0 +1,236 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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 { mapValues } from '../runtime';
|
|
16
|
+
import type { JobStatus } from './JobStatus';
|
|
17
|
+
import {
|
|
18
|
+
JobStatusFromJSON,
|
|
19
|
+
JobStatusFromJSONTyped,
|
|
20
|
+
JobStatusToJSON,
|
|
21
|
+
JobStatusToJSONTyped,
|
|
22
|
+
} from './JobStatus';
|
|
23
|
+
import type { JobSourceInfo } from './JobSourceInfo';
|
|
24
|
+
import {
|
|
25
|
+
JobSourceInfoFromJSON,
|
|
26
|
+
JobSourceInfoFromJSONTyped,
|
|
27
|
+
JobSourceInfoToJSON,
|
|
28
|
+
JobSourceInfoToJSONTyped,
|
|
29
|
+
} from './JobSourceInfo';
|
|
30
|
+
import type { JobProfile } from './JobProfile';
|
|
31
|
+
import {
|
|
32
|
+
JobProfileFromJSON,
|
|
33
|
+
JobProfileFromJSONTyped,
|
|
34
|
+
JobProfileToJSON,
|
|
35
|
+
JobProfileToJSONTyped,
|
|
36
|
+
} from './JobProfile';
|
|
37
|
+
import type { JobOutputInfo } from './JobOutputInfo';
|
|
38
|
+
import {
|
|
39
|
+
JobOutputInfoFromJSON,
|
|
40
|
+
JobOutputInfoFromJSONTyped,
|
|
41
|
+
JobOutputInfoToJSON,
|
|
42
|
+
JobOutputInfoToJSONTyped,
|
|
43
|
+
} from './JobOutputInfo';
|
|
44
|
+
import type { JobProgress } from './JobProgress';
|
|
45
|
+
import {
|
|
46
|
+
JobProgressFromJSON,
|
|
47
|
+
JobProgressFromJSONTyped,
|
|
48
|
+
JobProgressToJSON,
|
|
49
|
+
JobProgressToJSONTyped,
|
|
50
|
+
} from './JobProgress';
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
*
|
|
54
|
+
* @export
|
|
55
|
+
* @interface JobResponse
|
|
56
|
+
*/
|
|
57
|
+
export interface JobResponse {
|
|
58
|
+
/**
|
|
59
|
+
*
|
|
60
|
+
* @type {string}
|
|
61
|
+
* @memberof JobResponse
|
|
62
|
+
*/
|
|
63
|
+
id: string;
|
|
64
|
+
/**
|
|
65
|
+
*
|
|
66
|
+
* @type {JobStatus}
|
|
67
|
+
* @memberof JobResponse
|
|
68
|
+
*/
|
|
69
|
+
status: JobStatus;
|
|
70
|
+
/**
|
|
71
|
+
*
|
|
72
|
+
* @type {string}
|
|
73
|
+
* @memberof JobResponse
|
|
74
|
+
*/
|
|
75
|
+
status_reason?: string;
|
|
76
|
+
/**
|
|
77
|
+
*
|
|
78
|
+
* @type {number}
|
|
79
|
+
* @memberof JobResponse
|
|
80
|
+
*/
|
|
81
|
+
attempt: number;
|
|
82
|
+
/**
|
|
83
|
+
* Whether the job can still be retried (attempt < max_attempts and not terminal).
|
|
84
|
+
* @type {boolean}
|
|
85
|
+
* @memberof JobResponse
|
|
86
|
+
*/
|
|
87
|
+
retryable: boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Public profile ID submitted by the customer. For adaptive jobs this
|
|
90
|
+
* stays `sophon-auto`; see `effective_profile_id` for the worker's
|
|
91
|
+
* resolved concrete profile.
|
|
92
|
+
*
|
|
93
|
+
* @type {JobProfile}
|
|
94
|
+
* @memberof JobResponse
|
|
95
|
+
*/
|
|
96
|
+
profile: JobProfile;
|
|
97
|
+
/**
|
|
98
|
+
* Concrete profile resolved by the worker. Omitted until dispatch
|
|
99
|
+
* resolves. On explicit-profile jobs this equals `profile`; on
|
|
100
|
+
* `sophon-auto` jobs it is an internal adaptive profile ID.
|
|
101
|
+
*
|
|
102
|
+
* @type {string}
|
|
103
|
+
* @memberof JobResponse
|
|
104
|
+
*/
|
|
105
|
+
effective_profile_id?: string;
|
|
106
|
+
/**
|
|
107
|
+
*
|
|
108
|
+
* @type {JobSourceInfo}
|
|
109
|
+
* @memberof JobResponse
|
|
110
|
+
*/
|
|
111
|
+
source: JobSourceInfo;
|
|
112
|
+
/**
|
|
113
|
+
*
|
|
114
|
+
* @type {JobProgress}
|
|
115
|
+
* @memberof JobResponse
|
|
116
|
+
*/
|
|
117
|
+
progress: JobProgress;
|
|
118
|
+
/**
|
|
119
|
+
*
|
|
120
|
+
* @type {JobOutputInfo}
|
|
121
|
+
* @memberof JobResponse
|
|
122
|
+
*/
|
|
123
|
+
output: JobOutputInfo;
|
|
124
|
+
/**
|
|
125
|
+
* Arbitrary JSON object attached to a job. Keys and values are passed
|
|
126
|
+
* through unchanged to webhook deliveries and echoed on job reads. The
|
|
127
|
+
* serialized representation must not exceed 16 KiB. Free-form; SDKs
|
|
128
|
+
* surface this as a `Record<string, unknown>` / `dict[str, Any]` /
|
|
129
|
+
* `map[string]interface{}` depending on language.
|
|
130
|
+
*
|
|
131
|
+
* @type {{ [key: string]: any; }}
|
|
132
|
+
* @memberof JobResponse
|
|
133
|
+
*/
|
|
134
|
+
metadata: { [key: string]: any; };
|
|
135
|
+
/**
|
|
136
|
+
*
|
|
137
|
+
* @type {Date}
|
|
138
|
+
* @memberof JobResponse
|
|
139
|
+
*/
|
|
140
|
+
created_at: Date;
|
|
141
|
+
/**
|
|
142
|
+
*
|
|
143
|
+
* @type {Date}
|
|
144
|
+
* @memberof JobResponse
|
|
145
|
+
*/
|
|
146
|
+
started_at?: Date;
|
|
147
|
+
/**
|
|
148
|
+
*
|
|
149
|
+
* @type {Date}
|
|
150
|
+
* @memberof JobResponse
|
|
151
|
+
*/
|
|
152
|
+
completed_at?: Date;
|
|
153
|
+
/**
|
|
154
|
+
*
|
|
155
|
+
* @type {string}
|
|
156
|
+
* @memberof JobResponse
|
|
157
|
+
*/
|
|
158
|
+
error?: string;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Check if a given object implements the JobResponse interface.
|
|
165
|
+
*/
|
|
166
|
+
export function instanceOfJobResponse(value: object): value is JobResponse {
|
|
167
|
+
if (!('id' in value) || value['id'] === undefined) return false;
|
|
168
|
+
if (!('status' in value) || value['status'] === undefined) return false;
|
|
169
|
+
if (!('attempt' in value) || value['attempt'] === undefined) return false;
|
|
170
|
+
if (!('retryable' in value) || value['retryable'] === undefined) return false;
|
|
171
|
+
if (!('profile' in value) || value['profile'] === undefined) return false;
|
|
172
|
+
if (!('source' in value) || value['source'] === undefined) return false;
|
|
173
|
+
if (!('progress' in value) || value['progress'] === undefined) return false;
|
|
174
|
+
if (!('output' in value) || value['output'] === undefined) return false;
|
|
175
|
+
if (!('metadata' in value) || value['metadata'] === undefined) return false;
|
|
176
|
+
if (!('created_at' in value) || value['created_at'] === undefined) return false;
|
|
177
|
+
return true;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export function JobResponseFromJSON(json: any): JobResponse {
|
|
181
|
+
return JobResponseFromJSONTyped(json, false);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
export function JobResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): JobResponse {
|
|
185
|
+
if (json == null) {
|
|
186
|
+
return json;
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
|
|
190
|
+
'id': json['id'],
|
|
191
|
+
'status': JobStatusFromJSON(json['status']),
|
|
192
|
+
'status_reason': json['status_reason'] == null ? undefined : json['status_reason'],
|
|
193
|
+
'attempt': json['attempt'],
|
|
194
|
+
'retryable': json['retryable'],
|
|
195
|
+
'profile': JobProfileFromJSON(json['profile']),
|
|
196
|
+
'effective_profile_id': json['effective_profile_id'] == null ? undefined : json['effective_profile_id'],
|
|
197
|
+
'source': JobSourceInfoFromJSON(json['source']),
|
|
198
|
+
'progress': JobProgressFromJSON(json['progress']),
|
|
199
|
+
'output': JobOutputInfoFromJSON(json['output']),
|
|
200
|
+
'metadata': json['metadata'],
|
|
201
|
+
'created_at': (new Date(json['created_at'])),
|
|
202
|
+
'started_at': json['started_at'] == null ? undefined : (new Date(json['started_at'])),
|
|
203
|
+
'completed_at': json['completed_at'] == null ? undefined : (new Date(json['completed_at'])),
|
|
204
|
+
'error': json['error'] == null ? undefined : json['error'],
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
export function JobResponseToJSON(json: any): JobResponse {
|
|
209
|
+
return JobResponseToJSONTyped(json, false);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
export function JobResponseToJSONTyped(value?: JobResponse | null, ignoreDiscriminator: boolean = false): any {
|
|
213
|
+
if (value == null) {
|
|
214
|
+
return value;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
return {
|
|
218
|
+
|
|
219
|
+
'id': value['id'],
|
|
220
|
+
'status': JobStatusToJSON(value['status']),
|
|
221
|
+
'status_reason': value['status_reason'],
|
|
222
|
+
'attempt': value['attempt'],
|
|
223
|
+
'retryable': value['retryable'],
|
|
224
|
+
'profile': JobProfileToJSON(value['profile']),
|
|
225
|
+
'effective_profile_id': value['effective_profile_id'],
|
|
226
|
+
'source': JobSourceInfoToJSON(value['source']),
|
|
227
|
+
'progress': JobProgressToJSON(value['progress']),
|
|
228
|
+
'output': JobOutputInfoToJSON(value['output']),
|
|
229
|
+
'metadata': value['metadata'],
|
|
230
|
+
'created_at': value['created_at'].toISOString(),
|
|
231
|
+
'started_at': value['started_at'] == null ? value['started_at'] : value['started_at'].toISOString(),
|
|
232
|
+
'completed_at': value['completed_at'] == null ? value['completed_at'] : value['completed_at'].toISOString(),
|
|
233
|
+
'error': value['error'],
|
|
234
|
+
};
|
|
235
|
+
}
|
|
236
|
+
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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 { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface JobSourceInfo
|
|
20
|
+
*/
|
|
21
|
+
export interface JobSourceInfo {
|
|
22
|
+
/**
|
|
23
|
+
* Original file name of the source.
|
|
24
|
+
* @type {string}
|
|
25
|
+
* @memberof JobSourceInfo
|
|
26
|
+
*/
|
|
27
|
+
name?: string;
|
|
28
|
+
/**
|
|
29
|
+
*
|
|
30
|
+
* @type {number}
|
|
31
|
+
* @memberof JobSourceInfo
|
|
32
|
+
*/
|
|
33
|
+
bytes?: number;
|
|
34
|
+
/**
|
|
35
|
+
* SHA-256 hex digest of the source file.
|
|
36
|
+
* @type {string}
|
|
37
|
+
* @memberof JobSourceInfo
|
|
38
|
+
*/
|
|
39
|
+
sha256: string;
|
|
40
|
+
/**
|
|
41
|
+
*
|
|
42
|
+
* @type {number}
|
|
43
|
+
* @memberof JobSourceInfo
|
|
44
|
+
*/
|
|
45
|
+
duration_seconds?: number;
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
* @type {string}
|
|
49
|
+
* @memberof JobSourceInfo
|
|
50
|
+
*/
|
|
51
|
+
resolution?: string;
|
|
52
|
+
/**
|
|
53
|
+
*
|
|
54
|
+
* @type {string}
|
|
55
|
+
* @memberof JobSourceInfo
|
|
56
|
+
*/
|
|
57
|
+
frame_rate?: string;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Check if a given object implements the JobSourceInfo interface.
|
|
62
|
+
*/
|
|
63
|
+
export function instanceOfJobSourceInfo(value: object): value is JobSourceInfo {
|
|
64
|
+
if (!('sha256' in value) || value['sha256'] === undefined) return false;
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export function JobSourceInfoFromJSON(json: any): JobSourceInfo {
|
|
69
|
+
return JobSourceInfoFromJSONTyped(json, false);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export function JobSourceInfoFromJSONTyped(json: any, ignoreDiscriminator: boolean): JobSourceInfo {
|
|
73
|
+
if (json == null) {
|
|
74
|
+
return json;
|
|
75
|
+
}
|
|
76
|
+
return {
|
|
77
|
+
|
|
78
|
+
'name': json['name'] == null ? undefined : json['name'],
|
|
79
|
+
'bytes': json['bytes'] == null ? undefined : json['bytes'],
|
|
80
|
+
'sha256': json['sha256'],
|
|
81
|
+
'duration_seconds': json['duration_seconds'] == null ? undefined : json['duration_seconds'],
|
|
82
|
+
'resolution': json['resolution'] == null ? undefined : json['resolution'],
|
|
83
|
+
'frame_rate': json['frame_rate'] == null ? undefined : json['frame_rate'],
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
export function JobSourceInfoToJSON(json: any): JobSourceInfo {
|
|
88
|
+
return JobSourceInfoToJSONTyped(json, false);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
export function JobSourceInfoToJSONTyped(value?: JobSourceInfo | null, ignoreDiscriminator: boolean = false): any {
|
|
92
|
+
if (value == null) {
|
|
93
|
+
return value;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
return {
|
|
97
|
+
|
|
98
|
+
'name': value['name'],
|
|
99
|
+
'bytes': value['bytes'],
|
|
100
|
+
'sha256': value['sha256'],
|
|
101
|
+
'duration_seconds': value['duration_seconds'],
|
|
102
|
+
'resolution': value['resolution'],
|
|
103
|
+
'frame_rate': value['frame_rate'],
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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
|
+
/**
|
|
16
|
+
* Discriminator for `JobSource` variants.
|
|
17
|
+
* @export
|
|
18
|
+
* @enum {string}
|
|
19
|
+
*/
|
|
20
|
+
export enum JobSourceType {
|
|
21
|
+
UPLOAD = 'upload'
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
export function instanceOfJobSourceType(value: any): boolean {
|
|
26
|
+
for (const key in JobSourceType) {
|
|
27
|
+
if (Object.prototype.hasOwnProperty.call(JobSourceType, key)) {
|
|
28
|
+
if (JobSourceType[key as keyof typeof JobSourceType] === value) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return false;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export function JobSourceTypeFromJSON(json: any): JobSourceType {
|
|
37
|
+
return JobSourceTypeFromJSONTyped(json, false);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function JobSourceTypeFromJSONTyped(json: any, ignoreDiscriminator: boolean): JobSourceType {
|
|
41
|
+
return json as JobSourceType;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function JobSourceTypeToJSON(value?: JobSourceType | null): any {
|
|
45
|
+
return value as any;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function JobSourceTypeToJSONTyped(value: any, ignoreDiscriminator: boolean): JobSourceType {
|
|
49
|
+
return value as JobSourceType;
|
|
50
|
+
}
|
|
51
|
+
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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
|
+
/**
|
|
16
|
+
* Lifecycle status for an encoding job.
|
|
17
|
+
* @export
|
|
18
|
+
* @enum {string}
|
|
19
|
+
*/
|
|
20
|
+
export enum JobStatus {
|
|
21
|
+
QUEUED = 'queued',
|
|
22
|
+
PROBING = 'probing',
|
|
23
|
+
ENCODING = 'encoding',
|
|
24
|
+
MUXING = 'muxing',
|
|
25
|
+
UPLOADING_OUTPUT = 'uploading_output',
|
|
26
|
+
COMPLETED = 'completed',
|
|
27
|
+
FAILED = 'failed',
|
|
28
|
+
CANCELED = 'canceled'
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
export function instanceOfJobStatus(value: any): boolean {
|
|
33
|
+
for (const key in JobStatus) {
|
|
34
|
+
if (Object.prototype.hasOwnProperty.call(JobStatus, key)) {
|
|
35
|
+
if (JobStatus[key as keyof typeof JobStatus] === value) {
|
|
36
|
+
return true;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function JobStatusFromJSON(json: any): JobStatus {
|
|
44
|
+
return JobStatusFromJSONTyped(json, false);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function JobStatusFromJSONTyped(json: any, ignoreDiscriminator: boolean): JobStatus {
|
|
48
|
+
return json as JobStatus;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function JobStatusToJSON(value?: JobStatus | null): any {
|
|
52
|
+
return value as any;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export function JobStatusToJSONTyped(value: any, ignoreDiscriminator: boolean): JobStatus {
|
|
56
|
+
return value as JobStatus;
|
|
57
|
+
}
|
|
58
|
+
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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 { mapValues } from '../runtime';
|
|
16
|
+
import type { JobResponse } from './JobResponse';
|
|
17
|
+
import {
|
|
18
|
+
JobResponseFromJSON,
|
|
19
|
+
JobResponseFromJSONTyped,
|
|
20
|
+
JobResponseToJSON,
|
|
21
|
+
JobResponseToJSONTyped,
|
|
22
|
+
} from './JobResponse';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
*
|
|
26
|
+
* @export
|
|
27
|
+
* @interface ListJobsResponse
|
|
28
|
+
*/
|
|
29
|
+
export interface ListJobsResponse {
|
|
30
|
+
/**
|
|
31
|
+
*
|
|
32
|
+
* @type {Array<JobResponse>}
|
|
33
|
+
* @memberof ListJobsResponse
|
|
34
|
+
*/
|
|
35
|
+
jobs: Array<JobResponse>;
|
|
36
|
+
/**
|
|
37
|
+
* Opaque cursor for the next page. Null when no more results.
|
|
38
|
+
* @type {string}
|
|
39
|
+
* @memberof ListJobsResponse
|
|
40
|
+
*/
|
|
41
|
+
next_cursor?: string;
|
|
42
|
+
/**
|
|
43
|
+
*
|
|
44
|
+
* @type {boolean}
|
|
45
|
+
* @memberof ListJobsResponse
|
|
46
|
+
*/
|
|
47
|
+
has_more: boolean;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Check if a given object implements the ListJobsResponse interface.
|
|
52
|
+
*/
|
|
53
|
+
export function instanceOfListJobsResponse(value: object): value is ListJobsResponse {
|
|
54
|
+
if (!('jobs' in value) || value['jobs'] === undefined) return false;
|
|
55
|
+
if (!('has_more' in value) || value['has_more'] === undefined) return false;
|
|
56
|
+
return true;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function ListJobsResponseFromJSON(json: any): ListJobsResponse {
|
|
60
|
+
return ListJobsResponseFromJSONTyped(json, false);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export function ListJobsResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListJobsResponse {
|
|
64
|
+
if (json == null) {
|
|
65
|
+
return json;
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
|
|
69
|
+
'jobs': ((json['jobs'] as Array<any>).map(JobResponseFromJSON)),
|
|
70
|
+
'next_cursor': json['next_cursor'] == null ? undefined : json['next_cursor'],
|
|
71
|
+
'has_more': json['has_more'],
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
export function ListJobsResponseToJSON(json: any): ListJobsResponse {
|
|
76
|
+
return ListJobsResponseToJSONTyped(json, false);
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export function ListJobsResponseToJSONTyped(value?: ListJobsResponse | null, ignoreDiscriminator: boolean = false): any {
|
|
80
|
+
if (value == null) {
|
|
81
|
+
return value;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return {
|
|
85
|
+
|
|
86
|
+
'jobs': ((value['jobs'] as Array<any>).map(JobResponseToJSON)),
|
|
87
|
+
'next_cursor': value['next_cursor'],
|
|
88
|
+
'has_more': value['has_more'],
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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
|
+
/**
|
|
16
|
+
* Output container format. MP4 is widely compatible; MKV
|
|
17
|
+
* supports a broader range of audio codecs for passthrough.
|
|
18
|
+
*
|
|
19
|
+
* @export
|
|
20
|
+
* @enum {string}
|
|
21
|
+
*/
|
|
22
|
+
export enum OutputContainer {
|
|
23
|
+
MP4 = 'mp4',
|
|
24
|
+
MKV = 'mkv'
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
export function instanceOfOutputContainer(value: any): boolean {
|
|
29
|
+
for (const key in OutputContainer) {
|
|
30
|
+
if (Object.prototype.hasOwnProperty.call(OutputContainer, key)) {
|
|
31
|
+
if (OutputContainer[key as keyof typeof OutputContainer] === value) {
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export function OutputContainerFromJSON(json: any): OutputContainer {
|
|
40
|
+
return OutputContainerFromJSONTyped(json, false);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function OutputContainerFromJSONTyped(json: any, ignoreDiscriminator: boolean): OutputContainer {
|
|
44
|
+
return json as OutputContainer;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export function OutputContainerToJSON(value?: OutputContainer | null): any {
|
|
48
|
+
return value as any;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function OutputContainerToJSONTyped(value: any, ignoreDiscriminator: boolean): OutputContainer {
|
|
52
|
+
return value as OutputContainer;
|
|
53
|
+
}
|
|
54
|
+
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/* tslint:disable */
|
|
2
|
+
/* eslint-disable */
|
|
3
|
+
/**
|
|
4
|
+
* SOPHON Encoding API
|
|
5
|
+
* REST API for submitting, monitoring, and retrieving SOPHON encoding jobs. Authentication is via Bearer API key or session cookie. All POST endpoints require an Idempotency-Key header. List endpoints use opaque cursor-based pagination.
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 1.0.0
|
|
8
|
+
*
|
|
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 { mapValues } from '../runtime';
|
|
16
|
+
/**
|
|
17
|
+
*
|
|
18
|
+
* @export
|
|
19
|
+
* @interface ReadyResponse
|
|
20
|
+
*/
|
|
21
|
+
export interface ReadyResponse {
|
|
22
|
+
/**
|
|
23
|
+
*
|
|
24
|
+
* @type {boolean}
|
|
25
|
+
* @memberof ReadyResponse
|
|
26
|
+
*/
|
|
27
|
+
ready: boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Names of failed readiness checks (database, disk_critical, draining, workers_dead).
|
|
30
|
+
* @type {Array<string>}
|
|
31
|
+
* @memberof ReadyResponse
|
|
32
|
+
*/
|
|
33
|
+
checks_failed?: Array<string>;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Check if a given object implements the ReadyResponse interface.
|
|
38
|
+
*/
|
|
39
|
+
export function instanceOfReadyResponse(value: object): value is ReadyResponse {
|
|
40
|
+
if (!('ready' in value) || value['ready'] === undefined) return false;
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
export function ReadyResponseFromJSON(json: any): ReadyResponse {
|
|
45
|
+
return ReadyResponseFromJSONTyped(json, false);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export function ReadyResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ReadyResponse {
|
|
49
|
+
if (json == null) {
|
|
50
|
+
return json;
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
|
|
54
|
+
'ready': json['ready'],
|
|
55
|
+
'checks_failed': json['checks_failed'] == null ? undefined : json['checks_failed'],
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export function ReadyResponseToJSON(json: any): ReadyResponse {
|
|
60
|
+
return ReadyResponseToJSONTyped(json, false);
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export function ReadyResponseToJSONTyped(value?: ReadyResponse | null, ignoreDiscriminator: boolean = false): any {
|
|
64
|
+
if (value == null) {
|
|
65
|
+
return value;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
return {
|
|
69
|
+
|
|
70
|
+
'ready': value['ready'],
|
|
71
|
+
'checks_failed': value['checks_failed'],
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|