postboost 1.5.0 → 1.7.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/README.md CHANGED
@@ -13,7 +13,7 @@ npm install postboost
13
13
  | **npm** | [npmjs.com/package/postboost](https://www.npmjs.com/package/postboost) |
14
14
  | **GitHub** | [postboost-co/postboost-node](https://github.com/postboost-co/postboost-node) |
15
15
  | **Docs** | [postboost.co/docs/api](https://postboost.co/docs/api) |
16
- | **Version** | v1.5.0 |
16
+ | **Version** | v1.7.0 |
17
17
 
18
18
  ## Quick start
19
19
 
package/api/aIApi.ts CHANGED
@@ -18,6 +18,17 @@ import http from 'http';
18
18
  import { BlogToSocial200Response } from '../model/blogToSocial200Response';
19
19
  import { BlogToSocial429Response } from '../model/blogToSocial429Response';
20
20
  import { BlogToSocialInput } from '../model/blogToSocialInput';
21
+ import { ImageAltText200Response } from '../model/imageAltText200Response';
22
+ import { ImageAltTextInput } from '../model/imageAltTextInput';
23
+ import { ImageEditInput } from '../model/imageEditInput';
24
+ import { ImageGenerate200Response } from '../model/imageGenerate200Response';
25
+ import { ImageGenerate429Response } from '../model/imageGenerate429Response';
26
+ import { ImageGenerateInput } from '../model/imageGenerateInput';
27
+ import { ImagePrompt200Response } from '../model/imagePrompt200Response';
28
+ import { ImagePrompt429Response } from '../model/imagePrompt429Response';
29
+ import { ImagePromptInput } from '../model/imagePromptInput';
30
+ import { ImageVariations200Response } from '../model/imageVariations200Response';
31
+ import { ImageVariationsInput } from '../model/imageVariationsInput';
21
32
 
22
33
  import { ObjectSerializer, Authentication, VoidAuth, Interceptor } from '../model/models';
23
34
  import { HttpBasicAuth, HttpBearerAuth, ApiKeyAuth, OAuth } from '../model/models';
@@ -173,4 +184,399 @@ export class AIApi {
173
184
  });
174
185
  });
175
186
  }
187
+ /**
188
+ * Analyzes an existing workspace media item and generates accessible alt text. The alt text is saved back to the media record. Costs 1 AI credit per call.
189
+ * @summary Generate alt text for a media image using AI
190
+ * @param workspaceUuid UUID of the workspace.
191
+ * @param imageAltTextInput
192
+ */
193
+ public async imageAltText (workspaceUuid: string, imageAltTextInput: ImageAltTextInput, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: ImageAltText200Response; }> {
194
+ const localVarPath = this.basePath + '/{workspaceUuid}/ai/image-alt-text'
195
+ .replace('{' + 'workspaceUuid' + '}', encodeURIComponent(String(workspaceUuid)));
196
+ let localVarQueryParameters: any = {};
197
+ let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
198
+ const produces = ['application/json'];
199
+ // give precedence to 'application/json'
200
+ if (produces.indexOf('application/json') >= 0) {
201
+ localVarHeaderParams.Accept = 'application/json';
202
+ } else {
203
+ localVarHeaderParams.Accept = produces.join(',');
204
+ }
205
+ let localVarFormParams: any = {};
206
+
207
+ // verify required parameter 'workspaceUuid' is not null or undefined
208
+ if (workspaceUuid === null || workspaceUuid === undefined) {
209
+ throw new Error('Required parameter workspaceUuid was null or undefined when calling imageAltText.');
210
+ }
211
+
212
+ // verify required parameter 'imageAltTextInput' is not null or undefined
213
+ if (imageAltTextInput === null || imageAltTextInput === undefined) {
214
+ throw new Error('Required parameter imageAltTextInput was null or undefined when calling imageAltText.');
215
+ }
216
+
217
+ (<any>Object).assign(localVarHeaderParams, options.headers);
218
+
219
+ let localVarUseFormData = false;
220
+
221
+ let localVarRequestOptions: localVarRequest.Options = {
222
+ method: 'POST',
223
+ qs: localVarQueryParameters,
224
+ headers: localVarHeaderParams,
225
+ uri: localVarPath,
226
+ useQuerystring: this._useQuerystring,
227
+ json: true,
228
+ body: ObjectSerializer.serialize(imageAltTextInput, "ImageAltTextInput")
229
+ };
230
+
231
+ let authenticationPromise = Promise.resolve();
232
+ if (this.authentications.bearerAuth.accessToken) {
233
+ authenticationPromise = authenticationPromise.then(() => this.authentications.bearerAuth.applyToRequest(localVarRequestOptions));
234
+ }
235
+ authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
236
+
237
+ let interceptorPromise = authenticationPromise;
238
+ for (const interceptor of this.interceptors) {
239
+ interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
240
+ }
241
+
242
+ return interceptorPromise.then(() => {
243
+ if (Object.keys(localVarFormParams).length) {
244
+ if (localVarUseFormData) {
245
+ (<any>localVarRequestOptions).formData = localVarFormParams;
246
+ } else {
247
+ localVarRequestOptions.form = localVarFormParams;
248
+ }
249
+ }
250
+ return new Promise<{ response: http.IncomingMessage; body: ImageAltText200Response; }>((resolve, reject) => {
251
+ localVarRequest(localVarRequestOptions, (error, response, body) => {
252
+ if (error) {
253
+ reject(error);
254
+ } else {
255
+ if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
256
+ body = ObjectSerializer.deserialize(body, "ImageAltText200Response");
257
+ resolve({ response: response, body: body });
258
+ } else {
259
+ reject(new HttpError(response, body, response.statusCode));
260
+ }
261
+ }
262
+ });
263
+ });
264
+ });
265
+ }
266
+ /**
267
+ * Edits an existing workspace media item using the source image and a text prompt. Optionally accepts a mask (transparent areas are replaced). Saves results to the media library. Credits: `count × credit_weight`.
268
+ * @summary Edit an existing media image using AI
269
+ * @param workspaceUuid UUID of the workspace.
270
+ * @param imageEditInput
271
+ */
272
+ public async imageEdit (workspaceUuid: string, imageEditInput: ImageEditInput, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: ImageGenerate200Response; }> {
273
+ const localVarPath = this.basePath + '/{workspaceUuid}/ai/image-edit'
274
+ .replace('{' + 'workspaceUuid' + '}', encodeURIComponent(String(workspaceUuid)));
275
+ let localVarQueryParameters: any = {};
276
+ let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
277
+ const produces = ['application/json'];
278
+ // give precedence to 'application/json'
279
+ if (produces.indexOf('application/json') >= 0) {
280
+ localVarHeaderParams.Accept = 'application/json';
281
+ } else {
282
+ localVarHeaderParams.Accept = produces.join(',');
283
+ }
284
+ let localVarFormParams: any = {};
285
+
286
+ // verify required parameter 'workspaceUuid' is not null or undefined
287
+ if (workspaceUuid === null || workspaceUuid === undefined) {
288
+ throw new Error('Required parameter workspaceUuid was null or undefined when calling imageEdit.');
289
+ }
290
+
291
+ // verify required parameter 'imageEditInput' is not null or undefined
292
+ if (imageEditInput === null || imageEditInput === undefined) {
293
+ throw new Error('Required parameter imageEditInput was null or undefined when calling imageEdit.');
294
+ }
295
+
296
+ (<any>Object).assign(localVarHeaderParams, options.headers);
297
+
298
+ let localVarUseFormData = false;
299
+
300
+ let localVarRequestOptions: localVarRequest.Options = {
301
+ method: 'POST',
302
+ qs: localVarQueryParameters,
303
+ headers: localVarHeaderParams,
304
+ uri: localVarPath,
305
+ useQuerystring: this._useQuerystring,
306
+ json: true,
307
+ body: ObjectSerializer.serialize(imageEditInput, "ImageEditInput")
308
+ };
309
+
310
+ let authenticationPromise = Promise.resolve();
311
+ if (this.authentications.bearerAuth.accessToken) {
312
+ authenticationPromise = authenticationPromise.then(() => this.authentications.bearerAuth.applyToRequest(localVarRequestOptions));
313
+ }
314
+ authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
315
+
316
+ let interceptorPromise = authenticationPromise;
317
+ for (const interceptor of this.interceptors) {
318
+ interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
319
+ }
320
+
321
+ return interceptorPromise.then(() => {
322
+ if (Object.keys(localVarFormParams).length) {
323
+ if (localVarUseFormData) {
324
+ (<any>localVarRequestOptions).formData = localVarFormParams;
325
+ } else {
326
+ localVarRequestOptions.form = localVarFormParams;
327
+ }
328
+ }
329
+ return new Promise<{ response: http.IncomingMessage; body: ImageGenerate200Response; }>((resolve, reject) => {
330
+ localVarRequest(localVarRequestOptions, (error, response, body) => {
331
+ if (error) {
332
+ reject(error);
333
+ } else {
334
+ if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
335
+ body = ObjectSerializer.deserialize(body, "ImageGenerate200Response");
336
+ resolve({ response: response, body: body });
337
+ } else {
338
+ reject(new HttpError(response, body, response.statusCode));
339
+ }
340
+ }
341
+ });
342
+ });
343
+ });
344
+ }
345
+ /**
346
+ * Generates one or more images and saves them immediately to the workspace media library. **Standard mode** (recommended): provide `caption` + `platform`. PostBoost builds a professional image prompt internally using platform-specific templates. No prompt engineering required. **Developer mode**: provide `prompt` directly to bypass prompt building. If both `caption` and `prompt` are sent, standard mode runs. Credits: `count x credit_weight` (default: 5 per image).
347
+ * @summary Generate social media images from a caption
348
+ * @param workspaceUuid UUID of the workspace.
349
+ * @param imageGenerateInput
350
+ */
351
+ public async imageGenerate (workspaceUuid: string, imageGenerateInput: ImageGenerateInput, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: ImageGenerate200Response; }> {
352
+ const localVarPath = this.basePath + '/{workspaceUuid}/ai/image-generate'
353
+ .replace('{' + 'workspaceUuid' + '}', encodeURIComponent(String(workspaceUuid)));
354
+ let localVarQueryParameters: any = {};
355
+ let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
356
+ const produces = ['application/json'];
357
+ // give precedence to 'application/json'
358
+ if (produces.indexOf('application/json') >= 0) {
359
+ localVarHeaderParams.Accept = 'application/json';
360
+ } else {
361
+ localVarHeaderParams.Accept = produces.join(',');
362
+ }
363
+ let localVarFormParams: any = {};
364
+
365
+ // verify required parameter 'workspaceUuid' is not null or undefined
366
+ if (workspaceUuid === null || workspaceUuid === undefined) {
367
+ throw new Error('Required parameter workspaceUuid was null or undefined when calling imageGenerate.');
368
+ }
369
+
370
+ // verify required parameter 'imageGenerateInput' is not null or undefined
371
+ if (imageGenerateInput === null || imageGenerateInput === undefined) {
372
+ throw new Error('Required parameter imageGenerateInput was null or undefined when calling imageGenerate.');
373
+ }
374
+
375
+ (<any>Object).assign(localVarHeaderParams, options.headers);
376
+
377
+ let localVarUseFormData = false;
378
+
379
+ let localVarRequestOptions: localVarRequest.Options = {
380
+ method: 'POST',
381
+ qs: localVarQueryParameters,
382
+ headers: localVarHeaderParams,
383
+ uri: localVarPath,
384
+ useQuerystring: this._useQuerystring,
385
+ json: true,
386
+ body: ObjectSerializer.serialize(imageGenerateInput, "ImageGenerateInput")
387
+ };
388
+
389
+ let authenticationPromise = Promise.resolve();
390
+ if (this.authentications.bearerAuth.accessToken) {
391
+ authenticationPromise = authenticationPromise.then(() => this.authentications.bearerAuth.applyToRequest(localVarRequestOptions));
392
+ }
393
+ authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
394
+
395
+ let interceptorPromise = authenticationPromise;
396
+ for (const interceptor of this.interceptors) {
397
+ interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
398
+ }
399
+
400
+ return interceptorPromise.then(() => {
401
+ if (Object.keys(localVarFormParams).length) {
402
+ if (localVarUseFormData) {
403
+ (<any>localVarRequestOptions).formData = localVarFormParams;
404
+ } else {
405
+ localVarRequestOptions.form = localVarFormParams;
406
+ }
407
+ }
408
+ return new Promise<{ response: http.IncomingMessage; body: ImageGenerate200Response; }>((resolve, reject) => {
409
+ localVarRequest(localVarRequestOptions, (error, response, body) => {
410
+ if (error) {
411
+ reject(error);
412
+ } else {
413
+ if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
414
+ body = ObjectSerializer.deserialize(body, "ImageGenerate200Response");
415
+ resolve({ response: response, body: body });
416
+ } else {
417
+ reject(new HttpError(response, body, response.statusCode));
418
+ }
419
+ }
420
+ });
421
+ });
422
+ });
423
+ }
424
+ /**
425
+ * Builds a professional image generation prompt from a caption and platform. No image is generated. Use this to preview the prompt before calling `image-generate`. Costs 1 AI credit per call. When `image-generate` builds the prompt internally (standard mode), no credit is charged for the prompt step.
426
+ * @summary Build an optimized image prompt from a social media caption
427
+ * @param workspaceUuid UUID of the workspace.
428
+ * @param imagePromptInput
429
+ */
430
+ public async imagePrompt (workspaceUuid: string, imagePromptInput: ImagePromptInput, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: ImagePrompt200Response; }> {
431
+ const localVarPath = this.basePath + '/{workspaceUuid}/ai/image-prompt'
432
+ .replace('{' + 'workspaceUuid' + '}', encodeURIComponent(String(workspaceUuid)));
433
+ let localVarQueryParameters: any = {};
434
+ let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
435
+ const produces = ['application/json'];
436
+ // give precedence to 'application/json'
437
+ if (produces.indexOf('application/json') >= 0) {
438
+ localVarHeaderParams.Accept = 'application/json';
439
+ } else {
440
+ localVarHeaderParams.Accept = produces.join(',');
441
+ }
442
+ let localVarFormParams: any = {};
443
+
444
+ // verify required parameter 'workspaceUuid' is not null or undefined
445
+ if (workspaceUuid === null || workspaceUuid === undefined) {
446
+ throw new Error('Required parameter workspaceUuid was null or undefined when calling imagePrompt.');
447
+ }
448
+
449
+ // verify required parameter 'imagePromptInput' is not null or undefined
450
+ if (imagePromptInput === null || imagePromptInput === undefined) {
451
+ throw new Error('Required parameter imagePromptInput was null or undefined when calling imagePrompt.');
452
+ }
453
+
454
+ (<any>Object).assign(localVarHeaderParams, options.headers);
455
+
456
+ let localVarUseFormData = false;
457
+
458
+ let localVarRequestOptions: localVarRequest.Options = {
459
+ method: 'POST',
460
+ qs: localVarQueryParameters,
461
+ headers: localVarHeaderParams,
462
+ uri: localVarPath,
463
+ useQuerystring: this._useQuerystring,
464
+ json: true,
465
+ body: ObjectSerializer.serialize(imagePromptInput, "ImagePromptInput")
466
+ };
467
+
468
+ let authenticationPromise = Promise.resolve();
469
+ if (this.authentications.bearerAuth.accessToken) {
470
+ authenticationPromise = authenticationPromise.then(() => this.authentications.bearerAuth.applyToRequest(localVarRequestOptions));
471
+ }
472
+ authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
473
+
474
+ let interceptorPromise = authenticationPromise;
475
+ for (const interceptor of this.interceptors) {
476
+ interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
477
+ }
478
+
479
+ return interceptorPromise.then(() => {
480
+ if (Object.keys(localVarFormParams).length) {
481
+ if (localVarUseFormData) {
482
+ (<any>localVarRequestOptions).formData = localVarFormParams;
483
+ } else {
484
+ localVarRequestOptions.form = localVarFormParams;
485
+ }
486
+ }
487
+ return new Promise<{ response: http.IncomingMessage; body: ImagePrompt200Response; }>((resolve, reject) => {
488
+ localVarRequest(localVarRequestOptions, (error, response, body) => {
489
+ if (error) {
490
+ reject(error);
491
+ } else {
492
+ if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
493
+ body = ObjectSerializer.deserialize(body, "ImagePrompt200Response");
494
+ resolve({ response: response, body: body });
495
+ } else {
496
+ reject(new HttpError(response, body, response.statusCode));
497
+ }
498
+ }
499
+ });
500
+ });
501
+ });
502
+ }
503
+ /**
504
+ * Creates one or more variations of an existing workspace media item. Saves results to the media library. Credits: `count × credit_weight`.
505
+ * @summary Generate variations of an existing media image
506
+ * @param workspaceUuid UUID of the workspace.
507
+ * @param imageVariationsInput
508
+ */
509
+ public async imageVariations (workspaceUuid: string, imageVariationsInput: ImageVariationsInput, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: ImageVariations200Response; }> {
510
+ const localVarPath = this.basePath + '/{workspaceUuid}/ai/image-variations'
511
+ .replace('{' + 'workspaceUuid' + '}', encodeURIComponent(String(workspaceUuid)));
512
+ let localVarQueryParameters: any = {};
513
+ let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
514
+ const produces = ['application/json'];
515
+ // give precedence to 'application/json'
516
+ if (produces.indexOf('application/json') >= 0) {
517
+ localVarHeaderParams.Accept = 'application/json';
518
+ } else {
519
+ localVarHeaderParams.Accept = produces.join(',');
520
+ }
521
+ let localVarFormParams: any = {};
522
+
523
+ // verify required parameter 'workspaceUuid' is not null or undefined
524
+ if (workspaceUuid === null || workspaceUuid === undefined) {
525
+ throw new Error('Required parameter workspaceUuid was null or undefined when calling imageVariations.');
526
+ }
527
+
528
+ // verify required parameter 'imageVariationsInput' is not null or undefined
529
+ if (imageVariationsInput === null || imageVariationsInput === undefined) {
530
+ throw new Error('Required parameter imageVariationsInput was null or undefined when calling imageVariations.');
531
+ }
532
+
533
+ (<any>Object).assign(localVarHeaderParams, options.headers);
534
+
535
+ let localVarUseFormData = false;
536
+
537
+ let localVarRequestOptions: localVarRequest.Options = {
538
+ method: 'POST',
539
+ qs: localVarQueryParameters,
540
+ headers: localVarHeaderParams,
541
+ uri: localVarPath,
542
+ useQuerystring: this._useQuerystring,
543
+ json: true,
544
+ body: ObjectSerializer.serialize(imageVariationsInput, "ImageVariationsInput")
545
+ };
546
+
547
+ let authenticationPromise = Promise.resolve();
548
+ if (this.authentications.bearerAuth.accessToken) {
549
+ authenticationPromise = authenticationPromise.then(() => this.authentications.bearerAuth.applyToRequest(localVarRequestOptions));
550
+ }
551
+ authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
552
+
553
+ let interceptorPromise = authenticationPromise;
554
+ for (const interceptor of this.interceptors) {
555
+ interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
556
+ }
557
+
558
+ return interceptorPromise.then(() => {
559
+ if (Object.keys(localVarFormParams).length) {
560
+ if (localVarUseFormData) {
561
+ (<any>localVarRequestOptions).formData = localVarFormParams;
562
+ } else {
563
+ localVarRequestOptions.form = localVarFormParams;
564
+ }
565
+ }
566
+ return new Promise<{ response: http.IncomingMessage; body: ImageVariations200Response; }>((resolve, reject) => {
567
+ localVarRequest(localVarRequestOptions, (error, response, body) => {
568
+ if (error) {
569
+ reject(error);
570
+ } else {
571
+ if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
572
+ body = ObjectSerializer.deserialize(body, "ImageVariations200Response");
573
+ resolve({ response: response, body: body });
574
+ } else {
575
+ reject(new HttpError(response, body, response.statusCode));
576
+ }
577
+ }
578
+ });
579
+ });
580
+ });
581
+ }
176
582
  }
@@ -145,17 +145,18 @@ export class BlogToSocialInput {
145
145
 
146
146
  export namespace BlogToSocialInput {
147
147
  export enum PlatformsEnum {
148
- Facebook = <any> 'facebook',
148
+ Twitter = <any> 'twitter',
149
+ FacebookPage = <any> 'facebook_page',
149
150
  Instagram = <any> 'instagram',
150
- X = <any> 'x',
151
- Linkedin = <any> 'linkedin',
152
- Pinterest = <any> 'pinterest',
151
+ Threads = <any> 'threads',
152
+ Mastodon = <any> 'mastodon',
153
153
  Youtube = <any> 'youtube',
154
+ Gbp = <any> 'gbp',
155
+ Pinterest = <any> 'pinterest',
156
+ Linkedin = <any> 'linkedin',
157
+ LinkedinPage = <any> 'linkedin_page',
154
158
  Tiktok = <any> 'tiktok',
155
- Mastodon = <any> 'mastodon',
156
- Threads = <any> 'threads',
157
- Bluesky = <any> 'bluesky',
158
- GoogleBusiness = <any> 'google_business'
159
+ Bluesky = <any> 'bluesky'
159
160
  }
160
161
  export enum ToneEnum {
161
162
  Neutral = <any> 'neutral',
@@ -0,0 +1,32 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+ import { ImageAltTextResponse } from './imageAltTextResponse';
15
+
16
+ export class ImageAltText200Response {
17
+ 'data': ImageAltTextResponse;
18
+
19
+ static discriminator: string | undefined = undefined;
20
+
21
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
22
+ {
23
+ "name": "data",
24
+ "baseName": "data",
25
+ "type": "ImageAltTextResponse"
26
+ } ];
27
+
28
+ static getAttributeTypeMap() {
29
+ return ImageAltText200Response.attributeTypeMap;
30
+ }
31
+ }
32
+
@@ -0,0 +1,31 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class ImageAltTextInput {
16
+ 'mediaUuid': string;
17
+
18
+ static discriminator: string | undefined = undefined;
19
+
20
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
21
+ {
22
+ "name": "mediaUuid",
23
+ "baseName": "media_uuid",
24
+ "type": "string"
25
+ } ];
26
+
27
+ static getAttributeTypeMap() {
28
+ return ImageAltTextInput.attributeTypeMap;
29
+ }
30
+ }
31
+
@@ -0,0 +1,49 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class ImageAltTextResponse {
16
+ 'mediaUuid': string;
17
+ 'altText': string;
18
+ 'creditsUsed': number;
19
+ 'creditsRemaining'?: number;
20
+
21
+ static discriminator: string | undefined = undefined;
22
+
23
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
24
+ {
25
+ "name": "mediaUuid",
26
+ "baseName": "media_uuid",
27
+ "type": "string"
28
+ },
29
+ {
30
+ "name": "altText",
31
+ "baseName": "alt_text",
32
+ "type": "string"
33
+ },
34
+ {
35
+ "name": "creditsUsed",
36
+ "baseName": "credits_used",
37
+ "type": "number"
38
+ },
39
+ {
40
+ "name": "creditsRemaining",
41
+ "baseName": "credits_remaining",
42
+ "type": "number"
43
+ } ];
44
+
45
+ static getAttributeTypeMap() {
46
+ return ImageAltTextResponse.attributeTypeMap;
47
+ }
48
+ }
49
+
@@ -0,0 +1,82 @@
1
+ /**
2
+ * PostBoost API
3
+ * The PostBoost REST API lets you publish, schedule, and analyze social media posts across 12+ platforms from a single integration. No OAuth apps to maintain — PostBoost handles platform authorization for you. ## Base URL All workspace-scoped endpoints are prefixed with `/{workspaceUuid}`. Panel/admin endpoints are prefixed with `/panel`. ## Authentication All requests require a Bearer token in the `Authorization` header. Generate tokens in your PostBoost dashboard under **Settings → Access Tokens**. ``` Authorization: Bearer YOUR_API_TOKEN ```
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: hi@postboost.co
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+
13
+ import { RequestFile } from './models';
14
+
15
+ export class ImageEditInput {
16
+ /**
17
+ * UUID of the source media item to edit
18
+ */
19
+ 'mediaUuid': string;
20
+ /**
21
+ * Describe what to change in the image
22
+ */
23
+ 'prompt': string;
24
+ /**
25
+ * UUID of a mask image. Transparent areas will be edited.
26
+ */
27
+ 'maskUuid'?: string;
28
+ 'aspectRatio'?: ImageEditInput.AspectRatioEnum = ImageEditInput.AspectRatioEnum._11;
29
+ 'count'?: number = 1;
30
+ 'quality'?: ImageEditInput.QualityEnum = ImageEditInput.QualityEnum.Standard;
31
+
32
+ static discriminator: string | undefined = undefined;
33
+
34
+ static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
35
+ {
36
+ "name": "mediaUuid",
37
+ "baseName": "media_uuid",
38
+ "type": "string"
39
+ },
40
+ {
41
+ "name": "prompt",
42
+ "baseName": "prompt",
43
+ "type": "string"
44
+ },
45
+ {
46
+ "name": "maskUuid",
47
+ "baseName": "mask_uuid",
48
+ "type": "string"
49
+ },
50
+ {
51
+ "name": "aspectRatio",
52
+ "baseName": "aspect_ratio",
53
+ "type": "ImageEditInput.AspectRatioEnum"
54
+ },
55
+ {
56
+ "name": "count",
57
+ "baseName": "count",
58
+ "type": "number"
59
+ },
60
+ {
61
+ "name": "quality",
62
+ "baseName": "quality",
63
+ "type": "ImageEditInput.QualityEnum"
64
+ } ];
65
+
66
+ static getAttributeTypeMap() {
67
+ return ImageEditInput.attributeTypeMap;
68
+ }
69
+ }
70
+
71
+ export namespace ImageEditInput {
72
+ export enum AspectRatioEnum {
73
+ _11 = <any> '1:1',
74
+ _169 = <any> '16:9',
75
+ _916 = <any> '9:16',
76
+ _45 = <any> '4:5'
77
+ }
78
+ export enum QualityEnum {
79
+ Standard = <any> 'standard',
80
+ Hd = <any> 'hd'
81
+ }
82
+ }