@withpica/mcp-server 2.8.0 → 2.9.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/dist/config.d.ts +9 -9
- package/dist/index.d.ts +1 -1
- package/dist/prompts/index.d.ts +64 -64
- package/dist/resources/index.d.ts +53 -53
- package/dist/server.d.ts +49 -49
- package/dist/tools/enrichment.d.ts +3 -0
- package/dist/tools/enrichment.d.ts.map +1 -1
- package/dist/tools/enrichment.js +66 -0
- package/dist/tools/enrichment.js.map +1 -1
- package/dist/tools/index.d.ts +88 -72
- package/dist/tools/people.d.ts +38 -38
- package/dist/tools/recordings.d.ts +30 -30
- package/dist/tools/search.d.ts +20 -20
- package/dist/tools/works.d.ts +38 -38
- package/dist/tools/works.d.ts.map +1 -1
- package/dist/tools/works.js +4 -1
- package/dist/tools/works.js.map +1 -1
- package/package.json +1 -1
- package/dist/pica-sdk.d.ts +0 -1231
- package/dist/pica-sdk.d.ts.map +0 -1
- package/dist/pica-sdk.js +0 -1403
- package/dist/pica-sdk.js.map +0 -1
- package/dist/utils/errors.d.ts +0 -29
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -115
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/formatting.d.ts +0 -82
- package/dist/utils/formatting.d.ts.map +0 -1
- package/dist/utils/formatting.js +0 -125
- package/dist/utils/formatting.js.map +0 -1
package/dist/pica-sdk.d.ts
DELETED
|
@@ -1,1231 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Lightweight PICA SDK client for MCP server
|
|
3
|
-
* Uses the PICA API directly without external dependencies
|
|
4
|
-
*/
|
|
5
|
-
interface CatalogStats {
|
|
6
|
-
works: {
|
|
7
|
-
total: number;
|
|
8
|
-
with_iswc: number;
|
|
9
|
-
};
|
|
10
|
-
recordings: {
|
|
11
|
-
total: number;
|
|
12
|
-
with_isrc: number;
|
|
13
|
-
};
|
|
14
|
-
people: {
|
|
15
|
-
total: number;
|
|
16
|
-
with_email: number;
|
|
17
|
-
with_isni: number;
|
|
18
|
-
with_musicbrainz: number;
|
|
19
|
-
};
|
|
20
|
-
agreements: {
|
|
21
|
-
total: number;
|
|
22
|
-
};
|
|
23
|
-
}
|
|
24
|
-
interface PicaClientConfig {
|
|
25
|
-
apiKey: string;
|
|
26
|
-
baseUrl?: string;
|
|
27
|
-
debug?: boolean;
|
|
28
|
-
}
|
|
29
|
-
interface PaginatedResult<T> {
|
|
30
|
-
data: T[];
|
|
31
|
-
total: number;
|
|
32
|
-
hasMore: boolean;
|
|
33
|
-
}
|
|
34
|
-
interface Work {
|
|
35
|
-
id: string;
|
|
36
|
-
title: string;
|
|
37
|
-
work_type: string;
|
|
38
|
-
work_status?: string;
|
|
39
|
-
release_format?: string;
|
|
40
|
-
iswc?: string;
|
|
41
|
-
isrc?: string;
|
|
42
|
-
primary_artist?: string;
|
|
43
|
-
duration_seconds?: number;
|
|
44
|
-
is_verified: boolean;
|
|
45
|
-
lyrics?: string;
|
|
46
|
-
genre?: string;
|
|
47
|
-
mood?: string;
|
|
48
|
-
label?: string;
|
|
49
|
-
release_date?: string;
|
|
50
|
-
album_art_url?: string;
|
|
51
|
-
spotify_track_uri?: string;
|
|
52
|
-
youtube_video_id?: string;
|
|
53
|
-
youtube_view_count?: number;
|
|
54
|
-
spotify_popularity?: number;
|
|
55
|
-
spotify_streams?: number;
|
|
56
|
-
prs_registered?: boolean;
|
|
57
|
-
ppl_registered?: boolean;
|
|
58
|
-
published?: boolean;
|
|
59
|
-
is_featured?: boolean;
|
|
60
|
-
mlc_song_code?: string;
|
|
61
|
-
completeness_score?: number | null;
|
|
62
|
-
ai_disclosure?: Record<string, unknown>;
|
|
63
|
-
provenance_attestation?: Record<string, unknown>;
|
|
64
|
-
created_at: string;
|
|
65
|
-
updated_at: string;
|
|
66
|
-
}
|
|
67
|
-
interface Person {
|
|
68
|
-
id: string;
|
|
69
|
-
first_name?: string;
|
|
70
|
-
last_name?: string;
|
|
71
|
-
email?: string;
|
|
72
|
-
biography?: string;
|
|
73
|
-
isni?: string;
|
|
74
|
-
musicbrainz_id?: string;
|
|
75
|
-
created_at: string;
|
|
76
|
-
updated_at: string;
|
|
77
|
-
}
|
|
78
|
-
interface Recording {
|
|
79
|
-
id: string;
|
|
80
|
-
title?: string;
|
|
81
|
-
isrc?: string;
|
|
82
|
-
duration_seconds?: number;
|
|
83
|
-
work_id?: string;
|
|
84
|
-
created_at: string;
|
|
85
|
-
updated_at: string;
|
|
86
|
-
}
|
|
87
|
-
interface WorkCredit {
|
|
88
|
-
person_id: string;
|
|
89
|
-
role: string;
|
|
90
|
-
splits: number;
|
|
91
|
-
person_name?: string;
|
|
92
|
-
ipi?: string;
|
|
93
|
-
verified?: boolean;
|
|
94
|
-
split_status?: string;
|
|
95
|
-
is_owner?: boolean;
|
|
96
|
-
}
|
|
97
|
-
interface WorkCreditsInput {
|
|
98
|
-
credits: Array<{
|
|
99
|
-
person_id: string;
|
|
100
|
-
role: string;
|
|
101
|
-
splits: number;
|
|
102
|
-
}>;
|
|
103
|
-
}
|
|
104
|
-
interface PicaScorePillar {
|
|
105
|
-
name: string;
|
|
106
|
-
slug: "income" | "ownership" | "asset" | "verification";
|
|
107
|
-
score: number;
|
|
108
|
-
weight: number;
|
|
109
|
-
status: "strong" | "developing" | "weak";
|
|
110
|
-
suggestions: string[];
|
|
111
|
-
details: Record<string, unknown>;
|
|
112
|
-
}
|
|
113
|
-
interface PicaScore {
|
|
114
|
-
composite: number;
|
|
115
|
-
grade: "A" | "B" | "C" | "D" | "F";
|
|
116
|
-
pillars: PicaScorePillar[];
|
|
117
|
-
topActions: string[];
|
|
118
|
-
calculatedAt: string;
|
|
119
|
-
}
|
|
120
|
-
interface AudioFile {
|
|
121
|
-
id: string;
|
|
122
|
-
work_id: string | null;
|
|
123
|
-
title: string;
|
|
124
|
-
filename: string;
|
|
125
|
-
file_type: "master" | "instrumental" | "stem" | "demo" | "version";
|
|
126
|
-
file_size: number;
|
|
127
|
-
audio_format: string;
|
|
128
|
-
cdn_url?: string;
|
|
129
|
-
duration_seconds: number | null;
|
|
130
|
-
detected_bpm: number | null;
|
|
131
|
-
detected_key: string | null;
|
|
132
|
-
detected_energy: number | null;
|
|
133
|
-
detected_valence: number | null;
|
|
134
|
-
detected_mood: string[] | null;
|
|
135
|
-
metadata_extracted: boolean;
|
|
136
|
-
extraction_error: string | null;
|
|
137
|
-
published: boolean;
|
|
138
|
-
classification?: string;
|
|
139
|
-
notes?: string;
|
|
140
|
-
created_at: string;
|
|
141
|
-
updated_at: string;
|
|
142
|
-
}
|
|
143
|
-
interface AudioAnalysisStatus {
|
|
144
|
-
status: "processing" | "completed" | "failed" | "not_started";
|
|
145
|
-
detected_bpm?: number | null;
|
|
146
|
-
detected_key?: string | null;
|
|
147
|
-
duration_seconds?: number | null;
|
|
148
|
-
error?: string | null;
|
|
149
|
-
}
|
|
150
|
-
interface MultimediaItem {
|
|
151
|
-
id: string;
|
|
152
|
-
organisation_id: string;
|
|
153
|
-
user_id?: string;
|
|
154
|
-
content_type: string;
|
|
155
|
-
classification?: string;
|
|
156
|
-
title: string;
|
|
157
|
-
caption?: string;
|
|
158
|
-
description?: string;
|
|
159
|
-
tags?: string[];
|
|
160
|
-
url?: string;
|
|
161
|
-
thumbnail_url?: string;
|
|
162
|
-
file_name?: string;
|
|
163
|
-
file_size?: number;
|
|
164
|
-
mime_type?: string;
|
|
165
|
-
duration_seconds?: number;
|
|
166
|
-
youtube_video_id?: string;
|
|
167
|
-
youtube_url?: string;
|
|
168
|
-
spotify_track_id?: string;
|
|
169
|
-
spotify_track_uri?: string;
|
|
170
|
-
soundcloud_url?: string;
|
|
171
|
-
is_published?: boolean;
|
|
172
|
-
created_at: string;
|
|
173
|
-
updated_at: string;
|
|
174
|
-
}
|
|
175
|
-
interface Agreement {
|
|
176
|
-
id: string;
|
|
177
|
-
organisation_id: string;
|
|
178
|
-
title: string;
|
|
179
|
-
agreement_type: string;
|
|
180
|
-
status: string;
|
|
181
|
-
other_party_name: string;
|
|
182
|
-
other_party_type?: string;
|
|
183
|
-
signing_date?: string;
|
|
184
|
-
start_date?: string;
|
|
185
|
-
end_date?: string;
|
|
186
|
-
description?: string;
|
|
187
|
-
notes?: string;
|
|
188
|
-
tags?: string[];
|
|
189
|
-
financial_terms?: Record<string, unknown>;
|
|
190
|
-
agreement_terms?: Record<string, unknown>;
|
|
191
|
-
created_at: string;
|
|
192
|
-
updated_at: string;
|
|
193
|
-
}
|
|
194
|
-
interface AgreementWorkLink {
|
|
195
|
-
id: string;
|
|
196
|
-
agreement_id: string;
|
|
197
|
-
work_id: string;
|
|
198
|
-
royalty_split_percentage?: number;
|
|
199
|
-
notes?: string;
|
|
200
|
-
}
|
|
201
|
-
interface SyncSearchParams {
|
|
202
|
-
mood?: string;
|
|
203
|
-
genre?: string;
|
|
204
|
-
min_bpm?: number;
|
|
205
|
-
max_bpm?: number;
|
|
206
|
-
key?: string;
|
|
207
|
-
min_energy?: number;
|
|
208
|
-
max_energy?: number;
|
|
209
|
-
min_valence?: number;
|
|
210
|
-
max_valence?: number;
|
|
211
|
-
min_duration?: number;
|
|
212
|
-
max_duration?: number;
|
|
213
|
-
instrumental_only?: boolean;
|
|
214
|
-
available_for_sync?: boolean;
|
|
215
|
-
limit?: number;
|
|
216
|
-
}
|
|
217
|
-
interface SyncTrack {
|
|
218
|
-
id: string;
|
|
219
|
-
title: string;
|
|
220
|
-
filename: string;
|
|
221
|
-
duration_seconds: number | null;
|
|
222
|
-
detected_bpm: number | null;
|
|
223
|
-
detected_key: string | null;
|
|
224
|
-
detected_energy: number | null;
|
|
225
|
-
detected_mood: string[] | null;
|
|
226
|
-
work_id: string | null;
|
|
227
|
-
work?: {
|
|
228
|
-
id: string;
|
|
229
|
-
title: string;
|
|
230
|
-
primary_artist: string | null;
|
|
231
|
-
};
|
|
232
|
-
cdn_url: string | null;
|
|
233
|
-
published: boolean;
|
|
234
|
-
}
|
|
235
|
-
interface SyncSearchResult {
|
|
236
|
-
tracks: SyncTrack[];
|
|
237
|
-
count: number;
|
|
238
|
-
filters: Record<string, unknown>;
|
|
239
|
-
}
|
|
240
|
-
interface LicenseEnquiryInput {
|
|
241
|
-
work_id: string;
|
|
242
|
-
track_title: string;
|
|
243
|
-
contact_name: string;
|
|
244
|
-
contact_email: string;
|
|
245
|
-
company_name?: string;
|
|
246
|
-
project_type:
|
|
247
|
-
| "tv_ad"
|
|
248
|
-
| "film"
|
|
249
|
-
| "social_media"
|
|
250
|
-
| "game"
|
|
251
|
-
| "podcast"
|
|
252
|
-
| "corporate"
|
|
253
|
-
| "other";
|
|
254
|
-
project_description: string;
|
|
255
|
-
territory: string;
|
|
256
|
-
duration: string;
|
|
257
|
-
distribution?: string[];
|
|
258
|
-
proposed_budget_amount: number;
|
|
259
|
-
proposed_budget_currency: string;
|
|
260
|
-
budget_notes?: string;
|
|
261
|
-
}
|
|
262
|
-
interface LicenseEnquiry {
|
|
263
|
-
id: string;
|
|
264
|
-
organisation_id: string;
|
|
265
|
-
work_id: string;
|
|
266
|
-
track_title: string;
|
|
267
|
-
contact_name: string;
|
|
268
|
-
contact_email: string;
|
|
269
|
-
company_name: string | null;
|
|
270
|
-
project_type: string;
|
|
271
|
-
project_description: string;
|
|
272
|
-
territory: string;
|
|
273
|
-
duration: string;
|
|
274
|
-
distribution: string[] | null;
|
|
275
|
-
proposed_budget_amount: number;
|
|
276
|
-
proposed_budget_currency: string;
|
|
277
|
-
budget_notes: string | null;
|
|
278
|
-
status: string;
|
|
279
|
-
your_counter_offer: number | null;
|
|
280
|
-
your_notes: string | null;
|
|
281
|
-
invoice_id: string | null;
|
|
282
|
-
agreement_id: string | null;
|
|
283
|
-
responded_at: string | null;
|
|
284
|
-
created_at: string;
|
|
285
|
-
updated_at: string;
|
|
286
|
-
}
|
|
287
|
-
declare class ApiError extends Error {
|
|
288
|
-
status: number;
|
|
289
|
-
retryable: boolean;
|
|
290
|
-
retryAfterMs?: number | undefined;
|
|
291
|
-
constructor(
|
|
292
|
-
message: string,
|
|
293
|
-
status: number,
|
|
294
|
-
retryable: boolean,
|
|
295
|
-
retryAfterMs?: number | undefined,
|
|
296
|
-
);
|
|
297
|
-
}
|
|
298
|
-
declare class BaseResource {
|
|
299
|
-
protected baseUrl: string;
|
|
300
|
-
protected apiKey: string;
|
|
301
|
-
protected debug: boolean;
|
|
302
|
-
constructor(baseUrl: string, apiKey: string, debug: boolean);
|
|
303
|
-
private fetchWithTimeout;
|
|
304
|
-
private fetchWithRetry;
|
|
305
|
-
protected request<T>(method: string, path: string, body?: any): Promise<T>;
|
|
306
|
-
/**
|
|
307
|
-
* Make a request and return paginated result with metadata
|
|
308
|
-
*/
|
|
309
|
-
protected requestPaginated<T>(
|
|
310
|
-
method: string,
|
|
311
|
-
path: string,
|
|
312
|
-
body?: unknown,
|
|
313
|
-
): Promise<PaginatedResult<T>>;
|
|
314
|
-
}
|
|
315
|
-
export { ApiError };
|
|
316
|
-
declare class WorksResource extends BaseResource {
|
|
317
|
-
list(params?: { limit?: number }): Promise<Work[]>;
|
|
318
|
-
search(params: {
|
|
319
|
-
query?: string;
|
|
320
|
-
limit?: number;
|
|
321
|
-
offset?: number;
|
|
322
|
-
status?: string;
|
|
323
|
-
type?: string;
|
|
324
|
-
}): Promise<PaginatedResult<Work>>;
|
|
325
|
-
get(id: string): Promise<Work>;
|
|
326
|
-
create(data: Partial<Work>): Promise<Work>;
|
|
327
|
-
update(id: string, updates: Partial<Work>): Promise<Work>;
|
|
328
|
-
delete(id: string): Promise<void>;
|
|
329
|
-
verify(id: string): Promise<Work>;
|
|
330
|
-
bulkDelete(ids: string[]): Promise<void>;
|
|
331
|
-
}
|
|
332
|
-
declare class PeopleResource extends BaseResource {
|
|
333
|
-
list(params?: { limit?: number }): Promise<Person[]>;
|
|
334
|
-
search(params: {
|
|
335
|
-
query?: string;
|
|
336
|
-
limit?: number;
|
|
337
|
-
offset?: number;
|
|
338
|
-
}): Promise<PaginatedResult<Person>>;
|
|
339
|
-
get(id: string): Promise<Person>;
|
|
340
|
-
create(data: Partial<Person>): Promise<Person>;
|
|
341
|
-
update(id: string, updates: Partial<Person>): Promise<Person>;
|
|
342
|
-
delete(id: string): Promise<void>;
|
|
343
|
-
enrichFromISNI(id: string, isni: string): Promise<Person>;
|
|
344
|
-
enrichFromMusicBrainz(id: string, musicbrainz_id: string): Promise<Person>;
|
|
345
|
-
}
|
|
346
|
-
declare class LicensingResource extends BaseResource {
|
|
347
|
-
/**
|
|
348
|
-
* Search for sync-licensable tracks by audio characteristics
|
|
349
|
-
*/
|
|
350
|
-
searchForSync(params?: SyncSearchParams): Promise<SyncSearchResult>;
|
|
351
|
-
/**
|
|
352
|
-
* Submit a license enquiry for a track
|
|
353
|
-
*/
|
|
354
|
-
submitEnquiry(enquiry: LicenseEnquiryInput): Promise<LicenseEnquiry>;
|
|
355
|
-
/**
|
|
356
|
-
* List license enquiries with optional filters
|
|
357
|
-
*/
|
|
358
|
-
listEnquiries(params?: {
|
|
359
|
-
work_id?: string;
|
|
360
|
-
status?: string;
|
|
361
|
-
project_type?: string;
|
|
362
|
-
territory?: string;
|
|
363
|
-
limit?: number;
|
|
364
|
-
offset?: number;
|
|
365
|
-
}): Promise<LicenseEnquiry[]>;
|
|
366
|
-
/**
|
|
367
|
-
* Get a specific license enquiry by ID
|
|
368
|
-
*/
|
|
369
|
-
getEnquiry(id: string): Promise<LicenseEnquiry>;
|
|
370
|
-
/**
|
|
371
|
-
* Update a license enquiry status
|
|
372
|
-
*/
|
|
373
|
-
updateEnquiryStatus(
|
|
374
|
-
id: string,
|
|
375
|
-
status: string,
|
|
376
|
-
notes?: string,
|
|
377
|
-
): Promise<LicenseEnquiry>;
|
|
378
|
-
}
|
|
379
|
-
declare class CreditsResource extends BaseResource {
|
|
380
|
-
listForWork(workId: string): Promise<WorkCredit[]>;
|
|
381
|
-
updateForWork(
|
|
382
|
-
workId: string,
|
|
383
|
-
credits: WorkCreditsInput,
|
|
384
|
-
): Promise<WorkCredit[]>;
|
|
385
|
-
listCollaborators(workId: string): Promise<WorkCredit[]>;
|
|
386
|
-
updateCollaborators(
|
|
387
|
-
workId: string,
|
|
388
|
-
collaborators: WorkCreditsInput,
|
|
389
|
-
): Promise<WorkCredit[]>;
|
|
390
|
-
}
|
|
391
|
-
declare class CreditsBalanceResource extends BaseResource {
|
|
392
|
-
getBalance(): Promise<any>;
|
|
393
|
-
purchase(params: { package_id: string; currency?: string }): Promise<any>;
|
|
394
|
-
}
|
|
395
|
-
declare class PicaScoreResource extends BaseResource {
|
|
396
|
-
get(): Promise<PicaScore>;
|
|
397
|
-
}
|
|
398
|
-
interface PresignedUploadResult {
|
|
399
|
-
uploadUrl: string;
|
|
400
|
-
uploadId: string;
|
|
401
|
-
key: string;
|
|
402
|
-
bucket: string;
|
|
403
|
-
expiresAt?: string;
|
|
404
|
-
metadata: Record<string, unknown>;
|
|
405
|
-
}
|
|
406
|
-
interface CompleteUploadResult {
|
|
407
|
-
uploadId: string;
|
|
408
|
-
audioFileId: string;
|
|
409
|
-
s3Key: string;
|
|
410
|
-
s3Bucket: string;
|
|
411
|
-
fileName: string;
|
|
412
|
-
fileSize: number;
|
|
413
|
-
status: string;
|
|
414
|
-
message: string;
|
|
415
|
-
}
|
|
416
|
-
interface IdentifyResult {
|
|
417
|
-
status?: "matched" | "no_match" | "failed";
|
|
418
|
-
alreadyIdentified?: boolean;
|
|
419
|
-
audioFileId?: string;
|
|
420
|
-
message?: string;
|
|
421
|
-
match?: {
|
|
422
|
-
title?: string;
|
|
423
|
-
artist?: string;
|
|
424
|
-
album?: string;
|
|
425
|
-
isrc?: string;
|
|
426
|
-
label?: string;
|
|
427
|
-
release_date?: string;
|
|
428
|
-
confidence: number;
|
|
429
|
-
};
|
|
430
|
-
}
|
|
431
|
-
declare class AudioFilesResource extends BaseResource {
|
|
432
|
-
list(params?: {
|
|
433
|
-
work_id?: string;
|
|
434
|
-
file_type?: string;
|
|
435
|
-
unprocessed?: boolean;
|
|
436
|
-
limit?: number;
|
|
437
|
-
}): Promise<AudioFile[]>;
|
|
438
|
-
get(id: string): Promise<AudioFile>;
|
|
439
|
-
analyze(
|
|
440
|
-
id: string,
|
|
441
|
-
options?: {
|
|
442
|
-
forceReAnalyze?: boolean;
|
|
443
|
-
enableAudio?: boolean;
|
|
444
|
-
enableLyrics?: boolean;
|
|
445
|
-
},
|
|
446
|
-
): Promise<{
|
|
447
|
-
success: boolean;
|
|
448
|
-
message: string;
|
|
449
|
-
features?: Record<string, unknown>;
|
|
450
|
-
}>;
|
|
451
|
-
getStatus(id: string): Promise<AudioAnalysisStatus>;
|
|
452
|
-
presignedUpload(params: {
|
|
453
|
-
filename: string;
|
|
454
|
-
contentType: string;
|
|
455
|
-
fileSize: number;
|
|
456
|
-
workId?: string;
|
|
457
|
-
title?: string;
|
|
458
|
-
fileType?: string;
|
|
459
|
-
}): Promise<PresignedUploadResult>;
|
|
460
|
-
completeUpload(params: {
|
|
461
|
-
uploadId: string;
|
|
462
|
-
key: string;
|
|
463
|
-
bucket: string;
|
|
464
|
-
metadata: {
|
|
465
|
-
filename: string;
|
|
466
|
-
contentType: string;
|
|
467
|
-
fileSize: number;
|
|
468
|
-
workId?: string;
|
|
469
|
-
title?: string;
|
|
470
|
-
fileType?: string;
|
|
471
|
-
stemLabel?: string;
|
|
472
|
-
versionLabel?: string;
|
|
473
|
-
recordingId?: string;
|
|
474
|
-
classification?: string;
|
|
475
|
-
};
|
|
476
|
-
}): Promise<CompleteUploadResult>;
|
|
477
|
-
identify(
|
|
478
|
-
id: string,
|
|
479
|
-
options?: {
|
|
480
|
-
force?: boolean;
|
|
481
|
-
},
|
|
482
|
-
): Promise<IdentifyResult>;
|
|
483
|
-
}
|
|
484
|
-
declare class MultimediaResource extends BaseResource {
|
|
485
|
-
search(params?: {
|
|
486
|
-
query?: string;
|
|
487
|
-
content_type?: string;
|
|
488
|
-
classification?: string;
|
|
489
|
-
is_published?: boolean;
|
|
490
|
-
work_id?: string;
|
|
491
|
-
person_id?: string;
|
|
492
|
-
limit?: number;
|
|
493
|
-
offset?: number;
|
|
494
|
-
}): Promise<{
|
|
495
|
-
data: MultimediaItem[];
|
|
496
|
-
count: number;
|
|
497
|
-
}>;
|
|
498
|
-
create(data: Partial<MultimediaItem>): Promise<MultimediaItem>;
|
|
499
|
-
importFromUrl(params: {
|
|
500
|
-
url: string;
|
|
501
|
-
title?: string;
|
|
502
|
-
source?: string;
|
|
503
|
-
work_id?: string;
|
|
504
|
-
}): Promise<MultimediaItem>;
|
|
505
|
-
linkYoutube(params: {
|
|
506
|
-
youtube_video_id: string;
|
|
507
|
-
title: string;
|
|
508
|
-
classification?: string;
|
|
509
|
-
work_id?: string;
|
|
510
|
-
work_relationship_type?: string;
|
|
511
|
-
}): Promise<MultimediaItem>;
|
|
512
|
-
linkWork(
|
|
513
|
-
id: string,
|
|
514
|
-
workId: string,
|
|
515
|
-
relationshipType: string,
|
|
516
|
-
notes?: string,
|
|
517
|
-
): Promise<Record<string, unknown>>;
|
|
518
|
-
}
|
|
519
|
-
declare class AgreementsResource extends BaseResource {
|
|
520
|
-
list(params?: {
|
|
521
|
-
query?: string;
|
|
522
|
-
agreement_type?: string;
|
|
523
|
-
status?: string;
|
|
524
|
-
party_name?: string;
|
|
525
|
-
includeWorkCounts?: boolean;
|
|
526
|
-
limit?: number;
|
|
527
|
-
offset?: number;
|
|
528
|
-
}): Promise<Agreement[]>;
|
|
529
|
-
get(id: string): Promise<{
|
|
530
|
-
agreement: Agreement;
|
|
531
|
-
signatureStatus: unknown;
|
|
532
|
-
linkedWorks: unknown[];
|
|
533
|
-
}>;
|
|
534
|
-
create(data: Partial<Agreement>): Promise<Agreement>;
|
|
535
|
-
update(id: string, updates: Partial<Agreement>): Promise<Agreement>;
|
|
536
|
-
delete(id: string): Promise<void>;
|
|
537
|
-
getWorks(id: string): Promise<AgreementWorkLink[]>;
|
|
538
|
-
linkWork(
|
|
539
|
-
id: string,
|
|
540
|
-
data: {
|
|
541
|
-
work_id: string;
|
|
542
|
-
royalty_split_percentage?: number;
|
|
543
|
-
notes?: string;
|
|
544
|
-
},
|
|
545
|
-
): Promise<AgreementWorkLink>;
|
|
546
|
-
}
|
|
547
|
-
declare class WorkspaceResource extends BaseResource {
|
|
548
|
-
getContext(): Promise<{
|
|
549
|
-
organisation: {
|
|
550
|
-
name: string;
|
|
551
|
-
plan: string | null;
|
|
552
|
-
};
|
|
553
|
-
catalog: Record<string, unknown>;
|
|
554
|
-
health: Record<string, unknown> | null;
|
|
555
|
-
priorities: string[];
|
|
556
|
-
}>;
|
|
557
|
-
getRecentEvents(limit?: number): Promise<{
|
|
558
|
-
events: Array<{
|
|
559
|
-
id: string;
|
|
560
|
-
event: string;
|
|
561
|
-
status: string;
|
|
562
|
-
timestamp: string;
|
|
563
|
-
}>;
|
|
564
|
-
}>;
|
|
565
|
-
}
|
|
566
|
-
declare class MemoryResource extends BaseResource {
|
|
567
|
-
list(): Promise<any[]>;
|
|
568
|
-
search(query: string): Promise<any[]>;
|
|
569
|
-
save(params: {
|
|
570
|
-
key: string;
|
|
571
|
-
content: string;
|
|
572
|
-
scope?: string;
|
|
573
|
-
type?: string;
|
|
574
|
-
}): Promise<any>;
|
|
575
|
-
delete(id: string): Promise<void>;
|
|
576
|
-
}
|
|
577
|
-
declare class NotesResource extends BaseResource {
|
|
578
|
-
list(params?: {
|
|
579
|
-
q?: string;
|
|
580
|
-
work?: string;
|
|
581
|
-
person?: string;
|
|
582
|
-
limit?: number;
|
|
583
|
-
}): Promise<any[]>;
|
|
584
|
-
get(id: string): Promise<any>;
|
|
585
|
-
create(
|
|
586
|
-
content: string,
|
|
587
|
-
metadata?: {
|
|
588
|
-
work_ids?: string[];
|
|
589
|
-
people_ids?: string[];
|
|
590
|
-
},
|
|
591
|
-
): Promise<any>;
|
|
592
|
-
delete(id: string): Promise<void>;
|
|
593
|
-
}
|
|
594
|
-
declare class TeamResource extends BaseResource {
|
|
595
|
-
list(): Promise<any>;
|
|
596
|
-
get(id: string): Promise<any>;
|
|
597
|
-
invite(data: Record<string, any>): Promise<any>;
|
|
598
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
599
|
-
remove(id: string): Promise<any>;
|
|
600
|
-
}
|
|
601
|
-
declare class RecordingsResource extends BaseResource {
|
|
602
|
-
list(params?: { limit?: number }): Promise<Recording[]>;
|
|
603
|
-
/**
|
|
604
|
-
* Search recordings. The recordings API doesn't support text search,
|
|
605
|
-
* so we fetch all and filter client-side for text queries.
|
|
606
|
-
*/
|
|
607
|
-
search(params: {
|
|
608
|
-
query?: string;
|
|
609
|
-
limit?: number;
|
|
610
|
-
offset?: number;
|
|
611
|
-
}): Promise<PaginatedResult<Recording>>;
|
|
612
|
-
get(id: string): Promise<Recording>;
|
|
613
|
-
create(data: Partial<Recording>): Promise<Recording>;
|
|
614
|
-
update(id: string, updates: Partial<Recording>): Promise<Recording>;
|
|
615
|
-
delete(id: string): Promise<void>;
|
|
616
|
-
getByWork(workId: string): Promise<Recording[]>;
|
|
617
|
-
prefixLookup(isrc: string): Promise<Record<string, unknown> | null>;
|
|
618
|
-
}
|
|
619
|
-
declare class EnrichmentResource extends BaseResource {
|
|
620
|
-
enrichWork(workId: string): Promise<any>;
|
|
621
|
-
enrichPerson(personId: string): Promise<any>;
|
|
622
|
-
getWorkEnrichmentStatus(workId: string): Promise<any>;
|
|
623
|
-
getCandidates(): Promise<any>;
|
|
624
|
-
enrichWorkMlc(workId: string): Promise<any>;
|
|
625
|
-
enrichWorkMusicBrainz(workId: string): Promise<any>;
|
|
626
|
-
enrichWorkDiscogs(workId: string): Promise<any>;
|
|
627
|
-
enrichWorkSpotify(workId: string): Promise<any>;
|
|
628
|
-
enrichWorkYouTube(workId: string): Promise<any>;
|
|
629
|
-
/** Preview what a Spotify URL would do — delegates to streaming-link */
|
|
630
|
-
spotifyUrlPreview(url: string): Promise<any>;
|
|
631
|
-
/** Execute import/enrich from a Spotify URL — delegates to streaming-link */
|
|
632
|
-
spotifyUrlExecute(url: string): Promise<any>;
|
|
633
|
-
/** Link a Spotify track URI to a work, then enrich it */
|
|
634
|
-
linkAndEnrichSpotify(workId: string, spotifyUrl: string): Promise<any>;
|
|
635
|
-
}
|
|
636
|
-
declare class RegistrationResource extends BaseResource {
|
|
637
|
-
getCoverage(): Promise<any>;
|
|
638
|
-
getWorkCascadeStatus(workId: string): Promise<any>;
|
|
639
|
-
}
|
|
640
|
-
declare class HealthResource extends BaseResource {
|
|
641
|
-
getWorksHealth(): Promise<any>;
|
|
642
|
-
getLowScoreWorks(): Promise<any>;
|
|
643
|
-
getWorkCompleteness(workId: string): Promise<any>;
|
|
644
|
-
}
|
|
645
|
-
declare class DashboardResource extends BaseResource {
|
|
646
|
-
discoveries(params?: { unread?: boolean; limit?: number }): Promise<any>;
|
|
647
|
-
pendingDiscoveries(): Promise<any>;
|
|
648
|
-
reviewDiscovery(discoveryId: string, status: string): Promise<any>;
|
|
649
|
-
attentionItems(params?: { door?: string; limit?: number }): Promise<any>;
|
|
650
|
-
briefing(): Promise<any>;
|
|
651
|
-
pulse(): Promise<any>;
|
|
652
|
-
}
|
|
653
|
-
declare class IntegrationsResource extends BaseResource {
|
|
654
|
-
oauthConnections(): Promise<any>;
|
|
655
|
-
platforms(): Promise<any>;
|
|
656
|
-
}
|
|
657
|
-
declare class SettingsResource extends BaseResource {
|
|
658
|
-
creditsHistory(params?: { type?: string; limit?: number }): Promise<any>;
|
|
659
|
-
storageConfig(): Promise<any>;
|
|
660
|
-
orgProfile(): Promise<any>;
|
|
661
|
-
userProfile(): Promise<any>;
|
|
662
|
-
}
|
|
663
|
-
declare class CalendarResource extends BaseResource {
|
|
664
|
-
getEvents(params: {
|
|
665
|
-
startDate: string;
|
|
666
|
-
endDate: string;
|
|
667
|
-
types?: string[];
|
|
668
|
-
workId?: string;
|
|
669
|
-
search?: string;
|
|
670
|
-
}): Promise<any>;
|
|
671
|
-
}
|
|
672
|
-
declare class NotificationsResource extends BaseResource {
|
|
673
|
-
list(): Promise<any>;
|
|
674
|
-
markRead(ids: string[]): Promise<any>;
|
|
675
|
-
sendToPerson(params: {
|
|
676
|
-
person_id: string;
|
|
677
|
-
message: string;
|
|
678
|
-
work_id?: string;
|
|
679
|
-
notification_type?: string;
|
|
680
|
-
}): Promise<any>;
|
|
681
|
-
}
|
|
682
|
-
declare class AnalyticsResource extends BaseResource {
|
|
683
|
-
carbonSummary(): Promise<any>;
|
|
684
|
-
carbonLive(): Promise<any>;
|
|
685
|
-
provenanceStats(): Promise<any>;
|
|
686
|
-
provenanceWork(workId: string): Promise<any>;
|
|
687
|
-
provenanceCertificate(workId: string): Promise<any>;
|
|
688
|
-
catalogDiligence(): Promise<any>;
|
|
689
|
-
}
|
|
690
|
-
declare class BulkResource extends BaseResource {
|
|
691
|
-
updateWorks(workIds: string[], updates: Record<string, any>): Promise<any>;
|
|
692
|
-
updatePeopleRoles(
|
|
693
|
-
personIds: string[],
|
|
694
|
-
roles: string[],
|
|
695
|
-
action?: string,
|
|
696
|
-
): Promise<any>;
|
|
697
|
-
}
|
|
698
|
-
declare class ExportResource extends BaseResource {
|
|
699
|
-
catalogCsv(params?: { format?: string }): Promise<any>;
|
|
700
|
-
songRegistration(): Promise<any>;
|
|
701
|
-
industryReady(): Promise<any>;
|
|
702
|
-
catalogAssetReport(params: {
|
|
703
|
-
sections: {
|
|
704
|
-
ownership: true;
|
|
705
|
-
valuation?: boolean;
|
|
706
|
-
assets?: boolean;
|
|
707
|
-
agreements?: boolean;
|
|
708
|
-
intelligence?: boolean;
|
|
709
|
-
audio?: boolean;
|
|
710
|
-
};
|
|
711
|
-
attestation: {
|
|
712
|
-
signer_name: string;
|
|
713
|
-
declaration_accepted: boolean;
|
|
714
|
-
};
|
|
715
|
-
}): Promise<any>;
|
|
716
|
-
aiConsent(): Promise<any>;
|
|
717
|
-
}
|
|
718
|
-
declare class DuplicatesResource extends BaseResource {
|
|
719
|
-
findDuplicates(entityType: "works" | "people"): Promise<any>;
|
|
720
|
-
merge(
|
|
721
|
-
entityType: "work" | "person",
|
|
722
|
-
winnerId: string,
|
|
723
|
-
loserIds: string[],
|
|
724
|
-
): Promise<any>;
|
|
725
|
-
}
|
|
726
|
-
declare class EntityContextResource extends BaseResource {
|
|
727
|
-
getWorkFull(workId: string): Promise<Record<string, unknown>>;
|
|
728
|
-
getPersonFull(personId: string): Promise<Record<string, unknown>>;
|
|
729
|
-
}
|
|
730
|
-
declare class ComparisonsResource extends BaseResource {
|
|
731
|
-
enrichmentCompare(params: {
|
|
732
|
-
entityType: "work" | "person";
|
|
733
|
-
entityId: string;
|
|
734
|
-
}): Promise<Record<string, unknown>>;
|
|
735
|
-
registrationsCompare(workId: string): Promise<Record<string, unknown>>;
|
|
736
|
-
}
|
|
737
|
-
declare class SendResource extends BaseResource {
|
|
738
|
-
send(params: Record<string, unknown>): Promise<Record<string, unknown>>;
|
|
739
|
-
list(params?: {
|
|
740
|
-
type?: string;
|
|
741
|
-
status?: string;
|
|
742
|
-
personId?: string;
|
|
743
|
-
workId?: string;
|
|
744
|
-
limit?: number;
|
|
745
|
-
offset?: number;
|
|
746
|
-
}): Promise<{
|
|
747
|
-
items: Array<Record<string, unknown>>;
|
|
748
|
-
total: number;
|
|
749
|
-
}>;
|
|
750
|
-
listPending(): Promise<Array<Record<string, unknown>>>;
|
|
751
|
-
resend(id: string): Promise<Record<string, unknown>>;
|
|
752
|
-
}
|
|
753
|
-
declare class AssetsResource extends BaseResource {
|
|
754
|
-
list(params?: { category?: string; limit?: number }): Promise<any>;
|
|
755
|
-
get(id: string): Promise<any>;
|
|
756
|
-
create(data: Record<string, any>): Promise<any>;
|
|
757
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
758
|
-
delete(id: string): Promise<any>;
|
|
759
|
-
stats(): Promise<any>;
|
|
760
|
-
valuations(id: string): Promise<any>;
|
|
761
|
-
exportAll(): Promise<any>;
|
|
762
|
-
marketCheck(id: string): Promise<any>;
|
|
763
|
-
}
|
|
764
|
-
interface GenericPresignedResult {
|
|
765
|
-
uploadUrl: string;
|
|
766
|
-
uploadId: string;
|
|
767
|
-
key: string;
|
|
768
|
-
bucket: string;
|
|
769
|
-
storageCategory: "audio" | "media" | "documents";
|
|
770
|
-
expiresAt?: string;
|
|
771
|
-
metadata: Record<string, unknown>;
|
|
772
|
-
}
|
|
773
|
-
interface GenericCompleteResult {
|
|
774
|
-
uploadId: string;
|
|
775
|
-
recordId: string;
|
|
776
|
-
recordType: string;
|
|
777
|
-
key: string;
|
|
778
|
-
bucket: string;
|
|
779
|
-
storageCategory: string;
|
|
780
|
-
}
|
|
781
|
-
declare class StorageResource extends BaseResource {
|
|
782
|
-
presignedUpload(params: {
|
|
783
|
-
filename: string;
|
|
784
|
-
contentType: string;
|
|
785
|
-
fileSize: number;
|
|
786
|
-
storageCategory?: "audio" | "media" | "documents";
|
|
787
|
-
}): Promise<GenericPresignedResult>;
|
|
788
|
-
completeUpload(params: {
|
|
789
|
-
uploadId: string;
|
|
790
|
-
key: string;
|
|
791
|
-
bucket: string;
|
|
792
|
-
metadata: {
|
|
793
|
-
filename: string;
|
|
794
|
-
contentType: string;
|
|
795
|
-
fileSize: number;
|
|
796
|
-
storageCategory: "audio" | "media" | "documents";
|
|
797
|
-
title?: string;
|
|
798
|
-
workId?: string;
|
|
799
|
-
classification?: string;
|
|
800
|
-
collectionId?: string;
|
|
801
|
-
documentCategory?: string;
|
|
802
|
-
documentTitle?: string;
|
|
803
|
-
linkedToType?: string;
|
|
804
|
-
linkedToId?: string;
|
|
805
|
-
};
|
|
806
|
-
}): Promise<GenericCompleteResult>;
|
|
807
|
-
}
|
|
808
|
-
type ImportDomain =
|
|
809
|
-
| "works"
|
|
810
|
-
| "people"
|
|
811
|
-
| "recordings"
|
|
812
|
-
| "documents"
|
|
813
|
-
| "enquiries"
|
|
814
|
-
| "royalties";
|
|
815
|
-
interface ImportAnalysis {
|
|
816
|
-
parsed: {
|
|
817
|
-
headers: string[];
|
|
818
|
-
rows: Record<string, string>[];
|
|
819
|
-
totalRows: number;
|
|
820
|
-
};
|
|
821
|
-
analysis: {
|
|
822
|
-
mappings: Record<
|
|
823
|
-
string,
|
|
824
|
-
{
|
|
825
|
-
targetField: string;
|
|
826
|
-
transform?: string;
|
|
827
|
-
aiConfidence?: number;
|
|
828
|
-
required?: boolean;
|
|
829
|
-
}
|
|
830
|
-
>;
|
|
831
|
-
suggestions: string[];
|
|
832
|
-
};
|
|
833
|
-
}
|
|
834
|
-
interface ImportValidation {
|
|
835
|
-
valid: boolean;
|
|
836
|
-
errors: Array<{
|
|
837
|
-
row: number;
|
|
838
|
-
field: string;
|
|
839
|
-
message: string;
|
|
840
|
-
severity: "error" | "warning";
|
|
841
|
-
}>;
|
|
842
|
-
validRowCount: number;
|
|
843
|
-
invalidRowCount: number;
|
|
844
|
-
totalRowCount: number;
|
|
845
|
-
errorsByType: Record<string, number>;
|
|
846
|
-
}
|
|
847
|
-
interface ImportResult {
|
|
848
|
-
importedCount: number;
|
|
849
|
-
updatedCount: number;
|
|
850
|
-
skippedCount: number;
|
|
851
|
-
createdRecords: Array<{
|
|
852
|
-
id: string;
|
|
853
|
-
title?: string;
|
|
854
|
-
}>;
|
|
855
|
-
errors: Array<{
|
|
856
|
-
row: number;
|
|
857
|
-
field: string;
|
|
858
|
-
message: string;
|
|
859
|
-
severity: string;
|
|
860
|
-
}>;
|
|
861
|
-
summary: string;
|
|
862
|
-
dryRun: boolean;
|
|
863
|
-
}
|
|
864
|
-
declare class ImportResource extends BaseResource {
|
|
865
|
-
analyze(params: {
|
|
866
|
-
fileContent: string;
|
|
867
|
-
domain: ImportDomain;
|
|
868
|
-
}): Promise<ImportAnalysis>;
|
|
869
|
-
suggestMapping(params: {
|
|
870
|
-
domain: ImportDomain;
|
|
871
|
-
headers: string[];
|
|
872
|
-
sampleRows: Record<string, string>[];
|
|
873
|
-
}): Promise<{
|
|
874
|
-
mappings: Array<{
|
|
875
|
-
csvColumn: string;
|
|
876
|
-
targetField: string;
|
|
877
|
-
transformType: string;
|
|
878
|
-
confidence: number;
|
|
879
|
-
required: boolean;
|
|
880
|
-
}>;
|
|
881
|
-
unmappedCsvColumns: string[];
|
|
882
|
-
missingRequiredFields: string[];
|
|
883
|
-
aiSuggestions: string[];
|
|
884
|
-
}>;
|
|
885
|
-
validate(params: {
|
|
886
|
-
domain: ImportDomain;
|
|
887
|
-
fileContent: string;
|
|
888
|
-
mapping: Array<{
|
|
889
|
-
csvColumn: string;
|
|
890
|
-
targetField: string;
|
|
891
|
-
transformType?: string;
|
|
892
|
-
}>;
|
|
893
|
-
}): Promise<ImportValidation>;
|
|
894
|
-
execute(params: {
|
|
895
|
-
domain: ImportDomain;
|
|
896
|
-
fileContent: string;
|
|
897
|
-
mapping: Array<{
|
|
898
|
-
csvColumn: string;
|
|
899
|
-
targetField: string;
|
|
900
|
-
transformType?: string;
|
|
901
|
-
}>;
|
|
902
|
-
options: {
|
|
903
|
-
dryRun?: boolean;
|
|
904
|
-
skipInvalidRows?: boolean;
|
|
905
|
-
batchSize?: number;
|
|
906
|
-
};
|
|
907
|
-
}): Promise<ImportResult>;
|
|
908
|
-
getFields(domain: ImportDomain): Promise<
|
|
909
|
-
Array<{
|
|
910
|
-
name: string;
|
|
911
|
-
label: string;
|
|
912
|
-
description?: string;
|
|
913
|
-
required: boolean;
|
|
914
|
-
type: string;
|
|
915
|
-
}>
|
|
916
|
-
>;
|
|
917
|
-
streamingLinkPreview(url: string): Promise<{
|
|
918
|
-
tracks: Array<{
|
|
919
|
-
title: string;
|
|
920
|
-
artists: Array<{
|
|
921
|
-
name: string;
|
|
922
|
-
}>;
|
|
923
|
-
album?: string;
|
|
924
|
-
isrc?: string;
|
|
925
|
-
platform: string;
|
|
926
|
-
externalId: string;
|
|
927
|
-
externalUrl: string;
|
|
928
|
-
}>;
|
|
929
|
-
duplicates: Array<{
|
|
930
|
-
track: {
|
|
931
|
-
title: string;
|
|
932
|
-
externalId: string;
|
|
933
|
-
};
|
|
934
|
-
existingWorkId: string;
|
|
935
|
-
existingTitle: string;
|
|
936
|
-
matchType: string;
|
|
937
|
-
}>;
|
|
938
|
-
newTracks: Array<{
|
|
939
|
-
title: string;
|
|
940
|
-
artists: Array<{
|
|
941
|
-
name: string;
|
|
942
|
-
}>;
|
|
943
|
-
isrc?: string;
|
|
944
|
-
externalId: string;
|
|
945
|
-
}>;
|
|
946
|
-
source: {
|
|
947
|
-
platform: string;
|
|
948
|
-
type: string;
|
|
949
|
-
name?: string;
|
|
950
|
-
url: string;
|
|
951
|
-
};
|
|
952
|
-
}>;
|
|
953
|
-
streamingLinkImport(
|
|
954
|
-
url: string,
|
|
955
|
-
selectedTrackIds?: string[],
|
|
956
|
-
): Promise<{
|
|
957
|
-
worksCreated: number;
|
|
958
|
-
recordingsCreated: number;
|
|
959
|
-
peopleCreated: number;
|
|
960
|
-
creditsCreated: number;
|
|
961
|
-
multimediaLinked: number;
|
|
962
|
-
duplicatesSkipped: number;
|
|
963
|
-
workIds: string[];
|
|
964
|
-
}>;
|
|
965
|
-
getTemplate(domain: ImportDomain): Promise<string>;
|
|
966
|
-
}
|
|
967
|
-
declare class DocumentsResource extends BaseResource {
|
|
968
|
-
analyse(id: string): Promise<Record<string, unknown>>;
|
|
969
|
-
}
|
|
970
|
-
interface CollaboratorInvite {
|
|
971
|
-
id: string;
|
|
972
|
-
work_id: string;
|
|
973
|
-
person_id?: string;
|
|
974
|
-
email: string;
|
|
975
|
-
name: string;
|
|
976
|
-
status: "pending" | "accepted" | "expired";
|
|
977
|
-
token?: string;
|
|
978
|
-
created_at: string;
|
|
979
|
-
updated_at: string;
|
|
980
|
-
}
|
|
981
|
-
declare class CollaboratorsResource extends BaseResource {
|
|
982
|
-
invite(params: {
|
|
983
|
-
workId: string;
|
|
984
|
-
personData: {
|
|
985
|
-
name: string;
|
|
986
|
-
email: string;
|
|
987
|
-
role?: string;
|
|
988
|
-
};
|
|
989
|
-
invitedBy: string;
|
|
990
|
-
creditData: {
|
|
991
|
-
credit_type: string;
|
|
992
|
-
percentage_split?: number;
|
|
993
|
-
role_description?: string;
|
|
994
|
-
};
|
|
995
|
-
}): Promise<Record<string, unknown>>;
|
|
996
|
-
listInvites(params?: {
|
|
997
|
-
status?: "pending" | "accepted" | "expired";
|
|
998
|
-
workId?: string;
|
|
999
|
-
limit?: number;
|
|
1000
|
-
}): Promise<CollaboratorInvite[]>;
|
|
1001
|
-
resendInvite(inviteId: string): Promise<Record<string, unknown>>;
|
|
1002
|
-
}
|
|
1003
|
-
interface DirectorySettings {
|
|
1004
|
-
organisation_id: string;
|
|
1005
|
-
opted_in: boolean;
|
|
1006
|
-
show_splits: boolean;
|
|
1007
|
-
show_publishers: boolean;
|
|
1008
|
-
show_agreements: boolean;
|
|
1009
|
-
show_audio_preview: boolean;
|
|
1010
|
-
show_stems: boolean;
|
|
1011
|
-
contact_enabled: boolean;
|
|
1012
|
-
}
|
|
1013
|
-
declare class DirectoryResource extends BaseResource {
|
|
1014
|
-
getSettings(): Promise<{
|
|
1015
|
-
settings: DirectorySettings;
|
|
1016
|
-
eligible_work_count: number;
|
|
1017
|
-
}>;
|
|
1018
|
-
updateSettings(
|
|
1019
|
-
updates: Partial<DirectorySettings>,
|
|
1020
|
-
): Promise<DirectorySettings>;
|
|
1021
|
-
}
|
|
1022
|
-
declare class ProjectsResource extends BaseResource {
|
|
1023
|
-
list(params?: { limit?: number }): Promise<any>;
|
|
1024
|
-
get(id: string): Promise<any>;
|
|
1025
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1026
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1027
|
-
delete(id: string): Promise<any>;
|
|
1028
|
-
}
|
|
1029
|
-
declare class SplitSheetsResource extends BaseResource {
|
|
1030
|
-
listForWork(workId: string): Promise<any>;
|
|
1031
|
-
generate(workId: string): Promise<any>;
|
|
1032
|
-
get(workId: string, splitSheetId: string): Promise<any>;
|
|
1033
|
-
}
|
|
1034
|
-
declare class RecordingSplitsResource extends BaseResource {
|
|
1035
|
-
list(recordingId: string): Promise<any>;
|
|
1036
|
-
create(recordingId: string, data: Record<string, any>): Promise<any>;
|
|
1037
|
-
update(
|
|
1038
|
-
recordingId: string,
|
|
1039
|
-
splitId: string,
|
|
1040
|
-
data: Record<string, any>,
|
|
1041
|
-
): Promise<any>;
|
|
1042
|
-
delete(recordingId: string, splitId: string): Promise<any>;
|
|
1043
|
-
verify(recordingId: string, splitId: string): Promise<any>;
|
|
1044
|
-
}
|
|
1045
|
-
declare class ReleasesResource extends BaseResource {
|
|
1046
|
-
list(params?: { limit?: number }): Promise<any>;
|
|
1047
|
-
get(id: string): Promise<any>;
|
|
1048
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1049
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1050
|
-
delete(id: string): Promise<any>;
|
|
1051
|
-
}
|
|
1052
|
-
declare class SessionsResource extends BaseResource {
|
|
1053
|
-
list(params?: { limit?: number }): Promise<any>;
|
|
1054
|
-
get(id: string): Promise<any>;
|
|
1055
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1056
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1057
|
-
getTypes(): Promise<any>;
|
|
1058
|
-
}
|
|
1059
|
-
declare class AgreementTemplatesResource extends BaseResource {
|
|
1060
|
-
list(): Promise<any[]>;
|
|
1061
|
-
get(id: string): Promise<any>;
|
|
1062
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1063
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1064
|
-
delete(id: string): Promise<void>;
|
|
1065
|
-
render(id: string, data: Record<string, any>): Promise<any>;
|
|
1066
|
-
duplicate(id: string): Promise<any>;
|
|
1067
|
-
setDefault(id: string): Promise<any>;
|
|
1068
|
-
}
|
|
1069
|
-
declare class ProducerAgreementsResource extends BaseResource {
|
|
1070
|
-
list(): Promise<any[]>;
|
|
1071
|
-
get(id: string): Promise<any>;
|
|
1072
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1073
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1074
|
-
delete(id: string): Promise<void>;
|
|
1075
|
-
}
|
|
1076
|
-
declare class WorkForHireResource extends BaseResource {
|
|
1077
|
-
list(): Promise<any[]>;
|
|
1078
|
-
get(id: string): Promise<any>;
|
|
1079
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1080
|
-
update(id: string, data: Record<string, any>): Promise<any>;
|
|
1081
|
-
delete(id: string): Promise<void>;
|
|
1082
|
-
}
|
|
1083
|
-
declare class RoyaltiesResource extends BaseResource {
|
|
1084
|
-
payments(params?: {
|
|
1085
|
-
source?: string;
|
|
1086
|
-
workId?: string;
|
|
1087
|
-
fromDate?: string;
|
|
1088
|
-
toDate?: string;
|
|
1089
|
-
limit?: number;
|
|
1090
|
-
offset?: number;
|
|
1091
|
-
}): Promise<any[]>;
|
|
1092
|
-
earnings(params?: {
|
|
1093
|
-
start_date?: string;
|
|
1094
|
-
end_date?: string;
|
|
1095
|
-
source?: string;
|
|
1096
|
-
limit?: number;
|
|
1097
|
-
offset?: number;
|
|
1098
|
-
}): Promise<any>;
|
|
1099
|
-
gaps(params?: {
|
|
1100
|
-
priority?: string;
|
|
1101
|
-
gapType?: string;
|
|
1102
|
-
workId?: string;
|
|
1103
|
-
limit?: number;
|
|
1104
|
-
}): Promise<any[]>;
|
|
1105
|
-
stats(): Promise<any>;
|
|
1106
|
-
}
|
|
1107
|
-
declare class StatementsResource extends BaseResource {
|
|
1108
|
-
history(params?: {
|
|
1109
|
-
source?: string;
|
|
1110
|
-
dateFrom?: string;
|
|
1111
|
-
dateTo?: string;
|
|
1112
|
-
search?: string;
|
|
1113
|
-
limit?: number;
|
|
1114
|
-
offset?: number;
|
|
1115
|
-
sort?: string;
|
|
1116
|
-
}): Promise<any>;
|
|
1117
|
-
get(batchId: string): Promise<any>;
|
|
1118
|
-
}
|
|
1119
|
-
declare class ShareLinksResource extends BaseResource {
|
|
1120
|
-
list(params?: { work_id?: string }): Promise<any[]>;
|
|
1121
|
-
create(data: Record<string, any>): Promise<any>;
|
|
1122
|
-
}
|
|
1123
|
-
declare class DisputesResource extends BaseResource {
|
|
1124
|
-
list(params?: { status?: string }): Promise<any>;
|
|
1125
|
-
}
|
|
1126
|
-
declare class ChainResource extends BaseResource {
|
|
1127
|
-
search(params: {
|
|
1128
|
-
q: string;
|
|
1129
|
-
limit?: number;
|
|
1130
|
-
expand_first?: boolean;
|
|
1131
|
-
}): Promise<any>;
|
|
1132
|
-
getById(type: string, id: string): Promise<any>;
|
|
1133
|
-
traverse(identifier: string): Promise<any>;
|
|
1134
|
-
}
|
|
1135
|
-
declare class TelegramResource extends BaseResource {
|
|
1136
|
-
getStatus(): Promise<any>;
|
|
1137
|
-
sendNotification(message: string): Promise<any>;
|
|
1138
|
-
getPreferences(): Promise<any>;
|
|
1139
|
-
}
|
|
1140
|
-
declare class ImportDocumentsResource extends BaseResource {
|
|
1141
|
-
list(options?: {
|
|
1142
|
-
source?: string;
|
|
1143
|
-
period?: string;
|
|
1144
|
-
document_type?: string;
|
|
1145
|
-
limit?: number;
|
|
1146
|
-
}): Promise<any[]>;
|
|
1147
|
-
get(id: string): Promise<any>;
|
|
1148
|
-
ingest(content: string): Promise<any>;
|
|
1149
|
-
}
|
|
1150
|
-
export declare class PicaClient {
|
|
1151
|
-
works: WorksResource;
|
|
1152
|
-
people: PeopleResource;
|
|
1153
|
-
recordings: RecordingsResource;
|
|
1154
|
-
licensing: LicensingResource;
|
|
1155
|
-
credits: CreditsResource;
|
|
1156
|
-
creditsBalance: CreditsBalanceResource;
|
|
1157
|
-
picaScore: PicaScoreResource;
|
|
1158
|
-
audioFiles: AudioFilesResource;
|
|
1159
|
-
multimedia: MultimediaResource;
|
|
1160
|
-
agreements: AgreementsResource;
|
|
1161
|
-
workspace: WorkspaceResource;
|
|
1162
|
-
memory: MemoryResource;
|
|
1163
|
-
enrichment: EnrichmentResource;
|
|
1164
|
-
registration: RegistrationResource;
|
|
1165
|
-
health: HealthResource;
|
|
1166
|
-
bulk: BulkResource;
|
|
1167
|
-
exports: ExportResource;
|
|
1168
|
-
duplicates: DuplicatesResource;
|
|
1169
|
-
collaborators: CollaboratorsResource;
|
|
1170
|
-
entityContext: EntityContextResource;
|
|
1171
|
-
comparisons: ComparisonsResource;
|
|
1172
|
-
send: SendResource;
|
|
1173
|
-
imports: ImportResource;
|
|
1174
|
-
storage: StorageResource;
|
|
1175
|
-
documents: DocumentsResource;
|
|
1176
|
-
analytics: AnalyticsResource;
|
|
1177
|
-
notifications: NotificationsResource;
|
|
1178
|
-
calendar: CalendarResource;
|
|
1179
|
-
dashboard: DashboardResource;
|
|
1180
|
-
integrations: IntegrationsResource;
|
|
1181
|
-
settings: SettingsResource;
|
|
1182
|
-
directory: DirectoryResource;
|
|
1183
|
-
importDocuments: ImportDocumentsResource;
|
|
1184
|
-
sessions: SessionsResource;
|
|
1185
|
-
assets: AssetsResource;
|
|
1186
|
-
notes: NotesResource;
|
|
1187
|
-
team: TeamResource;
|
|
1188
|
-
projects: ProjectsResource;
|
|
1189
|
-
releases: ReleasesResource;
|
|
1190
|
-
splitSheets: SplitSheetsResource;
|
|
1191
|
-
recordingSplits: RecordingSplitsResource;
|
|
1192
|
-
agreementTemplates: AgreementTemplatesResource;
|
|
1193
|
-
producerAgreements: ProducerAgreementsResource;
|
|
1194
|
-
workForHire: WorkForHireResource;
|
|
1195
|
-
royalties: RoyaltiesResource;
|
|
1196
|
-
statements: StatementsResource;
|
|
1197
|
-
shareLinks: ShareLinksResource;
|
|
1198
|
-
disputes: DisputesResource;
|
|
1199
|
-
chain: ChainResource;
|
|
1200
|
-
telegram: TelegramResource;
|
|
1201
|
-
/**
|
|
1202
|
-
* Get accurate catalog stats via SQL counts (no pagination limits)
|
|
1203
|
-
*/
|
|
1204
|
-
catalogStats(): Promise<CatalogStats>;
|
|
1205
|
-
constructor(config: PicaClientConfig);
|
|
1206
|
-
}
|
|
1207
|
-
export type {
|
|
1208
|
-
Work,
|
|
1209
|
-
Person,
|
|
1210
|
-
Recording,
|
|
1211
|
-
PaginatedResult,
|
|
1212
|
-
PicaClientConfig,
|
|
1213
|
-
SyncSearchParams,
|
|
1214
|
-
SyncTrack,
|
|
1215
|
-
SyncSearchResult,
|
|
1216
|
-
LicenseEnquiryInput,
|
|
1217
|
-
LicenseEnquiry,
|
|
1218
|
-
WorkCredit,
|
|
1219
|
-
WorkCreditsInput,
|
|
1220
|
-
PicaScore,
|
|
1221
|
-
PicaScorePillar,
|
|
1222
|
-
AudioFile,
|
|
1223
|
-
AudioAnalysisStatus,
|
|
1224
|
-
PresignedUploadResult,
|
|
1225
|
-
CompleteUploadResult,
|
|
1226
|
-
IdentifyResult,
|
|
1227
|
-
MultimediaItem,
|
|
1228
|
-
Agreement,
|
|
1229
|
-
AgreementWorkLink,
|
|
1230
|
-
};
|
|
1231
|
-
//# sourceMappingURL=pica-sdk.d.ts.map
|