@sentdm/sentdm 0.35.0 → 0.37.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/CHANGELOG.md +18 -0
- package/client.d.mts +14 -14
- package/client.d.mts.map +1 -1
- package/client.d.ts +14 -14
- package/client.d.ts.map +1 -1
- package/client.js.map +1 -1
- package/client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/contacts.d.mts +85 -589
- package/resources/contacts.d.mts.map +1 -1
- package/resources/contacts.d.ts +85 -589
- package/resources/contacts.d.ts.map +1 -1
- package/resources/contacts.js +4 -4
- package/resources/contacts.js.map +1 -1
- package/resources/contacts.mjs +4 -4
- package/resources/contacts.mjs.map +1 -1
- package/resources/conversations.d.mts +69 -328
- package/resources/conversations.d.mts.map +1 -1
- package/resources/conversations.d.ts +69 -328
- package/resources/conversations.d.ts.map +1 -1
- package/resources/conversations.js +10 -8
- package/resources/conversations.js.map +1 -1
- package/resources/conversations.mjs +10 -8
- package/resources/conversations.mjs.map +1 -1
- package/resources/index.d.mts +7 -7
- package/resources/index.d.mts.map +1 -1
- package/resources/index.d.ts +7 -7
- package/resources/index.d.ts.map +1 -1
- package/resources/index.js.map +1 -1
- package/resources/index.mjs.map +1 -1
- package/resources/me.d.mts +81 -129
- package/resources/me.d.mts.map +1 -1
- package/resources/me.d.ts +81 -129
- package/resources/me.d.ts.map +1 -1
- package/resources/me.js +11 -0
- package/resources/me.js.map +1 -1
- package/resources/me.mjs +11 -0
- package/resources/me.mjs.map +1 -1
- package/resources/messages.d.mts +8 -171
- package/resources/messages.d.mts.map +1 -1
- package/resources/messages.d.ts +8 -171
- package/resources/messages.d.ts.map +1 -1
- package/resources/messages.js.map +1 -1
- package/resources/messages.mjs.map +1 -1
- package/resources/numbers.d.mts +3 -42
- package/resources/numbers.d.mts.map +1 -1
- package/resources/numbers.d.ts +3 -42
- package/resources/numbers.d.ts.map +1 -1
- package/resources/numbers.js.map +1 -1
- package/resources/numbers.mjs.map +1 -1
- package/resources/profiles/campaigns.d.mts +149 -544
- package/resources/profiles/campaigns.d.mts.map +1 -1
- package/resources/profiles/campaigns.d.ts +149 -544
- package/resources/profiles/campaigns.d.ts.map +1 -1
- package/resources/profiles/index.d.mts +2 -2
- package/resources/profiles/index.d.mts.map +1 -1
- package/resources/profiles/index.d.ts +2 -2
- package/resources/profiles/index.d.ts.map +1 -1
- package/resources/profiles/index.js.map +1 -1
- package/resources/profiles/index.mjs.map +1 -1
- package/resources/profiles/profiles.d.mts +411 -1821
- package/resources/profiles/profiles.d.mts.map +1 -1
- package/resources/profiles/profiles.d.ts +411 -1821
- package/resources/profiles/profiles.d.ts.map +1 -1
- package/resources/profiles/profiles.js.map +1 -1
- package/resources/profiles/profiles.mjs.map +1 -1
- package/resources/templates.d.mts +84 -486
- package/resources/templates.d.mts.map +1 -1
- package/resources/templates.d.ts +84 -486
- package/resources/templates.d.ts.map +1 -1
- package/resources/templates.js +3 -3
- package/resources/templates.js.map +1 -1
- package/resources/templates.mjs +3 -3
- package/resources/templates.mjs.map +1 -1
- package/resources/users.d.mts +47 -437
- package/resources/users.d.mts.map +1 -1
- package/resources/users.d.ts +47 -437
- package/resources/users.d.ts.map +1 -1
- package/resources/users.js +3 -3
- package/resources/users.js.map +1 -1
- package/resources/users.mjs +3 -3
- package/resources/users.mjs.map +1 -1
- package/resources/webhooks.d.mts +189 -768
- package/resources/webhooks.d.mts.map +1 -1
- package/resources/webhooks.d.ts +189 -768
- package/resources/webhooks.d.ts.map +1 -1
- package/resources/webhooks.js +7 -6
- package/resources/webhooks.js.map +1 -1
- package/resources/webhooks.mjs +7 -6
- package/resources/webhooks.mjs.map +1 -1
- package/src/client.ts +52 -39
- package/src/resources/contacts.ts +88 -678
- package/src/resources/conversations.ts +77 -393
- package/src/resources/index.ts +26 -20
- package/src/resources/me.ts +94 -148
- package/src/resources/messages.ts +8 -194
- package/src/resources/numbers.ts +3 -47
- package/src/resources/profiles/campaigns.ts +174 -673
- package/src/resources/profiles/index.ts +14 -6
- package/src/resources/profiles/profiles.ts +529 -2216
- package/src/resources/templates.ts +100 -572
- package/src/resources/users.ts +48 -505
- package/src/resources/webhooks.ts +297 -996
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
|
@@ -2,15 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
import { APIResource } from '../../core/resource';
|
|
4
4
|
import * as ProfilesAPI from './profiles';
|
|
5
|
+
import * as WebhooksAPI from '../webhooks';
|
|
5
6
|
import * as CampaignsAPI from './campaigns';
|
|
6
7
|
import {
|
|
8
|
+
APIResponseOfBrandCampaign,
|
|
9
|
+
APIResponseOfListOfBrandCampaign,
|
|
10
|
+
BrandCampaign,
|
|
7
11
|
CampaignCreateParams,
|
|
8
|
-
|
|
12
|
+
CampaignData,
|
|
9
13
|
CampaignDeleteParams,
|
|
10
14
|
CampaignListParams,
|
|
11
|
-
CampaignListResponse,
|
|
12
15
|
CampaignUpdateParams,
|
|
13
|
-
|
|
16
|
+
CampaignUseCase,
|
|
17
|
+
CampaignUseCaseData,
|
|
14
18
|
Campaigns,
|
|
15
19
|
MessagingUseCaseUs,
|
|
16
20
|
} from './campaigns';
|
|
@@ -67,7 +71,7 @@ export class Profiles extends APIResource {
|
|
|
67
71
|
*
|
|
68
72
|
* @deprecated
|
|
69
73
|
*/
|
|
70
|
-
create(params: ProfileCreateParams, options?: RequestOptions): APIPromise<
|
|
74
|
+
create(params: ProfileCreateParams, options?: RequestOptions): APIPromise<APIResponseOfProfileDetail> {
|
|
71
75
|
const { 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
|
|
72
76
|
return this._client.post('/v3/profiles', {
|
|
73
77
|
body,
|
|
@@ -99,7 +103,7 @@ export class Profiles extends APIResource {
|
|
|
99
103
|
profileID: string,
|
|
100
104
|
params: ProfileRetrieveParams | null | undefined = {},
|
|
101
105
|
options?: RequestOptions,
|
|
102
|
-
): APIPromise<
|
|
106
|
+
): APIPromise<APIResponseOfProfileDetail> {
|
|
103
107
|
const { 'x-profile-id': xProfileID } = params ?? {};
|
|
104
108
|
return this._client.get(path`/v3/profiles/${profileID}`, {
|
|
105
109
|
...options,
|
|
@@ -156,7 +160,7 @@ export class Profiles extends APIResource {
|
|
|
156
160
|
profileID: string,
|
|
157
161
|
params: ProfileUpdateParams,
|
|
158
162
|
options?: RequestOptions,
|
|
159
|
-
): APIPromise<
|
|
163
|
+
): APIPromise<APIResponseOfProfileDetail> {
|
|
160
164
|
const { 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
|
|
161
165
|
return this._client.patch(path`/v3/profiles/${profileID}`, {
|
|
162
166
|
body,
|
|
@@ -293,62 +297,24 @@ export class Profiles extends APIResource {
|
|
|
293
297
|
}
|
|
294
298
|
}
|
|
295
299
|
|
|
296
|
-
export interface DestinationCountry {
|
|
297
|
-
id?: string;
|
|
298
|
-
|
|
299
|
-
isMain?: boolean;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
export type TcrBrandRelationship =
|
|
303
|
-
| 'BASIC_ACCOUNT'
|
|
304
|
-
| 'MEDIUM_ACCOUNT'
|
|
305
|
-
| 'LARGE_ACCOUNT'
|
|
306
|
-
| 'SMALL_ACCOUNT'
|
|
307
|
-
| 'KEY_ACCOUNT';
|
|
308
|
-
|
|
309
|
-
export type TcrVertical =
|
|
310
|
-
| 'PROFESSIONAL'
|
|
311
|
-
| 'REAL_ESTATE'
|
|
312
|
-
| 'HEALTHCARE'
|
|
313
|
-
| 'HUMAN_RESOURCES'
|
|
314
|
-
| 'ENERGY'
|
|
315
|
-
| 'ENTERTAINMENT'
|
|
316
|
-
| 'RETAIL'
|
|
317
|
-
| 'TRANSPORTATION'
|
|
318
|
-
| 'AGRICULTURE'
|
|
319
|
-
| 'INSURANCE'
|
|
320
|
-
| 'POSTAL'
|
|
321
|
-
| 'EDUCATION'
|
|
322
|
-
| 'HOSPITALITY'
|
|
323
|
-
| 'FINANCIAL'
|
|
324
|
-
| 'POLITICAL'
|
|
325
|
-
| 'GAMBLING'
|
|
326
|
-
| 'LEGAL'
|
|
327
|
-
| 'CONSTRUCTION'
|
|
328
|
-
| 'NGO'
|
|
329
|
-
| 'MANUFACTURING'
|
|
330
|
-
| 'GOVERNMENT'
|
|
331
|
-
| 'TECHNOLOGY'
|
|
332
|
-
| 'COMMUNICATION';
|
|
333
|
-
|
|
334
300
|
/**
|
|
335
301
|
* Standard API response envelope for all v3 endpoints
|
|
336
302
|
*/
|
|
337
|
-
export interface
|
|
303
|
+
export interface APIResponseOfProfileDetail {
|
|
338
304
|
/**
|
|
339
305
|
* Detailed profile response for v3 API
|
|
340
306
|
*/
|
|
341
|
-
data?:
|
|
307
|
+
data?: ProfileDetail | null;
|
|
342
308
|
|
|
343
309
|
/**
|
|
344
310
|
* Error information
|
|
345
311
|
*/
|
|
346
|
-
error?:
|
|
312
|
+
error?: WebhooksAPI.ErrorDetail | null;
|
|
347
313
|
|
|
348
314
|
/**
|
|
349
315
|
* Request and response metadata
|
|
350
316
|
*/
|
|
351
|
-
meta?:
|
|
317
|
+
meta?: WebhooksAPI.APIMeta;
|
|
352
318
|
|
|
353
319
|
/**
|
|
354
320
|
* Indicates whether the request was successful
|
|
@@ -356,1863 +322,655 @@ export interface ProfileCreateResponse {
|
|
|
356
322
|
success?: boolean;
|
|
357
323
|
}
|
|
358
324
|
|
|
359
|
-
|
|
325
|
+
/**
|
|
326
|
+
* Billing contact information for a profile. Required when billing_model is
|
|
327
|
+
* "profile" or "profile_and_organization".
|
|
328
|
+
*/
|
|
329
|
+
export interface BillingContactInfo {
|
|
360
330
|
/**
|
|
361
|
-
*
|
|
331
|
+
* Email address where invoices will be sent (required)
|
|
362
332
|
*/
|
|
363
|
-
|
|
364
|
-
/**
|
|
365
|
-
* Profile unique identifier
|
|
366
|
-
*/
|
|
367
|
-
id?: string;
|
|
368
|
-
|
|
369
|
-
/**
|
|
370
|
-
* @deprecated Always false. A profile no longer shares contacts with sibling
|
|
371
|
-
* profiles — it sees only what it owns. Retained so existing v3 clients reading
|
|
372
|
-
* allow_contact_sharing keep deserializing; it carries no information.
|
|
373
|
-
*/
|
|
374
|
-
allow_contact_sharing?: boolean | null;
|
|
375
|
-
|
|
376
|
-
/**
|
|
377
|
-
* Whether number changes are allowed during onboarding
|
|
378
|
-
*/
|
|
379
|
-
allow_number_change_during_onboarding?: boolean | null;
|
|
380
|
-
|
|
381
|
-
/**
|
|
382
|
-
* @deprecated Always false. A profile no longer shares templates with sibling
|
|
383
|
-
* profiles. Retained so existing v3 clients reading allow_template_sharing keep
|
|
384
|
-
* deserializing; it carries no information.
|
|
385
|
-
*/
|
|
386
|
-
allow_template_sharing?: boolean | null;
|
|
387
|
-
|
|
388
|
-
/**
|
|
389
|
-
* Billing contact info returned in profile responses
|
|
390
|
-
*/
|
|
391
|
-
billing_contact?: Data.BillingContact | null;
|
|
392
|
-
|
|
393
|
-
/**
|
|
394
|
-
* Billing model: profile, organization, or profile_and_organization
|
|
395
|
-
*/
|
|
396
|
-
billing_model?: string;
|
|
397
|
-
|
|
398
|
-
/**
|
|
399
|
-
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
400
|
-
* the request structure.
|
|
401
|
-
*/
|
|
402
|
-
brand?: Data.Brand | null;
|
|
403
|
-
|
|
404
|
-
/**
|
|
405
|
-
* When the profile was created
|
|
406
|
-
*/
|
|
407
|
-
created_at?: string;
|
|
408
|
-
|
|
409
|
-
/**
|
|
410
|
-
* Profile description
|
|
411
|
-
*/
|
|
412
|
-
description?: string | null;
|
|
413
|
-
|
|
414
|
-
/**
|
|
415
|
-
* Profile email (inherited from organization)
|
|
416
|
-
*/
|
|
417
|
-
email?: string | null;
|
|
418
|
-
|
|
419
|
-
/**
|
|
420
|
-
* Profile icon URL
|
|
421
|
-
*/
|
|
422
|
-
icon?: string | null;
|
|
423
|
-
|
|
424
|
-
/**
|
|
425
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
426
|
-
* contacts. Retained so existing v3 clients reading inherit_contacts keep
|
|
427
|
-
* deserializing; it carries no information.
|
|
428
|
-
*/
|
|
429
|
-
inherit_contacts?: boolean | null;
|
|
430
|
-
|
|
431
|
-
/**
|
|
432
|
-
* Whether this profile inherits TCR brand from the organization
|
|
433
|
-
*/
|
|
434
|
-
inherit_tcr_brand?: boolean;
|
|
435
|
-
|
|
436
|
-
/**
|
|
437
|
-
* Whether this profile inherits TCR campaign from the organization
|
|
438
|
-
*/
|
|
439
|
-
inherit_tcr_campaign?: boolean;
|
|
440
|
-
|
|
441
|
-
/**
|
|
442
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
443
|
-
* templates. Retained so existing v3 clients reading inherit_templates keep
|
|
444
|
-
* deserializing; it carries no information.
|
|
445
|
-
*/
|
|
446
|
-
inherit_templates?: boolean | null;
|
|
447
|
-
|
|
448
|
-
/**
|
|
449
|
-
* Profile name
|
|
450
|
-
*/
|
|
451
|
-
name?: string;
|
|
452
|
-
|
|
453
|
-
/**
|
|
454
|
-
* Parent organization ID
|
|
455
|
-
*/
|
|
456
|
-
organization_id?: string | null;
|
|
457
|
-
|
|
458
|
-
/**
|
|
459
|
-
* Direct SMS phone number
|
|
460
|
-
*/
|
|
461
|
-
sending_phone_number?: string | null;
|
|
462
|
-
|
|
463
|
-
/**
|
|
464
|
-
* @deprecated Deprecated. Always null. Sender borrowing is gone: a profile no
|
|
465
|
-
* longer points at another profile for its SMS sender, and every profile owns the
|
|
466
|
-
* sender it sends from.
|
|
467
|
-
*
|
|
468
|
-
* Kept on the wire, and never populated, because those are two different promises.
|
|
469
|
-
* Removing the key changes the response's shape — a generated client loses the
|
|
470
|
-
* property and stops compiling on the next regenerate, for a value that is now
|
|
471
|
-
* null for every profile in existence. Keeping it null costs a key and breaks
|
|
472
|
-
* nobody, and null is the honest answer rather than a placeholder: there is no
|
|
473
|
-
* borrowing left to report.
|
|
474
|
-
*
|
|
475
|
-
* Nothing could populate it. Migration 260813161500 dropped the column and copied
|
|
476
|
-
* each borrower its own channel-provider row; its Down() says outright that the
|
|
477
|
-
* borrower-to-lender pairing is not recoverable. The only surviving trace is a
|
|
478
|
-
* notes string on the copied row.
|
|
479
|
-
*/
|
|
480
|
-
sending_phone_number_profile_id?: string | null;
|
|
481
|
-
|
|
482
|
-
/**
|
|
483
|
-
* @deprecated
|
|
484
|
-
*/
|
|
485
|
-
sending_whatsapp_number_profile_id?: string | null;
|
|
486
|
-
|
|
487
|
-
/**
|
|
488
|
-
* Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
|
|
489
|
-
* only, with at least one letter.
|
|
490
|
-
*/
|
|
491
|
-
short_name?: string | null;
|
|
492
|
-
|
|
493
|
-
/**
|
|
494
|
-
* Profile setup status: incomplete, pending_review, approved, rejected
|
|
495
|
-
*/
|
|
496
|
-
status?: string;
|
|
497
|
-
|
|
498
|
-
/**
|
|
499
|
-
* When the profile was last updated
|
|
500
|
-
*/
|
|
501
|
-
updated_at?: string | null;
|
|
502
|
-
|
|
503
|
-
/**
|
|
504
|
-
* WhatsApp Business Account ID associated with this profile. Present whether the
|
|
505
|
-
* WABA is inherited from the organization or configured directly.
|
|
506
|
-
*/
|
|
507
|
-
waba_id?: string | null;
|
|
508
|
-
|
|
509
|
-
/**
|
|
510
|
-
* Direct WhatsApp phone number
|
|
511
|
-
*/
|
|
512
|
-
whatsapp_phone_number?: string | null;
|
|
513
|
-
}
|
|
514
|
-
|
|
515
|
-
export namespace Data {
|
|
516
|
-
/**
|
|
517
|
-
* Billing contact info returned in profile responses
|
|
518
|
-
*/
|
|
519
|
-
export interface BillingContact {
|
|
520
|
-
address?: string | null;
|
|
333
|
+
email: string;
|
|
521
334
|
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
phone?: string | null;
|
|
527
|
-
}
|
|
528
|
-
|
|
529
|
-
/**
|
|
530
|
-
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
531
|
-
* the request structure.
|
|
532
|
-
*/
|
|
533
|
-
export interface Brand {
|
|
534
|
-
/**
|
|
535
|
-
* Unique identifier for the brand
|
|
536
|
-
*/
|
|
537
|
-
id?: string;
|
|
538
|
-
|
|
539
|
-
/**
|
|
540
|
-
* Business details and address information
|
|
541
|
-
*/
|
|
542
|
-
business?: Brand.Business | null;
|
|
543
|
-
|
|
544
|
-
/**
|
|
545
|
-
* Compliance and TCR-related information
|
|
546
|
-
*/
|
|
547
|
-
compliance?: Brand.Compliance | null;
|
|
548
|
-
|
|
549
|
-
/**
|
|
550
|
-
* Contact information for the brand
|
|
551
|
-
*/
|
|
552
|
-
contact?: Brand.Contact | null;
|
|
553
|
-
|
|
554
|
-
/**
|
|
555
|
-
* When the brand was created
|
|
556
|
-
*/
|
|
557
|
-
created_at?: string;
|
|
335
|
+
/**
|
|
336
|
+
* Full name of the billing contact or company (required)
|
|
337
|
+
*/
|
|
338
|
+
name: string;
|
|
558
339
|
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
*/
|
|
565
|
-
csp_id?: string | null;
|
|
340
|
+
/**
|
|
341
|
+
* Billing address (optional). Free-form text including street, city, state, postal
|
|
342
|
+
* code, and country.
|
|
343
|
+
*/
|
|
344
|
+
address?: string | null;
|
|
566
345
|
|
|
567
|
-
|
|
346
|
+
/**
|
|
347
|
+
* Phone number for the billing contact (optional)
|
|
348
|
+
*/
|
|
349
|
+
phone?: string | null;
|
|
350
|
+
}
|
|
568
351
|
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
352
|
+
/**
|
|
353
|
+
* Business details and address for brand KYC
|
|
354
|
+
*/
|
|
355
|
+
export interface BrandBusinessInfo {
|
|
356
|
+
/**
|
|
357
|
+
* City
|
|
358
|
+
*/
|
|
359
|
+
city?: string | null;
|
|
573
360
|
|
|
574
|
-
|
|
361
|
+
/**
|
|
362
|
+
* Country code (e.g., US, CA)
|
|
363
|
+
*/
|
|
364
|
+
country?: string | null;
|
|
575
365
|
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
366
|
+
/**
|
|
367
|
+
* Country where the business is registered
|
|
368
|
+
*/
|
|
369
|
+
countryOfRegistration?: string | null;
|
|
580
370
|
|
|
581
|
-
|
|
582
|
-
* Whether this brand has been submitted to TCR
|
|
583
|
-
*/
|
|
584
|
-
submitted_to_tcr?: boolean;
|
|
371
|
+
entityType?: 'PRIVATE_PROFIT' | 'PUBLIC_PROFIT' | 'NON_PROFIT' | 'SOLE_PROPRIETOR' | 'GOVERNMENT' | null;
|
|
585
372
|
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
373
|
+
/**
|
|
374
|
+
* Legal business name
|
|
375
|
+
*/
|
|
376
|
+
legalName?: string | null;
|
|
590
377
|
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
378
|
+
/**
|
|
379
|
+
* Postal/ZIP code
|
|
380
|
+
*/
|
|
381
|
+
postalCode?: string | null;
|
|
595
382
|
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
}
|
|
383
|
+
/**
|
|
384
|
+
* State/province code
|
|
385
|
+
*/
|
|
386
|
+
state?: string | null;
|
|
601
387
|
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
export interface Business {
|
|
607
|
-
/**
|
|
608
|
-
* City
|
|
609
|
-
*/
|
|
610
|
-
city?: string | null;
|
|
611
|
-
|
|
612
|
-
/**
|
|
613
|
-
* Country code (e.g., US, CA)
|
|
614
|
-
*/
|
|
615
|
-
country?: string | null;
|
|
616
|
-
|
|
617
|
-
/**
|
|
618
|
-
* Country where the business is registered
|
|
619
|
-
*/
|
|
620
|
-
country_of_registration?: string | null;
|
|
621
|
-
|
|
622
|
-
/**
|
|
623
|
-
* Business entity type
|
|
624
|
-
*/
|
|
625
|
-
entity_type?: string | null;
|
|
626
|
-
|
|
627
|
-
/**
|
|
628
|
-
* Legal business name
|
|
629
|
-
*/
|
|
630
|
-
legal_name?: string | null;
|
|
631
|
-
|
|
632
|
-
/**
|
|
633
|
-
* Postal/ZIP code
|
|
634
|
-
*/
|
|
635
|
-
postal_code?: string | null;
|
|
636
|
-
|
|
637
|
-
/**
|
|
638
|
-
* State/province code
|
|
639
|
-
*/
|
|
640
|
-
state?: string | null;
|
|
641
|
-
|
|
642
|
-
/**
|
|
643
|
-
* Street address
|
|
644
|
-
*/
|
|
645
|
-
street?: string | null;
|
|
646
|
-
|
|
647
|
-
/**
|
|
648
|
-
* Tax ID/EIN number
|
|
649
|
-
*/
|
|
650
|
-
tax_id?: string | null;
|
|
651
|
-
|
|
652
|
-
/**
|
|
653
|
-
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
654
|
-
*/
|
|
655
|
-
tax_id_type?: string | null;
|
|
656
|
-
|
|
657
|
-
/**
|
|
658
|
-
* Business website URL
|
|
659
|
-
*/
|
|
660
|
-
url?: string | null;
|
|
661
|
-
}
|
|
388
|
+
/**
|
|
389
|
+
* Street address
|
|
390
|
+
*/
|
|
391
|
+
street?: string | null;
|
|
662
392
|
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
brand_relationship?: ProfilesAPI.TcrBrandRelationship | null;
|
|
668
|
-
|
|
669
|
-
/**
|
|
670
|
-
* List of destination countries for messaging
|
|
671
|
-
*/
|
|
672
|
-
destination_countries?: Array<ProfilesAPI.DestinationCountry>;
|
|
673
|
-
|
|
674
|
-
/**
|
|
675
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
676
|
-
*/
|
|
677
|
-
is_tcr_application?: boolean;
|
|
678
|
-
|
|
679
|
-
/**
|
|
680
|
-
* Additional notes about the business or use case
|
|
681
|
-
*/
|
|
682
|
-
notes?: string | null;
|
|
683
|
-
|
|
684
|
-
/**
|
|
685
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
686
|
-
*/
|
|
687
|
-
phone_number_prefix?: string | null;
|
|
688
|
-
|
|
689
|
-
/**
|
|
690
|
-
* @deprecated Always null. The brand's free-text primary use case is no longer
|
|
691
|
-
* stored: it reached neither TCR nor any decision, and its column is dropped with
|
|
692
|
-
* no backfill, because the values were prose and the typed equivalent is the
|
|
693
|
-
* campaign's MessagingUseCaseUS.
|
|
694
|
-
*
|
|
695
|
-
* Retained so existing v3 clients reading primary_use_case keep deserializing.
|
|
696
|
-
* Unlike the profile sharing flags, which can answer false truthfully, there is no
|
|
697
|
-
* value to report here — the field is present and empty rather than present and
|
|
698
|
-
* wrong.
|
|
699
|
-
*/
|
|
700
|
-
primary_use_case?: string | null;
|
|
701
|
-
|
|
702
|
-
vertical?: ProfilesAPI.TcrVertical | null;
|
|
703
|
-
}
|
|
393
|
+
/**
|
|
394
|
+
* Tax ID/EIN number
|
|
395
|
+
*/
|
|
396
|
+
taxId?: string | null;
|
|
704
397
|
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
/**
|
|
710
|
-
* Business/brand name
|
|
711
|
-
*/
|
|
712
|
-
business_name?: string | null;
|
|
713
|
-
|
|
714
|
-
/**
|
|
715
|
-
* Contact email address
|
|
716
|
-
*/
|
|
717
|
-
email?: string | null;
|
|
718
|
-
|
|
719
|
-
/**
|
|
720
|
-
* Primary contact name
|
|
721
|
-
*/
|
|
722
|
-
name?: string;
|
|
723
|
-
|
|
724
|
-
/**
|
|
725
|
-
* Contact phone number in E.164 format
|
|
726
|
-
*/
|
|
727
|
-
phone?: string | null;
|
|
728
|
-
|
|
729
|
-
/**
|
|
730
|
-
* Contact phone country code (e.g., "1" for US)
|
|
731
|
-
*/
|
|
732
|
-
phone_country_code?: string | null;
|
|
733
|
-
|
|
734
|
-
/**
|
|
735
|
-
* Contact's role in the business
|
|
736
|
-
*/
|
|
737
|
-
role?: string | null;
|
|
738
|
-
}
|
|
739
|
-
}
|
|
740
|
-
}
|
|
398
|
+
/**
|
|
399
|
+
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
400
|
+
*/
|
|
401
|
+
taxIdType?: string | null;
|
|
741
402
|
|
|
742
403
|
/**
|
|
743
|
-
*
|
|
404
|
+
* Business website URL
|
|
744
405
|
*/
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
748
|
-
*/
|
|
749
|
-
code?: string;
|
|
406
|
+
url?: string | null;
|
|
407
|
+
}
|
|
750
408
|
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
409
|
+
/**
|
|
410
|
+
* Compliance and TCR information for brand registration
|
|
411
|
+
*/
|
|
412
|
+
export interface BrandComplianceInfo {
|
|
413
|
+
brandRelationship: TcrBrandRelationship;
|
|
755
414
|
|
|
756
|
-
|
|
757
|
-
* URL to documentation about this error
|
|
758
|
-
*/
|
|
759
|
-
doc_url?: string | null;
|
|
415
|
+
vertical: TcrVertical;
|
|
760
416
|
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
}
|
|
417
|
+
/**
|
|
418
|
+
* List of destination countries for messaging
|
|
419
|
+
*/
|
|
420
|
+
destinationCountries?: Array<DestinationCountry> | null;
|
|
766
421
|
|
|
767
422
|
/**
|
|
768
|
-
*
|
|
423
|
+
* Whether this is a TCR (Campaign Registry) application
|
|
769
424
|
*/
|
|
770
|
-
|
|
771
|
-
/**
|
|
772
|
-
* Unique identifier for this request (for tracing and support)
|
|
773
|
-
*/
|
|
774
|
-
request_id?: string;
|
|
425
|
+
isTcrApplication?: boolean | null;
|
|
775
426
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
427
|
+
/**
|
|
428
|
+
* Additional notes about the business or use case
|
|
429
|
+
*/
|
|
430
|
+
notes?: string | null;
|
|
780
431
|
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
}
|
|
432
|
+
/**
|
|
433
|
+
* Phone number prefix for messaging (e.g., "+1")
|
|
434
|
+
*/
|
|
435
|
+
phoneNumberPrefix?: string | null;
|
|
786
436
|
}
|
|
787
437
|
|
|
788
438
|
/**
|
|
789
|
-
*
|
|
439
|
+
* Contact information for brand KYC
|
|
790
440
|
*/
|
|
791
|
-
export interface
|
|
441
|
+
export interface BrandContactInfo {
|
|
792
442
|
/**
|
|
793
|
-
*
|
|
443
|
+
* Primary contact name (required)
|
|
794
444
|
*/
|
|
795
|
-
|
|
445
|
+
name: string;
|
|
796
446
|
|
|
797
447
|
/**
|
|
798
|
-
*
|
|
448
|
+
* Business/brand name
|
|
799
449
|
*/
|
|
800
|
-
|
|
450
|
+
businessName?: string | null;
|
|
801
451
|
|
|
802
452
|
/**
|
|
803
|
-
*
|
|
453
|
+
* Contact email address
|
|
804
454
|
*/
|
|
805
|
-
|
|
455
|
+
email?: string | null;
|
|
806
456
|
|
|
807
457
|
/**
|
|
808
|
-
*
|
|
458
|
+
* Contact phone number in E.164 format
|
|
809
459
|
*/
|
|
810
|
-
|
|
811
|
-
}
|
|
460
|
+
phone?: string | null;
|
|
812
461
|
|
|
813
|
-
export namespace ProfileRetrieveResponse {
|
|
814
462
|
/**
|
|
815
|
-
*
|
|
463
|
+
* Contact phone country code (e.g., "1" for US)
|
|
816
464
|
*/
|
|
817
|
-
|
|
818
|
-
/**
|
|
819
|
-
* Profile unique identifier
|
|
820
|
-
*/
|
|
821
|
-
id?: string;
|
|
822
|
-
|
|
823
|
-
/**
|
|
824
|
-
* @deprecated Always false. A profile no longer shares contacts with sibling
|
|
825
|
-
* profiles — it sees only what it owns. Retained so existing v3 clients reading
|
|
826
|
-
* allow_contact_sharing keep deserializing; it carries no information.
|
|
827
|
-
*/
|
|
828
|
-
allow_contact_sharing?: boolean | null;
|
|
829
|
-
|
|
830
|
-
/**
|
|
831
|
-
* Whether number changes are allowed during onboarding
|
|
832
|
-
*/
|
|
833
|
-
allow_number_change_during_onboarding?: boolean | null;
|
|
834
|
-
|
|
835
|
-
/**
|
|
836
|
-
* @deprecated Always false. A profile no longer shares templates with sibling
|
|
837
|
-
* profiles. Retained so existing v3 clients reading allow_template_sharing keep
|
|
838
|
-
* deserializing; it carries no information.
|
|
839
|
-
*/
|
|
840
|
-
allow_template_sharing?: boolean | null;
|
|
841
|
-
|
|
842
|
-
/**
|
|
843
|
-
* Billing contact info returned in profile responses
|
|
844
|
-
*/
|
|
845
|
-
billing_contact?: Data.BillingContact | null;
|
|
846
|
-
|
|
847
|
-
/**
|
|
848
|
-
* Billing model: profile, organization, or profile_and_organization
|
|
849
|
-
*/
|
|
850
|
-
billing_model?: string;
|
|
851
|
-
|
|
852
|
-
/**
|
|
853
|
-
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
854
|
-
* the request structure.
|
|
855
|
-
*/
|
|
856
|
-
brand?: Data.Brand | null;
|
|
857
|
-
|
|
858
|
-
/**
|
|
859
|
-
* When the profile was created
|
|
860
|
-
*/
|
|
861
|
-
created_at?: string;
|
|
862
|
-
|
|
863
|
-
/**
|
|
864
|
-
* Profile description
|
|
865
|
-
*/
|
|
866
|
-
description?: string | null;
|
|
867
|
-
|
|
868
|
-
/**
|
|
869
|
-
* Profile email (inherited from organization)
|
|
870
|
-
*/
|
|
871
|
-
email?: string | null;
|
|
465
|
+
phoneCountryCode?: string | null;
|
|
872
466
|
|
|
873
|
-
|
|
874
|
-
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
/**
|
|
879
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
880
|
-
* contacts. Retained so existing v3 clients reading inherit_contacts keep
|
|
881
|
-
* deserializing; it carries no information.
|
|
882
|
-
*/
|
|
883
|
-
inherit_contacts?: boolean | null;
|
|
884
|
-
|
|
885
|
-
/**
|
|
886
|
-
* Whether this profile inherits TCR brand from the organization
|
|
887
|
-
*/
|
|
888
|
-
inherit_tcr_brand?: boolean;
|
|
889
|
-
|
|
890
|
-
/**
|
|
891
|
-
* Whether this profile inherits TCR campaign from the organization
|
|
892
|
-
*/
|
|
893
|
-
inherit_tcr_campaign?: boolean;
|
|
894
|
-
|
|
895
|
-
/**
|
|
896
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
897
|
-
* templates. Retained so existing v3 clients reading inherit_templates keep
|
|
898
|
-
* deserializing; it carries no information.
|
|
899
|
-
*/
|
|
900
|
-
inherit_templates?: boolean | null;
|
|
901
|
-
|
|
902
|
-
/**
|
|
903
|
-
* Profile name
|
|
904
|
-
*/
|
|
905
|
-
name?: string;
|
|
906
|
-
|
|
907
|
-
/**
|
|
908
|
-
* Parent organization ID
|
|
909
|
-
*/
|
|
910
|
-
organization_id?: string | null;
|
|
911
|
-
|
|
912
|
-
/**
|
|
913
|
-
* Direct SMS phone number
|
|
914
|
-
*/
|
|
915
|
-
sending_phone_number?: string | null;
|
|
916
|
-
|
|
917
|
-
/**
|
|
918
|
-
* @deprecated Deprecated. Always null. Sender borrowing is gone: a profile no
|
|
919
|
-
* longer points at another profile for its SMS sender, and every profile owns the
|
|
920
|
-
* sender it sends from.
|
|
921
|
-
*
|
|
922
|
-
* Kept on the wire, and never populated, because those are two different promises.
|
|
923
|
-
* Removing the key changes the response's shape — a generated client loses the
|
|
924
|
-
* property and stops compiling on the next regenerate, for a value that is now
|
|
925
|
-
* null for every profile in existence. Keeping it null costs a key and breaks
|
|
926
|
-
* nobody, and null is the honest answer rather than a placeholder: there is no
|
|
927
|
-
* borrowing left to report.
|
|
928
|
-
*
|
|
929
|
-
* Nothing could populate it. Migration 260813161500 dropped the column and copied
|
|
930
|
-
* each borrower its own channel-provider row; its Down() says outright that the
|
|
931
|
-
* borrower-to-lender pairing is not recoverable. The only surviving trace is a
|
|
932
|
-
* notes string on the copied row.
|
|
933
|
-
*/
|
|
934
|
-
sending_phone_number_profile_id?: string | null;
|
|
935
|
-
|
|
936
|
-
/**
|
|
937
|
-
* @deprecated
|
|
938
|
-
*/
|
|
939
|
-
sending_whatsapp_number_profile_id?: string | null;
|
|
940
|
-
|
|
941
|
-
/**
|
|
942
|
-
* Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
|
|
943
|
-
* only, with at least one letter.
|
|
944
|
-
*/
|
|
945
|
-
short_name?: string | null;
|
|
946
|
-
|
|
947
|
-
/**
|
|
948
|
-
* Profile setup status: incomplete, pending_review, approved, rejected
|
|
949
|
-
*/
|
|
950
|
-
status?: string;
|
|
951
|
-
|
|
952
|
-
/**
|
|
953
|
-
* When the profile was last updated
|
|
954
|
-
*/
|
|
955
|
-
updated_at?: string | null;
|
|
956
|
-
|
|
957
|
-
/**
|
|
958
|
-
* WhatsApp Business Account ID associated with this profile. Present whether the
|
|
959
|
-
* WABA is inherited from the organization or configured directly.
|
|
960
|
-
*/
|
|
961
|
-
waba_id?: string | null;
|
|
962
|
-
|
|
963
|
-
/**
|
|
964
|
-
* Direct WhatsApp phone number
|
|
965
|
-
*/
|
|
966
|
-
whatsapp_phone_number?: string | null;
|
|
967
|
-
}
|
|
968
|
-
|
|
969
|
-
export namespace Data {
|
|
970
|
-
/**
|
|
971
|
-
* Billing contact info returned in profile responses
|
|
972
|
-
*/
|
|
973
|
-
export interface BillingContact {
|
|
974
|
-
address?: string | null;
|
|
975
|
-
|
|
976
|
-
email?: string | null;
|
|
977
|
-
|
|
978
|
-
name?: string | null;
|
|
979
|
-
|
|
980
|
-
phone?: string | null;
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
/**
|
|
984
|
-
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
985
|
-
* the request structure.
|
|
986
|
-
*/
|
|
987
|
-
export interface Brand {
|
|
988
|
-
/**
|
|
989
|
-
* Unique identifier for the brand
|
|
990
|
-
*/
|
|
991
|
-
id?: string;
|
|
992
|
-
|
|
993
|
-
/**
|
|
994
|
-
* Business details and address information
|
|
995
|
-
*/
|
|
996
|
-
business?: Brand.Business | null;
|
|
997
|
-
|
|
998
|
-
/**
|
|
999
|
-
* Compliance and TCR-related information
|
|
1000
|
-
*/
|
|
1001
|
-
compliance?: Brand.Compliance | null;
|
|
1002
|
-
|
|
1003
|
-
/**
|
|
1004
|
-
* Contact information for the brand
|
|
1005
|
-
*/
|
|
1006
|
-
contact?: Brand.Contact | null;
|
|
1007
|
-
|
|
1008
|
-
/**
|
|
1009
|
-
* When the brand was created
|
|
1010
|
-
*/
|
|
1011
|
-
created_at?: string;
|
|
1012
|
-
|
|
1013
|
-
/**
|
|
1014
|
-
* @deprecated Deprecated and scheduled for removal. Identifies the Campaign
|
|
1015
|
-
* Service Provider that registered the brand, which is Sent, so the value is the
|
|
1016
|
-
* same for every brand and every account. Nothing on your side can act on it and
|
|
1017
|
-
* there is no replacement. Stop reading it.
|
|
1018
|
-
*/
|
|
1019
|
-
csp_id?: string | null;
|
|
1020
|
-
|
|
1021
|
-
identity_status?: 'SELF_DECLARED' | 'UNVERIFIED' | 'VERIFIED' | 'VETTED_VERIFIED' | null;
|
|
1022
|
-
|
|
1023
|
-
/**
|
|
1024
|
-
* Whether this brand is inherited from the parent organization
|
|
1025
|
-
*/
|
|
1026
|
-
is_inherited?: boolean;
|
|
1027
|
-
|
|
1028
|
-
status?: 'ACTIVE' | 'INACTIVE' | 'SUSPENDED' | null;
|
|
1029
|
-
|
|
1030
|
-
/**
|
|
1031
|
-
* When the brand was submitted to TCR
|
|
1032
|
-
*/
|
|
1033
|
-
submitted_at?: string | null;
|
|
1034
|
-
|
|
1035
|
-
/**
|
|
1036
|
-
* Whether this brand has been submitted to TCR
|
|
1037
|
-
*/
|
|
1038
|
-
submitted_to_tcr?: boolean;
|
|
1039
|
-
|
|
1040
|
-
/**
|
|
1041
|
-
* TCR brand ID (populated after TCR submission)
|
|
1042
|
-
*/
|
|
1043
|
-
tcr_brand_id?: string | null;
|
|
1044
|
-
|
|
1045
|
-
/**
|
|
1046
|
-
* Universal EIN from TCR
|
|
1047
|
-
*/
|
|
1048
|
-
universal_ein?: string | null;
|
|
1049
|
-
|
|
1050
|
-
/**
|
|
1051
|
-
* When the brand was last updated
|
|
1052
|
-
*/
|
|
1053
|
-
updated_at?: string | null;
|
|
1054
|
-
}
|
|
1055
|
-
|
|
1056
|
-
export namespace Brand {
|
|
1057
|
-
/**
|
|
1058
|
-
* Business details and address information
|
|
1059
|
-
*/
|
|
1060
|
-
export interface Business {
|
|
1061
|
-
/**
|
|
1062
|
-
* City
|
|
1063
|
-
*/
|
|
1064
|
-
city?: string | null;
|
|
1065
|
-
|
|
1066
|
-
/**
|
|
1067
|
-
* Country code (e.g., US, CA)
|
|
1068
|
-
*/
|
|
1069
|
-
country?: string | null;
|
|
1070
|
-
|
|
1071
|
-
/**
|
|
1072
|
-
* Country where the business is registered
|
|
1073
|
-
*/
|
|
1074
|
-
country_of_registration?: string | null;
|
|
1075
|
-
|
|
1076
|
-
/**
|
|
1077
|
-
* Business entity type
|
|
1078
|
-
*/
|
|
1079
|
-
entity_type?: string | null;
|
|
1080
|
-
|
|
1081
|
-
/**
|
|
1082
|
-
* Legal business name
|
|
1083
|
-
*/
|
|
1084
|
-
legal_name?: string | null;
|
|
1085
|
-
|
|
1086
|
-
/**
|
|
1087
|
-
* Postal/ZIP code
|
|
1088
|
-
*/
|
|
1089
|
-
postal_code?: string | null;
|
|
1090
|
-
|
|
1091
|
-
/**
|
|
1092
|
-
* State/province code
|
|
1093
|
-
*/
|
|
1094
|
-
state?: string | null;
|
|
1095
|
-
|
|
1096
|
-
/**
|
|
1097
|
-
* Street address
|
|
1098
|
-
*/
|
|
1099
|
-
street?: string | null;
|
|
1100
|
-
|
|
1101
|
-
/**
|
|
1102
|
-
* Tax ID/EIN number
|
|
1103
|
-
*/
|
|
1104
|
-
tax_id?: string | null;
|
|
1105
|
-
|
|
1106
|
-
/**
|
|
1107
|
-
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
1108
|
-
*/
|
|
1109
|
-
tax_id_type?: string | null;
|
|
1110
|
-
|
|
1111
|
-
/**
|
|
1112
|
-
* Business website URL
|
|
1113
|
-
*/
|
|
1114
|
-
url?: string | null;
|
|
1115
|
-
}
|
|
467
|
+
/**
|
|
468
|
+
* Contact's role in the business
|
|
469
|
+
*/
|
|
470
|
+
role?: string | null;
|
|
471
|
+
}
|
|
1116
472
|
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
*/
|
|
1126
|
-
destination_countries?: Array<ProfilesAPI.DestinationCountry>;
|
|
1127
|
-
|
|
1128
|
-
/**
|
|
1129
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
1130
|
-
*/
|
|
1131
|
-
is_tcr_application?: boolean;
|
|
1132
|
-
|
|
1133
|
-
/**
|
|
1134
|
-
* Additional notes about the business or use case
|
|
1135
|
-
*/
|
|
1136
|
-
notes?: string | null;
|
|
1137
|
-
|
|
1138
|
-
/**
|
|
1139
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
1140
|
-
*/
|
|
1141
|
-
phone_number_prefix?: string | null;
|
|
1142
|
-
|
|
1143
|
-
/**
|
|
1144
|
-
* @deprecated Always null. The brand's free-text primary use case is no longer
|
|
1145
|
-
* stored: it reached neither TCR nor any decision, and its column is dropped with
|
|
1146
|
-
* no backfill, because the values were prose and the typed equivalent is the
|
|
1147
|
-
* campaign's MessagingUseCaseUS.
|
|
1148
|
-
*
|
|
1149
|
-
* Retained so existing v3 clients reading primary_use_case keep deserializing.
|
|
1150
|
-
* Unlike the profile sharing flags, which can answer false truthfully, there is no
|
|
1151
|
-
* value to report here — the field is present and empty rather than present and
|
|
1152
|
-
* wrong.
|
|
1153
|
-
*/
|
|
1154
|
-
primary_use_case?: string | null;
|
|
1155
|
-
|
|
1156
|
-
vertical?: ProfilesAPI.TcrVertical | null;
|
|
1157
|
-
}
|
|
473
|
+
/**
|
|
474
|
+
* Brand and KYC data grouped into contact, business, and compliance sections
|
|
475
|
+
*/
|
|
476
|
+
export interface BrandsBrandData {
|
|
477
|
+
/**
|
|
478
|
+
* Compliance and TCR information for brand registration
|
|
479
|
+
*/
|
|
480
|
+
compliance: BrandComplianceInfo;
|
|
1158
481
|
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
/**
|
|
1164
|
-
* Business/brand name
|
|
1165
|
-
*/
|
|
1166
|
-
business_name?: string | null;
|
|
1167
|
-
|
|
1168
|
-
/**
|
|
1169
|
-
* Contact email address
|
|
1170
|
-
*/
|
|
1171
|
-
email?: string | null;
|
|
1172
|
-
|
|
1173
|
-
/**
|
|
1174
|
-
* Primary contact name
|
|
1175
|
-
*/
|
|
1176
|
-
name?: string;
|
|
1177
|
-
|
|
1178
|
-
/**
|
|
1179
|
-
* Contact phone number in E.164 format
|
|
1180
|
-
*/
|
|
1181
|
-
phone?: string | null;
|
|
1182
|
-
|
|
1183
|
-
/**
|
|
1184
|
-
* Contact phone country code (e.g., "1" for US)
|
|
1185
|
-
*/
|
|
1186
|
-
phone_country_code?: string | null;
|
|
1187
|
-
|
|
1188
|
-
/**
|
|
1189
|
-
* Contact's role in the business
|
|
1190
|
-
*/
|
|
1191
|
-
role?: string | null;
|
|
1192
|
-
}
|
|
1193
|
-
}
|
|
1194
|
-
}
|
|
482
|
+
/**
|
|
483
|
+
* Contact information for brand KYC
|
|
484
|
+
*/
|
|
485
|
+
contact: BrandContactInfo;
|
|
1195
486
|
|
|
1196
487
|
/**
|
|
1197
|
-
*
|
|
488
|
+
* Business details and address for brand KYC
|
|
1198
489
|
*/
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
1202
|
-
*/
|
|
1203
|
-
code?: string;
|
|
490
|
+
business?: BrandBusinessInfo | null;
|
|
491
|
+
}
|
|
1204
492
|
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
*/
|
|
1208
|
-
details?: { [key: string]: Array<string> } | null;
|
|
493
|
+
export interface DestinationCountry {
|
|
494
|
+
id?: string;
|
|
1209
495
|
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
*/
|
|
1213
|
-
doc_url?: string | null;
|
|
496
|
+
isMain?: boolean;
|
|
497
|
+
}
|
|
1214
498
|
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
499
|
+
export interface PaymentDetails {
|
|
500
|
+
/**
|
|
501
|
+
* Card number (digits only, 13–19 characters)
|
|
502
|
+
*/
|
|
503
|
+
card_number: string;
|
|
1220
504
|
|
|
1221
505
|
/**
|
|
1222
|
-
*
|
|
506
|
+
* Card security code (3–4 digits)
|
|
1223
507
|
*/
|
|
1224
|
-
|
|
1225
|
-
/**
|
|
1226
|
-
* Unique identifier for this request (for tracing and support)
|
|
1227
|
-
*/
|
|
1228
|
-
request_id?: string;
|
|
508
|
+
cvc: string;
|
|
1229
509
|
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
510
|
+
/**
|
|
511
|
+
* Card expiry date in MM/YY format (e.g. "09/27")
|
|
512
|
+
*/
|
|
513
|
+
expiry: string;
|
|
1234
514
|
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
}
|
|
515
|
+
/**
|
|
516
|
+
* Billing ZIP / postal code associated with the card
|
|
517
|
+
*/
|
|
518
|
+
zip_code: string;
|
|
1240
519
|
}
|
|
1241
520
|
|
|
1242
521
|
/**
|
|
1243
|
-
*
|
|
522
|
+
* Detailed profile response for v3 API
|
|
1244
523
|
*/
|
|
1245
|
-
export interface
|
|
524
|
+
export interface ProfileDetail {
|
|
1246
525
|
/**
|
|
1247
|
-
*
|
|
526
|
+
* Profile unique identifier
|
|
1248
527
|
*/
|
|
1249
|
-
|
|
528
|
+
id?: string;
|
|
1250
529
|
|
|
1251
530
|
/**
|
|
1252
|
-
*
|
|
531
|
+
* @deprecated Always false. A profile no longer shares contacts with sibling
|
|
532
|
+
* profiles — it sees only what it owns. Retained so existing v3 clients reading
|
|
533
|
+
* allow_contact_sharing keep deserializing; it carries no information.
|
|
1253
534
|
*/
|
|
1254
|
-
|
|
535
|
+
allow_contact_sharing?: boolean | null;
|
|
1255
536
|
|
|
1256
537
|
/**
|
|
1257
|
-
*
|
|
538
|
+
* Whether number changes are allowed during onboarding
|
|
1258
539
|
*/
|
|
1259
|
-
|
|
540
|
+
allow_number_change_during_onboarding?: boolean | null;
|
|
1260
541
|
|
|
1261
542
|
/**
|
|
1262
|
-
*
|
|
543
|
+
* @deprecated Always false. A profile no longer shares templates with sibling
|
|
544
|
+
* profiles. Retained so existing v3 clients reading allow_template_sharing keep
|
|
545
|
+
* deserializing; it carries no information.
|
|
1263
546
|
*/
|
|
1264
|
-
|
|
1265
|
-
}
|
|
547
|
+
allow_template_sharing?: boolean | null;
|
|
1266
548
|
|
|
1267
|
-
export namespace ProfileUpdateResponse {
|
|
1268
549
|
/**
|
|
1269
|
-
*
|
|
550
|
+
* Billing contact info returned in profile responses
|
|
1270
551
|
*/
|
|
1271
|
-
|
|
1272
|
-
/**
|
|
1273
|
-
* Profile unique identifier
|
|
1274
|
-
*/
|
|
1275
|
-
id?: string;
|
|
552
|
+
billing_contact?: ProfileDetail.BillingContact | null;
|
|
1276
553
|
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
*/
|
|
1282
|
-
allow_contact_sharing?: boolean | null;
|
|
1283
|
-
|
|
1284
|
-
/**
|
|
1285
|
-
* Whether number changes are allowed during onboarding
|
|
1286
|
-
*/
|
|
1287
|
-
allow_number_change_during_onboarding?: boolean | null;
|
|
1288
|
-
|
|
1289
|
-
/**
|
|
1290
|
-
* @deprecated Always false. A profile no longer shares templates with sibling
|
|
1291
|
-
* profiles. Retained so existing v3 clients reading allow_template_sharing keep
|
|
1292
|
-
* deserializing; it carries no information.
|
|
1293
|
-
*/
|
|
1294
|
-
allow_template_sharing?: boolean | null;
|
|
1295
|
-
|
|
1296
|
-
/**
|
|
1297
|
-
* Billing contact info returned in profile responses
|
|
1298
|
-
*/
|
|
1299
|
-
billing_contact?: Data.BillingContact | null;
|
|
1300
|
-
|
|
1301
|
-
/**
|
|
1302
|
-
* Billing model: profile, organization, or profile_and_organization
|
|
1303
|
-
*/
|
|
1304
|
-
billing_model?: string;
|
|
1305
|
-
|
|
1306
|
-
/**
|
|
1307
|
-
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
1308
|
-
* the request structure.
|
|
1309
|
-
*/
|
|
1310
|
-
brand?: Data.Brand | null;
|
|
1311
|
-
|
|
1312
|
-
/**
|
|
1313
|
-
* When the profile was created
|
|
1314
|
-
*/
|
|
1315
|
-
created_at?: string;
|
|
1316
|
-
|
|
1317
|
-
/**
|
|
1318
|
-
* Profile description
|
|
1319
|
-
*/
|
|
1320
|
-
description?: string | null;
|
|
1321
|
-
|
|
1322
|
-
/**
|
|
1323
|
-
* Profile email (inherited from organization)
|
|
1324
|
-
*/
|
|
1325
|
-
email?: string | null;
|
|
1326
|
-
|
|
1327
|
-
/**
|
|
1328
|
-
* Profile icon URL
|
|
1329
|
-
*/
|
|
1330
|
-
icon?: string | null;
|
|
1331
|
-
|
|
1332
|
-
/**
|
|
1333
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
1334
|
-
* contacts. Retained so existing v3 clients reading inherit_contacts keep
|
|
1335
|
-
* deserializing; it carries no information.
|
|
1336
|
-
*/
|
|
1337
|
-
inherit_contacts?: boolean | null;
|
|
1338
|
-
|
|
1339
|
-
/**
|
|
1340
|
-
* Whether this profile inherits TCR brand from the organization
|
|
1341
|
-
*/
|
|
1342
|
-
inherit_tcr_brand?: boolean;
|
|
1343
|
-
|
|
1344
|
-
/**
|
|
1345
|
-
* Whether this profile inherits TCR campaign from the organization
|
|
1346
|
-
*/
|
|
1347
|
-
inherit_tcr_campaign?: boolean;
|
|
1348
|
-
|
|
1349
|
-
/**
|
|
1350
|
-
* @deprecated Always false. A profile no longer inherits its organization's
|
|
1351
|
-
* templates. Retained so existing v3 clients reading inherit_templates keep
|
|
1352
|
-
* deserializing; it carries no information.
|
|
1353
|
-
*/
|
|
1354
|
-
inherit_templates?: boolean | null;
|
|
1355
|
-
|
|
1356
|
-
/**
|
|
1357
|
-
* Profile name
|
|
1358
|
-
*/
|
|
1359
|
-
name?: string;
|
|
1360
|
-
|
|
1361
|
-
/**
|
|
1362
|
-
* Parent organization ID
|
|
1363
|
-
*/
|
|
1364
|
-
organization_id?: string | null;
|
|
1365
|
-
|
|
1366
|
-
/**
|
|
1367
|
-
* Direct SMS phone number
|
|
1368
|
-
*/
|
|
1369
|
-
sending_phone_number?: string | null;
|
|
1370
|
-
|
|
1371
|
-
/**
|
|
1372
|
-
* @deprecated Deprecated. Always null. Sender borrowing is gone: a profile no
|
|
1373
|
-
* longer points at another profile for its SMS sender, and every profile owns the
|
|
1374
|
-
* sender it sends from.
|
|
1375
|
-
*
|
|
1376
|
-
* Kept on the wire, and never populated, because those are two different promises.
|
|
1377
|
-
* Removing the key changes the response's shape — a generated client loses the
|
|
1378
|
-
* property and stops compiling on the next regenerate, for a value that is now
|
|
1379
|
-
* null for every profile in existence. Keeping it null costs a key and breaks
|
|
1380
|
-
* nobody, and null is the honest answer rather than a placeholder: there is no
|
|
1381
|
-
* borrowing left to report.
|
|
1382
|
-
*
|
|
1383
|
-
* Nothing could populate it. Migration 260813161500 dropped the column and copied
|
|
1384
|
-
* each borrower its own channel-provider row; its Down() says outright that the
|
|
1385
|
-
* borrower-to-lender pairing is not recoverable. The only surviving trace is a
|
|
1386
|
-
* notes string on the copied row.
|
|
1387
|
-
*/
|
|
1388
|
-
sending_phone_number_profile_id?: string | null;
|
|
1389
|
-
|
|
1390
|
-
/**
|
|
1391
|
-
* @deprecated
|
|
1392
|
-
*/
|
|
1393
|
-
sending_whatsapp_number_profile_id?: string | null;
|
|
1394
|
-
|
|
1395
|
-
/**
|
|
1396
|
-
* Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
|
|
1397
|
-
* only, with at least one letter.
|
|
1398
|
-
*/
|
|
1399
|
-
short_name?: string | null;
|
|
1400
|
-
|
|
1401
|
-
/**
|
|
1402
|
-
* Profile setup status: incomplete, pending_review, approved, rejected
|
|
1403
|
-
*/
|
|
1404
|
-
status?: string;
|
|
1405
|
-
|
|
1406
|
-
/**
|
|
1407
|
-
* When the profile was last updated
|
|
1408
|
-
*/
|
|
1409
|
-
updated_at?: string | null;
|
|
554
|
+
/**
|
|
555
|
+
* Billing model: profile, organization, or profile_and_organization
|
|
556
|
+
*/
|
|
557
|
+
billing_model?: string;
|
|
1410
558
|
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
559
|
+
/**
|
|
560
|
+
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
561
|
+
* the request structure.
|
|
562
|
+
*/
|
|
563
|
+
brand?: ProfileDetail.Brand | null;
|
|
1416
564
|
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
}
|
|
565
|
+
/**
|
|
566
|
+
* When the profile was created
|
|
567
|
+
*/
|
|
568
|
+
created_at?: string;
|
|
1422
569
|
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
export interface BillingContact {
|
|
1428
|
-
address?: string | null;
|
|
570
|
+
/**
|
|
571
|
+
* Profile description
|
|
572
|
+
*/
|
|
573
|
+
description?: string | null;
|
|
1429
574
|
|
|
1430
|
-
|
|
575
|
+
/**
|
|
576
|
+
* Profile email (inherited from organization)
|
|
577
|
+
*/
|
|
578
|
+
email?: string | null;
|
|
1431
579
|
|
|
1432
|
-
|
|
580
|
+
/**
|
|
581
|
+
* Profile icon URL
|
|
582
|
+
*/
|
|
583
|
+
icon?: string | null;
|
|
1433
584
|
|
|
1434
|
-
|
|
1435
|
-
|
|
585
|
+
/**
|
|
586
|
+
* @deprecated Always false. A profile no longer inherits its organization's
|
|
587
|
+
* contacts. Retained so existing v3 clients reading inherit_contacts keep
|
|
588
|
+
* deserializing; it carries no information.
|
|
589
|
+
*/
|
|
590
|
+
inherit_contacts?: boolean | null;
|
|
1436
591
|
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
export interface Brand {
|
|
1442
|
-
/**
|
|
1443
|
-
* Unique identifier for the brand
|
|
1444
|
-
*/
|
|
1445
|
-
id?: string;
|
|
592
|
+
/**
|
|
593
|
+
* Whether this profile inherits TCR brand from the organization
|
|
594
|
+
*/
|
|
595
|
+
inherit_tcr_brand?: boolean;
|
|
1446
596
|
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
597
|
+
/**
|
|
598
|
+
* Whether this profile inherits TCR campaign from the organization
|
|
599
|
+
*/
|
|
600
|
+
inherit_tcr_campaign?: boolean;
|
|
1451
601
|
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
602
|
+
/**
|
|
603
|
+
* @deprecated Always false. A profile no longer inherits its organization's
|
|
604
|
+
* templates. Retained so existing v3 clients reading inherit_templates keep
|
|
605
|
+
* deserializing; it carries no information.
|
|
606
|
+
*/
|
|
607
|
+
inherit_templates?: boolean | null;
|
|
1456
608
|
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
609
|
+
/**
|
|
610
|
+
* Profile name
|
|
611
|
+
*/
|
|
612
|
+
name?: string;
|
|
1461
613
|
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
|
|
614
|
+
/**
|
|
615
|
+
* Parent organization ID
|
|
616
|
+
*/
|
|
617
|
+
organization_id?: string | null;
|
|
1466
618
|
|
|
1467
|
-
|
|
1468
|
-
|
|
1469
|
-
|
|
1470
|
-
|
|
1471
|
-
* there is no replacement. Stop reading it.
|
|
1472
|
-
*/
|
|
1473
|
-
csp_id?: string | null;
|
|
619
|
+
/**
|
|
620
|
+
* Direct SMS phone number
|
|
621
|
+
*/
|
|
622
|
+
sending_phone_number?: string | null;
|
|
1474
623
|
|
|
1475
|
-
|
|
624
|
+
/**
|
|
625
|
+
* @deprecated Deprecated. Always null. Sender borrowing is gone: a profile no
|
|
626
|
+
* longer points at another profile for its SMS sender, and every profile owns the
|
|
627
|
+
* sender it sends from.
|
|
628
|
+
*
|
|
629
|
+
* Kept on the wire, and never populated, because those are two different promises.
|
|
630
|
+
* Removing the key changes the response's shape — a generated client loses the
|
|
631
|
+
* property and stops compiling on the next regenerate, for a value that is now
|
|
632
|
+
* null for every profile in existence. Keeping it null costs a key and breaks
|
|
633
|
+
* nobody, and null is the honest answer rather than a placeholder: there is no
|
|
634
|
+
* borrowing left to report.
|
|
635
|
+
*
|
|
636
|
+
* Nothing could populate it. Migration 260813161500 dropped the column and copied
|
|
637
|
+
* each borrower its own channel-provider row; its Down() says outright that the
|
|
638
|
+
* borrower-to-lender pairing is not recoverable. The only surviving trace is a
|
|
639
|
+
* notes string on the copied row.
|
|
640
|
+
*/
|
|
641
|
+
sending_phone_number_profile_id?: string | null;
|
|
1476
642
|
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
643
|
+
/**
|
|
644
|
+
* @deprecated
|
|
645
|
+
*/
|
|
646
|
+
sending_whatsapp_number_profile_id?: string | null;
|
|
1481
647
|
|
|
1482
|
-
|
|
648
|
+
/**
|
|
649
|
+
* Profile short name/abbreviation. 3–11 characters: letters, numbers, and spaces
|
|
650
|
+
* only, with at least one letter.
|
|
651
|
+
*/
|
|
652
|
+
short_name?: string | null;
|
|
1483
653
|
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
|
|
1487
|
-
|
|
654
|
+
/**
|
|
655
|
+
* Profile setup status: incomplete, pending_review, approved, rejected
|
|
656
|
+
*/
|
|
657
|
+
status?: string;
|
|
1488
658
|
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
659
|
+
/**
|
|
660
|
+
* When the profile was last updated
|
|
661
|
+
*/
|
|
662
|
+
updated_at?: string | null;
|
|
1493
663
|
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
664
|
+
/**
|
|
665
|
+
* WhatsApp Business Account ID associated with this profile. Present whether the
|
|
666
|
+
* WABA is inherited from the organization or configured directly.
|
|
667
|
+
*/
|
|
668
|
+
waba_id?: string | null;
|
|
1498
669
|
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
670
|
+
/**
|
|
671
|
+
* Direct WhatsApp phone number
|
|
672
|
+
*/
|
|
673
|
+
whatsapp_phone_number?: string | null;
|
|
674
|
+
}
|
|
1503
675
|
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
676
|
+
export namespace ProfileDetail {
|
|
677
|
+
/**
|
|
678
|
+
* Billing contact info returned in profile responses
|
|
679
|
+
*/
|
|
680
|
+
export interface BillingContact {
|
|
681
|
+
address?: string | null;
|
|
1509
682
|
|
|
1510
|
-
|
|
1511
|
-
/**
|
|
1512
|
-
* Business details and address information
|
|
1513
|
-
*/
|
|
1514
|
-
export interface Business {
|
|
1515
|
-
/**
|
|
1516
|
-
* City
|
|
1517
|
-
*/
|
|
1518
|
-
city?: string | null;
|
|
1519
|
-
|
|
1520
|
-
/**
|
|
1521
|
-
* Country code (e.g., US, CA)
|
|
1522
|
-
*/
|
|
1523
|
-
country?: string | null;
|
|
1524
|
-
|
|
1525
|
-
/**
|
|
1526
|
-
* Country where the business is registered
|
|
1527
|
-
*/
|
|
1528
|
-
country_of_registration?: string | null;
|
|
1529
|
-
|
|
1530
|
-
/**
|
|
1531
|
-
* Business entity type
|
|
1532
|
-
*/
|
|
1533
|
-
entity_type?: string | null;
|
|
1534
|
-
|
|
1535
|
-
/**
|
|
1536
|
-
* Legal business name
|
|
1537
|
-
*/
|
|
1538
|
-
legal_name?: string | null;
|
|
1539
|
-
|
|
1540
|
-
/**
|
|
1541
|
-
* Postal/ZIP code
|
|
1542
|
-
*/
|
|
1543
|
-
postal_code?: string | null;
|
|
1544
|
-
|
|
1545
|
-
/**
|
|
1546
|
-
* State/province code
|
|
1547
|
-
*/
|
|
1548
|
-
state?: string | null;
|
|
1549
|
-
|
|
1550
|
-
/**
|
|
1551
|
-
* Street address
|
|
1552
|
-
*/
|
|
1553
|
-
street?: string | null;
|
|
1554
|
-
|
|
1555
|
-
/**
|
|
1556
|
-
* Tax ID/EIN number
|
|
1557
|
-
*/
|
|
1558
|
-
tax_id?: string | null;
|
|
1559
|
-
|
|
1560
|
-
/**
|
|
1561
|
-
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
1562
|
-
*/
|
|
1563
|
-
tax_id_type?: string | null;
|
|
1564
|
-
|
|
1565
|
-
/**
|
|
1566
|
-
* Business website URL
|
|
1567
|
-
*/
|
|
1568
|
-
url?: string | null;
|
|
1569
|
-
}
|
|
683
|
+
email?: string | null;
|
|
1570
684
|
|
|
1571
|
-
|
|
1572
|
-
* Compliance and TCR-related information
|
|
1573
|
-
*/
|
|
1574
|
-
export interface Compliance {
|
|
1575
|
-
brand_relationship?: ProfilesAPI.TcrBrandRelationship | null;
|
|
1576
|
-
|
|
1577
|
-
/**
|
|
1578
|
-
* List of destination countries for messaging
|
|
1579
|
-
*/
|
|
1580
|
-
destination_countries?: Array<ProfilesAPI.DestinationCountry>;
|
|
1581
|
-
|
|
1582
|
-
/**
|
|
1583
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
1584
|
-
*/
|
|
1585
|
-
is_tcr_application?: boolean;
|
|
1586
|
-
|
|
1587
|
-
/**
|
|
1588
|
-
* Additional notes about the business or use case
|
|
1589
|
-
*/
|
|
1590
|
-
notes?: string | null;
|
|
1591
|
-
|
|
1592
|
-
/**
|
|
1593
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
1594
|
-
*/
|
|
1595
|
-
phone_number_prefix?: string | null;
|
|
1596
|
-
|
|
1597
|
-
/**
|
|
1598
|
-
* @deprecated Always null. The brand's free-text primary use case is no longer
|
|
1599
|
-
* stored: it reached neither TCR nor any decision, and its column is dropped with
|
|
1600
|
-
* no backfill, because the values were prose and the typed equivalent is the
|
|
1601
|
-
* campaign's MessagingUseCaseUS.
|
|
1602
|
-
*
|
|
1603
|
-
* Retained so existing v3 clients reading primary_use_case keep deserializing.
|
|
1604
|
-
* Unlike the profile sharing flags, which can answer false truthfully, there is no
|
|
1605
|
-
* value to report here — the field is present and empty rather than present and
|
|
1606
|
-
* wrong.
|
|
1607
|
-
*/
|
|
1608
|
-
primary_use_case?: string | null;
|
|
1609
|
-
|
|
1610
|
-
vertical?: ProfilesAPI.TcrVertical | null;
|
|
1611
|
-
}
|
|
685
|
+
name?: string | null;
|
|
1612
686
|
|
|
1613
|
-
|
|
1614
|
-
* Contact information for the brand
|
|
1615
|
-
*/
|
|
1616
|
-
export interface Contact {
|
|
1617
|
-
/**
|
|
1618
|
-
* Business/brand name
|
|
1619
|
-
*/
|
|
1620
|
-
business_name?: string | null;
|
|
1621
|
-
|
|
1622
|
-
/**
|
|
1623
|
-
* Contact email address
|
|
1624
|
-
*/
|
|
1625
|
-
email?: string | null;
|
|
1626
|
-
|
|
1627
|
-
/**
|
|
1628
|
-
* Primary contact name
|
|
1629
|
-
*/
|
|
1630
|
-
name?: string;
|
|
1631
|
-
|
|
1632
|
-
/**
|
|
1633
|
-
* Contact phone number in E.164 format
|
|
1634
|
-
*/
|
|
1635
|
-
phone?: string | null;
|
|
1636
|
-
|
|
1637
|
-
/**
|
|
1638
|
-
* Contact phone country code (e.g., "1" for US)
|
|
1639
|
-
*/
|
|
1640
|
-
phone_country_code?: string | null;
|
|
1641
|
-
|
|
1642
|
-
/**
|
|
1643
|
-
* Contact's role in the business
|
|
1644
|
-
*/
|
|
1645
|
-
role?: string | null;
|
|
1646
|
-
}
|
|
1647
|
-
}
|
|
687
|
+
phone?: string | null;
|
|
1648
688
|
}
|
|
1649
689
|
|
|
1650
690
|
/**
|
|
1651
|
-
*
|
|
691
|
+
* Brand response with nested contact, business, and compliance sections — mirrors
|
|
692
|
+
* the request structure.
|
|
1652
693
|
*/
|
|
1653
|
-
export interface
|
|
694
|
+
export interface Brand {
|
|
1654
695
|
/**
|
|
1655
|
-
*
|
|
696
|
+
* Unique identifier for the brand
|
|
1656
697
|
*/
|
|
1657
|
-
|
|
698
|
+
id?: string;
|
|
1658
699
|
|
|
1659
700
|
/**
|
|
1660
|
-
*
|
|
701
|
+
* Business details and address information
|
|
1661
702
|
*/
|
|
1662
|
-
|
|
703
|
+
business?: Brand.Business | null;
|
|
1663
704
|
|
|
1664
705
|
/**
|
|
1665
|
-
*
|
|
706
|
+
* Compliance and TCR-related information
|
|
1666
707
|
*/
|
|
1667
|
-
|
|
708
|
+
compliance?: Brand.Compliance | null;
|
|
1668
709
|
|
|
1669
710
|
/**
|
|
1670
|
-
*
|
|
711
|
+
* Contact information for the brand
|
|
1671
712
|
*/
|
|
1672
|
-
|
|
1673
|
-
}
|
|
713
|
+
contact?: Brand.Contact | null;
|
|
1674
714
|
|
|
1675
|
-
/**
|
|
1676
|
-
* Request and response metadata
|
|
1677
|
-
*/
|
|
1678
|
-
export interface Meta {
|
|
1679
715
|
/**
|
|
1680
|
-
*
|
|
716
|
+
* When the brand was created
|
|
1681
717
|
*/
|
|
1682
|
-
|
|
718
|
+
created_at?: string;
|
|
1683
719
|
|
|
1684
720
|
/**
|
|
1685
|
-
*
|
|
721
|
+
* @deprecated Deprecated and scheduled for removal. Identifies the Campaign
|
|
722
|
+
* Service Provider that registered the brand, which is Sent, so the value is the
|
|
723
|
+
* same for every brand and every account. Nothing on your side can act on it and
|
|
724
|
+
* there is no replacement. Stop reading it.
|
|
1686
725
|
*/
|
|
1687
|
-
|
|
726
|
+
csp_id?: string | null;
|
|
727
|
+
|
|
728
|
+
identity_status?: 'SELF_DECLARED' | 'UNVERIFIED' | 'VERIFIED' | 'VETTED_VERIFIED' | null;
|
|
1688
729
|
|
|
1689
730
|
/**
|
|
1690
|
-
*
|
|
731
|
+
* Whether this brand is inherited from the parent organization
|
|
1691
732
|
*/
|
|
1692
|
-
|
|
1693
|
-
}
|
|
1694
|
-
}
|
|
1695
|
-
|
|
1696
|
-
/**
|
|
1697
|
-
* Standard API response envelope for all v3 endpoints
|
|
1698
|
-
*/
|
|
1699
|
-
export interface ProfileListResponse {
|
|
1700
|
-
/**
|
|
1701
|
-
* The profiles in the organization.
|
|
1702
|
-
*/
|
|
1703
|
-
data?: ProfileListResponse.Data | null;
|
|
1704
|
-
|
|
1705
|
-
/**
|
|
1706
|
-
* Error information
|
|
1707
|
-
*/
|
|
1708
|
-
error?: ProfileListResponse.Error | null;
|
|
1709
|
-
|
|
1710
|
-
/**
|
|
1711
|
-
* Request and response metadata
|
|
1712
|
-
*/
|
|
1713
|
-
meta?: ProfileListResponse.Meta;
|
|
733
|
+
is_inherited?: boolean;
|
|
1714
734
|
|
|
1715
|
-
|
|
1716
|
-
* Indicates whether the request was successful
|
|
1717
|
-
*/
|
|
1718
|
-
success?: boolean;
|
|
1719
|
-
}
|
|
735
|
+
status?: 'ACTIVE' | 'INACTIVE' | 'SUSPENDED' | null;
|
|
1720
736
|
|
|
1721
|
-
export namespace ProfileListResponse {
|
|
1722
|
-
/**
|
|
1723
|
-
* The profiles in the organization.
|
|
1724
|
-
*/
|
|
1725
|
-
export interface Data {
|
|
1726
737
|
/**
|
|
1727
|
-
*
|
|
738
|
+
* When the brand was submitted to TCR
|
|
1728
739
|
*/
|
|
1729
|
-
|
|
740
|
+
submitted_at?: string | null;
|
|
1730
741
|
|
|
1731
742
|
/**
|
|
1732
|
-
*
|
|
743
|
+
* Whether this brand has been submitted to TCR
|
|
1733
744
|
*/
|
|
1734
|
-
|
|
1735
|
-
}
|
|
745
|
+
submitted_to_tcr?: boolean;
|
|
1736
746
|
|
|
1737
|
-
export namespace Data {
|
|
1738
747
|
/**
|
|
1739
|
-
*
|
|
748
|
+
* TCR brand ID (populated after TCR submission)
|
|
1740
749
|
*/
|
|
1741
|
-
|
|
1742
|
-
/**
|
|
1743
|
-
* @deprecated Cursor-based pagination. Never populated — see Cursors.
|
|
1744
|
-
*/
|
|
1745
|
-
cursors?: Pagination.Cursors | null;
|
|
1746
|
-
|
|
1747
|
-
/**
|
|
1748
|
-
* Whether there are more pages after this one
|
|
1749
|
-
*/
|
|
1750
|
-
has_more?: boolean;
|
|
1751
|
-
|
|
1752
|
-
/**
|
|
1753
|
-
* Current page number (1-indexed)
|
|
1754
|
-
*/
|
|
1755
|
-
page?: number;
|
|
1756
|
-
|
|
1757
|
-
/**
|
|
1758
|
-
* Number of items per page
|
|
1759
|
-
*/
|
|
1760
|
-
page_size?: number;
|
|
1761
|
-
|
|
1762
|
-
/**
|
|
1763
|
-
* Total number of items across all pages
|
|
1764
|
-
*/
|
|
1765
|
-
total_count?: number;
|
|
1766
|
-
|
|
1767
|
-
/**
|
|
1768
|
-
* Total number of pages
|
|
1769
|
-
*/
|
|
1770
|
-
total_pages?: number;
|
|
1771
|
-
}
|
|
1772
|
-
|
|
1773
|
-
export namespace Pagination {
|
|
1774
|
-
/**
|
|
1775
|
-
* @deprecated Cursor-based pagination. Never populated — see Cursors.
|
|
1776
|
-
*/
|
|
1777
|
-
export interface Cursors {
|
|
1778
|
-
/**
|
|
1779
|
-
* Cursor to fetch the next page.
|
|
1780
|
-
*/
|
|
1781
|
-
after?: string | null;
|
|
1782
|
-
|
|
1783
|
-
/**
|
|
1784
|
-
* Cursor to fetch the previous page.
|
|
1785
|
-
*/
|
|
1786
|
-
before?: string | null;
|
|
1787
|
-
}
|
|
1788
|
-
}
|
|
750
|
+
tcr_brand_id?: string | null;
|
|
1789
751
|
|
|
1790
752
|
/**
|
|
1791
|
-
*
|
|
753
|
+
* Universal EIN from TCR
|
|
1792
754
|
*/
|
|
1793
|
-
|
|
1794
|
-
/**
|
|
1795
|
-
* Profile unique identifier
|
|
1796
|
-
*/
|
|
1797
|
-
id?: string;
|
|
755
|
+
universal_ein?: string | null;
|
|
1798
756
|
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
allow_contact_sharing?: boolean | null;
|
|
757
|
+
/**
|
|
758
|
+
* When the brand was last updated
|
|
759
|
+
*/
|
|
760
|
+
updated_at?: string | null;
|
|
761
|
+
}
|
|
1805
762
|
|
|
763
|
+
export namespace Brand {
|
|
764
|
+
/**
|
|
765
|
+
* Business details and address information
|
|
766
|
+
*/
|
|
767
|
+
export interface Business {
|
|
1806
768
|
/**
|
|
1807
|
-
*
|
|
769
|
+
* City
|
|
1808
770
|
*/
|
|
1809
|
-
|
|
771
|
+
city?: string | null;
|
|
1810
772
|
|
|
1811
773
|
/**
|
|
1812
|
-
*
|
|
1813
|
-
* profiles. Retained so existing v3 clients reading allow_template_sharing keep
|
|
1814
|
-
* deserializing; it carries no information.
|
|
774
|
+
* Country code (e.g., US, CA)
|
|
1815
775
|
*/
|
|
1816
|
-
|
|
776
|
+
country?: string | null;
|
|
1817
777
|
|
|
1818
778
|
/**
|
|
1819
|
-
*
|
|
779
|
+
* Country where the business is registered
|
|
1820
780
|
*/
|
|
1821
|
-
|
|
781
|
+
country_of_registration?: string | null;
|
|
1822
782
|
|
|
1823
783
|
/**
|
|
1824
|
-
*
|
|
784
|
+
* Business entity type
|
|
1825
785
|
*/
|
|
1826
|
-
|
|
786
|
+
entity_type?: string | null;
|
|
1827
787
|
|
|
1828
788
|
/**
|
|
1829
|
-
*
|
|
1830
|
-
* the request structure.
|
|
789
|
+
* Legal business name
|
|
1831
790
|
*/
|
|
1832
|
-
|
|
791
|
+
legal_name?: string | null;
|
|
1833
792
|
|
|
1834
793
|
/**
|
|
1835
|
-
*
|
|
794
|
+
* Postal/ZIP code
|
|
1836
795
|
*/
|
|
1837
|
-
|
|
796
|
+
postal_code?: string | null;
|
|
1838
797
|
|
|
1839
798
|
/**
|
|
1840
|
-
*
|
|
799
|
+
* State/province code
|
|
1841
800
|
*/
|
|
1842
|
-
|
|
801
|
+
state?: string | null;
|
|
1843
802
|
|
|
1844
803
|
/**
|
|
1845
|
-
*
|
|
804
|
+
* Street address
|
|
1846
805
|
*/
|
|
1847
|
-
|
|
806
|
+
street?: string | null;
|
|
1848
807
|
|
|
1849
808
|
/**
|
|
1850
|
-
*
|
|
809
|
+
* Tax ID/EIN number
|
|
1851
810
|
*/
|
|
1852
|
-
|
|
811
|
+
tax_id?: string | null;
|
|
1853
812
|
|
|
1854
813
|
/**
|
|
1855
|
-
*
|
|
1856
|
-
* contacts. Retained so existing v3 clients reading inherit_contacts keep
|
|
1857
|
-
* deserializing; it carries no information.
|
|
814
|
+
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
1858
815
|
*/
|
|
1859
|
-
|
|
816
|
+
tax_id_type?: string | null;
|
|
1860
817
|
|
|
1861
818
|
/**
|
|
1862
|
-
*
|
|
819
|
+
* Business website URL
|
|
1863
820
|
*/
|
|
1864
|
-
|
|
821
|
+
url?: string | null;
|
|
822
|
+
}
|
|
1865
823
|
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
824
|
+
/**
|
|
825
|
+
* Compliance and TCR-related information
|
|
826
|
+
*/
|
|
827
|
+
export interface Compliance {
|
|
828
|
+
brand_relationship?: ProfilesAPI.TcrBrandRelationship | null;
|
|
1870
829
|
|
|
1871
830
|
/**
|
|
1872
|
-
*
|
|
1873
|
-
* templates. Retained so existing v3 clients reading inherit_templates keep
|
|
1874
|
-
* deserializing; it carries no information.
|
|
831
|
+
* List of destination countries for messaging
|
|
1875
832
|
*/
|
|
1876
|
-
|
|
833
|
+
destination_countries?: Array<ProfilesAPI.DestinationCountry>;
|
|
1877
834
|
|
|
1878
835
|
/**
|
|
1879
|
-
*
|
|
836
|
+
* Whether this is a TCR (Campaign Registry) application
|
|
1880
837
|
*/
|
|
1881
|
-
|
|
838
|
+
is_tcr_application?: boolean;
|
|
1882
839
|
|
|
1883
840
|
/**
|
|
1884
|
-
*
|
|
841
|
+
* Additional notes about the business or use case
|
|
1885
842
|
*/
|
|
1886
|
-
|
|
843
|
+
notes?: string | null;
|
|
1887
844
|
|
|
1888
845
|
/**
|
|
1889
|
-
*
|
|
846
|
+
* Phone number prefix for messaging (e.g., "+1")
|
|
1890
847
|
*/
|
|
1891
|
-
|
|
848
|
+
phone_number_prefix?: string | null;
|
|
1892
849
|
|
|
1893
850
|
/**
|
|
1894
|
-
* @deprecated
|
|
1895
|
-
*
|
|
1896
|
-
*
|
|
851
|
+
* @deprecated Always null. The brand's free-text primary use case is no longer
|
|
852
|
+
* stored: it reached neither TCR nor any decision, and its column is dropped with
|
|
853
|
+
* no backfill, because the values were prose and the typed equivalent is the
|
|
854
|
+
* campaign's MessagingUseCaseUS.
|
|
1897
855
|
*
|
|
1898
|
-
*
|
|
1899
|
-
*
|
|
1900
|
-
*
|
|
1901
|
-
*
|
|
1902
|
-
* nobody, and null is the honest answer rather than a placeholder: there is no
|
|
1903
|
-
* borrowing left to report.
|
|
1904
|
-
*
|
|
1905
|
-
* Nothing could populate it. Migration 260813161500 dropped the column and copied
|
|
1906
|
-
* each borrower its own channel-provider row; its Down() says outright that the
|
|
1907
|
-
* borrower-to-lender pairing is not recoverable. The only surviving trace is a
|
|
1908
|
-
* notes string on the copied row.
|
|
856
|
+
* Retained so existing v3 clients reading primary_use_case keep deserializing.
|
|
857
|
+
* Unlike the profile sharing flags, which can answer false truthfully, there is no
|
|
858
|
+
* value to report here — the field is present and empty rather than present and
|
|
859
|
+
* wrong.
|
|
1909
860
|
*/
|
|
1910
|
-
|
|
861
|
+
primary_use_case?: string | null;
|
|
1911
862
|
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
*/
|
|
1915
|
-
sending_whatsapp_number_profile_id?: string | null;
|
|
863
|
+
vertical?: ProfilesAPI.TcrVertical | null;
|
|
864
|
+
}
|
|
1916
865
|
|
|
866
|
+
/**
|
|
867
|
+
* Contact information for the brand
|
|
868
|
+
*/
|
|
869
|
+
export interface Contact {
|
|
1917
870
|
/**
|
|
1918
|
-
*
|
|
1919
|
-
* only, with at least one letter.
|
|
871
|
+
* Business/brand name
|
|
1920
872
|
*/
|
|
1921
|
-
|
|
873
|
+
business_name?: string | null;
|
|
1922
874
|
|
|
1923
875
|
/**
|
|
1924
|
-
*
|
|
876
|
+
* Contact email address
|
|
1925
877
|
*/
|
|
1926
|
-
|
|
878
|
+
email?: string | null;
|
|
1927
879
|
|
|
1928
880
|
/**
|
|
1929
|
-
*
|
|
881
|
+
* Primary contact name
|
|
1930
882
|
*/
|
|
1931
|
-
|
|
883
|
+
name?: string;
|
|
1932
884
|
|
|
1933
885
|
/**
|
|
1934
|
-
*
|
|
1935
|
-
* WABA is inherited from the organization or configured directly.
|
|
886
|
+
* Contact phone number in E.164 format
|
|
1936
887
|
*/
|
|
1937
|
-
|
|
888
|
+
phone?: string | null;
|
|
1938
889
|
|
|
1939
890
|
/**
|
|
1940
|
-
*
|
|
891
|
+
* Contact phone country code (e.g., "1" for US)
|
|
1941
892
|
*/
|
|
1942
|
-
|
|
1943
|
-
}
|
|
893
|
+
phone_country_code?: string | null;
|
|
1944
894
|
|
|
1945
|
-
export namespace Profile {
|
|
1946
895
|
/**
|
|
1947
|
-
*
|
|
896
|
+
* Contact's role in the business
|
|
1948
897
|
*/
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
|
|
898
|
+
role?: string | null;
|
|
899
|
+
}
|
|
900
|
+
}
|
|
901
|
+
}
|
|
1953
902
|
|
|
1954
|
-
|
|
903
|
+
export type TcrBrandRelationship =
|
|
904
|
+
| 'BASIC_ACCOUNT'
|
|
905
|
+
| 'MEDIUM_ACCOUNT'
|
|
906
|
+
| 'LARGE_ACCOUNT'
|
|
907
|
+
| 'SMALL_ACCOUNT'
|
|
908
|
+
| 'KEY_ACCOUNT';
|
|
1955
909
|
|
|
1956
|
-
|
|
1957
|
-
|
|
910
|
+
export type TcrVertical =
|
|
911
|
+
| 'PROFESSIONAL'
|
|
912
|
+
| 'REAL_ESTATE'
|
|
913
|
+
| 'HEALTHCARE'
|
|
914
|
+
| 'HUMAN_RESOURCES'
|
|
915
|
+
| 'ENERGY'
|
|
916
|
+
| 'ENTERTAINMENT'
|
|
917
|
+
| 'RETAIL'
|
|
918
|
+
| 'TRANSPORTATION'
|
|
919
|
+
| 'AGRICULTURE'
|
|
920
|
+
| 'INSURANCE'
|
|
921
|
+
| 'POSTAL'
|
|
922
|
+
| 'EDUCATION'
|
|
923
|
+
| 'HOSPITALITY'
|
|
924
|
+
| 'FINANCIAL'
|
|
925
|
+
| 'POLITICAL'
|
|
926
|
+
| 'GAMBLING'
|
|
927
|
+
| 'LEGAL'
|
|
928
|
+
| 'CONSTRUCTION'
|
|
929
|
+
| 'NGO'
|
|
930
|
+
| 'MANUFACTURING'
|
|
931
|
+
| 'GOVERNMENT'
|
|
932
|
+
| 'TECHNOLOGY'
|
|
933
|
+
| 'COMMUNICATION';
|
|
1958
934
|
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
id?: string;
|
|
1968
|
-
|
|
1969
|
-
/**
|
|
1970
|
-
* Business details and address information
|
|
1971
|
-
*/
|
|
1972
|
-
business?: Brand.Business | null;
|
|
1973
|
-
|
|
1974
|
-
/**
|
|
1975
|
-
* Compliance and TCR-related information
|
|
1976
|
-
*/
|
|
1977
|
-
compliance?: Brand.Compliance | null;
|
|
1978
|
-
|
|
1979
|
-
/**
|
|
1980
|
-
* Contact information for the brand
|
|
1981
|
-
*/
|
|
1982
|
-
contact?: Brand.Contact | null;
|
|
1983
|
-
|
|
1984
|
-
/**
|
|
1985
|
-
* When the brand was created
|
|
1986
|
-
*/
|
|
1987
|
-
created_at?: string;
|
|
1988
|
-
|
|
1989
|
-
/**
|
|
1990
|
-
* @deprecated Deprecated and scheduled for removal. Identifies the Campaign
|
|
1991
|
-
* Service Provider that registered the brand, which is Sent, so the value is the
|
|
1992
|
-
* same for every brand and every account. Nothing on your side can act on it and
|
|
1993
|
-
* there is no replacement. Stop reading it.
|
|
1994
|
-
*/
|
|
1995
|
-
csp_id?: string | null;
|
|
1996
|
-
|
|
1997
|
-
identity_status?: 'SELF_DECLARED' | 'UNVERIFIED' | 'VERIFIED' | 'VETTED_VERIFIED' | null;
|
|
1998
|
-
|
|
1999
|
-
/**
|
|
2000
|
-
* Whether this brand is inherited from the parent organization
|
|
2001
|
-
*/
|
|
2002
|
-
is_inherited?: boolean;
|
|
2003
|
-
|
|
2004
|
-
status?: 'ACTIVE' | 'INACTIVE' | 'SUSPENDED' | null;
|
|
2005
|
-
|
|
2006
|
-
/**
|
|
2007
|
-
* When the brand was submitted to TCR
|
|
2008
|
-
*/
|
|
2009
|
-
submitted_at?: string | null;
|
|
2010
|
-
|
|
2011
|
-
/**
|
|
2012
|
-
* Whether this brand has been submitted to TCR
|
|
2013
|
-
*/
|
|
2014
|
-
submitted_to_tcr?: boolean;
|
|
2015
|
-
|
|
2016
|
-
/**
|
|
2017
|
-
* TCR brand ID (populated after TCR submission)
|
|
2018
|
-
*/
|
|
2019
|
-
tcr_brand_id?: string | null;
|
|
2020
|
-
|
|
2021
|
-
/**
|
|
2022
|
-
* Universal EIN from TCR
|
|
2023
|
-
*/
|
|
2024
|
-
universal_ein?: string | null;
|
|
2025
|
-
|
|
2026
|
-
/**
|
|
2027
|
-
* When the brand was last updated
|
|
2028
|
-
*/
|
|
2029
|
-
updated_at?: string | null;
|
|
2030
|
-
}
|
|
2031
|
-
|
|
2032
|
-
export namespace Brand {
|
|
2033
|
-
/**
|
|
2034
|
-
* Business details and address information
|
|
2035
|
-
*/
|
|
2036
|
-
export interface Business {
|
|
2037
|
-
/**
|
|
2038
|
-
* City
|
|
2039
|
-
*/
|
|
2040
|
-
city?: string | null;
|
|
2041
|
-
|
|
2042
|
-
/**
|
|
2043
|
-
* Country code (e.g., US, CA)
|
|
2044
|
-
*/
|
|
2045
|
-
country?: string | null;
|
|
2046
|
-
|
|
2047
|
-
/**
|
|
2048
|
-
* Country where the business is registered
|
|
2049
|
-
*/
|
|
2050
|
-
country_of_registration?: string | null;
|
|
2051
|
-
|
|
2052
|
-
/**
|
|
2053
|
-
* Business entity type
|
|
2054
|
-
*/
|
|
2055
|
-
entity_type?: string | null;
|
|
2056
|
-
|
|
2057
|
-
/**
|
|
2058
|
-
* Legal business name
|
|
2059
|
-
*/
|
|
2060
|
-
legal_name?: string | null;
|
|
2061
|
-
|
|
2062
|
-
/**
|
|
2063
|
-
* Postal/ZIP code
|
|
2064
|
-
*/
|
|
2065
|
-
postal_code?: string | null;
|
|
2066
|
-
|
|
2067
|
-
/**
|
|
2068
|
-
* State/province code
|
|
2069
|
-
*/
|
|
2070
|
-
state?: string | null;
|
|
2071
|
-
|
|
2072
|
-
/**
|
|
2073
|
-
* Street address
|
|
2074
|
-
*/
|
|
2075
|
-
street?: string | null;
|
|
2076
|
-
|
|
2077
|
-
/**
|
|
2078
|
-
* Tax ID/EIN number
|
|
2079
|
-
*/
|
|
2080
|
-
tax_id?: string | null;
|
|
2081
|
-
|
|
2082
|
-
/**
|
|
2083
|
-
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
2084
|
-
*/
|
|
2085
|
-
tax_id_type?: string | null;
|
|
2086
|
-
|
|
2087
|
-
/**
|
|
2088
|
-
* Business website URL
|
|
2089
|
-
*/
|
|
2090
|
-
url?: string | null;
|
|
2091
|
-
}
|
|
2092
|
-
|
|
2093
|
-
/**
|
|
2094
|
-
* Compliance and TCR-related information
|
|
2095
|
-
*/
|
|
2096
|
-
export interface Compliance {
|
|
2097
|
-
brand_relationship?: ProfilesAPI.TcrBrandRelationship | null;
|
|
2098
|
-
|
|
2099
|
-
/**
|
|
2100
|
-
* List of destination countries for messaging
|
|
2101
|
-
*/
|
|
2102
|
-
destination_countries?: Array<ProfilesAPI.DestinationCountry>;
|
|
2103
|
-
|
|
2104
|
-
/**
|
|
2105
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
2106
|
-
*/
|
|
2107
|
-
is_tcr_application?: boolean;
|
|
2108
|
-
|
|
2109
|
-
/**
|
|
2110
|
-
* Additional notes about the business or use case
|
|
2111
|
-
*/
|
|
2112
|
-
notes?: string | null;
|
|
2113
|
-
|
|
2114
|
-
/**
|
|
2115
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
2116
|
-
*/
|
|
2117
|
-
phone_number_prefix?: string | null;
|
|
2118
|
-
|
|
2119
|
-
/**
|
|
2120
|
-
* @deprecated Always null. The brand's free-text primary use case is no longer
|
|
2121
|
-
* stored: it reached neither TCR nor any decision, and its column is dropped with
|
|
2122
|
-
* no backfill, because the values were prose and the typed equivalent is the
|
|
2123
|
-
* campaign's MessagingUseCaseUS.
|
|
2124
|
-
*
|
|
2125
|
-
* Retained so existing v3 clients reading primary_use_case keep deserializing.
|
|
2126
|
-
* Unlike the profile sharing flags, which can answer false truthfully, there is no
|
|
2127
|
-
* value to report here — the field is present and empty rather than present and
|
|
2128
|
-
* wrong.
|
|
2129
|
-
*/
|
|
2130
|
-
primary_use_case?: string | null;
|
|
2131
|
-
|
|
2132
|
-
vertical?: ProfilesAPI.TcrVertical | null;
|
|
2133
|
-
}
|
|
2134
|
-
|
|
2135
|
-
/**
|
|
2136
|
-
* Contact information for the brand
|
|
2137
|
-
*/
|
|
2138
|
-
export interface Contact {
|
|
2139
|
-
/**
|
|
2140
|
-
* Business/brand name
|
|
2141
|
-
*/
|
|
2142
|
-
business_name?: string | null;
|
|
2143
|
-
|
|
2144
|
-
/**
|
|
2145
|
-
* Contact email address
|
|
2146
|
-
*/
|
|
2147
|
-
email?: string | null;
|
|
2148
|
-
|
|
2149
|
-
/**
|
|
2150
|
-
* Primary contact name
|
|
2151
|
-
*/
|
|
2152
|
-
name?: string;
|
|
2153
|
-
|
|
2154
|
-
/**
|
|
2155
|
-
* Contact phone number in E.164 format
|
|
2156
|
-
*/
|
|
2157
|
-
phone?: string | null;
|
|
2158
|
-
|
|
2159
|
-
/**
|
|
2160
|
-
* Contact phone country code (e.g., "1" for US)
|
|
2161
|
-
*/
|
|
2162
|
-
phone_country_code?: string | null;
|
|
2163
|
-
|
|
2164
|
-
/**
|
|
2165
|
-
* Contact's role in the business
|
|
2166
|
-
*/
|
|
2167
|
-
role?: string | null;
|
|
2168
|
-
}
|
|
2169
|
-
}
|
|
2170
|
-
}
|
|
2171
|
-
}
|
|
935
|
+
/**
|
|
936
|
+
* Standard API response envelope for all v3 endpoints
|
|
937
|
+
*/
|
|
938
|
+
export interface ProfileListResponse {
|
|
939
|
+
/**
|
|
940
|
+
* The profiles in the organization.
|
|
941
|
+
*/
|
|
942
|
+
data?: ProfileListResponse.Data | null;
|
|
2172
943
|
|
|
2173
944
|
/**
|
|
2174
945
|
* Error information
|
|
2175
946
|
*/
|
|
2176
|
-
|
|
2177
|
-
/**
|
|
2178
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
2179
|
-
*/
|
|
2180
|
-
code?: string;
|
|
2181
|
-
|
|
2182
|
-
/**
|
|
2183
|
-
* Additional validation error details (field-level errors)
|
|
2184
|
-
*/
|
|
2185
|
-
details?: { [key: string]: Array<string> } | null;
|
|
2186
|
-
|
|
2187
|
-
/**
|
|
2188
|
-
* URL to documentation about this error
|
|
2189
|
-
*/
|
|
2190
|
-
doc_url?: string | null;
|
|
2191
|
-
|
|
2192
|
-
/**
|
|
2193
|
-
* Human-readable error message
|
|
2194
|
-
*/
|
|
2195
|
-
message?: string;
|
|
2196
|
-
}
|
|
947
|
+
error?: WebhooksAPI.ErrorDetail | null;
|
|
2197
948
|
|
|
2198
949
|
/**
|
|
2199
950
|
* Request and response metadata
|
|
2200
951
|
*/
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
952
|
+
meta?: WebhooksAPI.APIMeta;
|
|
953
|
+
|
|
954
|
+
/**
|
|
955
|
+
* Indicates whether the request was successful
|
|
956
|
+
*/
|
|
957
|
+
success?: boolean;
|
|
958
|
+
}
|
|
2206
959
|
|
|
960
|
+
export namespace ProfileListResponse {
|
|
961
|
+
/**
|
|
962
|
+
* The profiles in the organization.
|
|
963
|
+
*/
|
|
964
|
+
export interface Data {
|
|
2207
965
|
/**
|
|
2208
|
-
*
|
|
966
|
+
* Pagination metadata for list responses
|
|
2209
967
|
*/
|
|
2210
|
-
|
|
968
|
+
pagination?: WebhooksAPI.PaginationMeta;
|
|
2211
969
|
|
|
2212
970
|
/**
|
|
2213
|
-
*
|
|
971
|
+
* The profiles on this page.
|
|
2214
972
|
*/
|
|
2215
|
-
|
|
973
|
+
profiles?: Array<ProfilesAPI.ProfileDetail>;
|
|
2216
974
|
}
|
|
2217
975
|
}
|
|
2218
976
|
|
|
@@ -2229,12 +987,12 @@ export interface ProfileCompleteResponse {
|
|
|
2229
987
|
/**
|
|
2230
988
|
* Error information
|
|
2231
989
|
*/
|
|
2232
|
-
error?:
|
|
990
|
+
error?: WebhooksAPI.ErrorDetail | null;
|
|
2233
991
|
|
|
2234
992
|
/**
|
|
2235
993
|
* Request and response metadata
|
|
2236
994
|
*/
|
|
2237
|
-
meta?:
|
|
995
|
+
meta?: WebhooksAPI.APIMeta;
|
|
2238
996
|
|
|
2239
997
|
/**
|
|
2240
998
|
* Indicates whether the request was successful
|
|
@@ -2259,51 +1017,6 @@ export namespace ProfileCompleteResponse {
|
|
|
2259
1017
|
*/
|
|
2260
1018
|
status?: string;
|
|
2261
1019
|
}
|
|
2262
|
-
|
|
2263
|
-
/**
|
|
2264
|
-
* Error information
|
|
2265
|
-
*/
|
|
2266
|
-
export interface Error {
|
|
2267
|
-
/**
|
|
2268
|
-
* Machine-readable error code (e.g., "RESOURCE_001")
|
|
2269
|
-
*/
|
|
2270
|
-
code?: string;
|
|
2271
|
-
|
|
2272
|
-
/**
|
|
2273
|
-
* Additional validation error details (field-level errors)
|
|
2274
|
-
*/
|
|
2275
|
-
details?: { [key: string]: Array<string> } | null;
|
|
2276
|
-
|
|
2277
|
-
/**
|
|
2278
|
-
* URL to documentation about this error
|
|
2279
|
-
*/
|
|
2280
|
-
doc_url?: string | null;
|
|
2281
|
-
|
|
2282
|
-
/**
|
|
2283
|
-
* Human-readable error message
|
|
2284
|
-
*/
|
|
2285
|
-
message?: string;
|
|
2286
|
-
}
|
|
2287
|
-
|
|
2288
|
-
/**
|
|
2289
|
-
* Request and response metadata
|
|
2290
|
-
*/
|
|
2291
|
-
export interface Meta {
|
|
2292
|
-
/**
|
|
2293
|
-
* Unique identifier for this request (for tracing and support)
|
|
2294
|
-
*/
|
|
2295
|
-
request_id?: string;
|
|
2296
|
-
|
|
2297
|
-
/**
|
|
2298
|
-
* Server timestamp when the response was generated
|
|
2299
|
-
*/
|
|
2300
|
-
timestamp?: string;
|
|
2301
|
-
|
|
2302
|
-
/**
|
|
2303
|
-
* API version used for this request
|
|
2304
|
-
*/
|
|
2305
|
-
version?: string;
|
|
2306
|
-
}
|
|
2307
1020
|
}
|
|
2308
1021
|
|
|
2309
1022
|
export interface ProfileCreateParams {
|
|
@@ -2336,7 +1049,7 @@ export interface ProfileCreateParams {
|
|
|
2336
1049
|
* Body param: Billing contact information for a profile. Required when
|
|
2337
1050
|
* billing_model is "profile" or "profile_and_organization".
|
|
2338
1051
|
*/
|
|
2339
|
-
billing_contact?:
|
|
1052
|
+
billing_contact?: BillingContactInfo | null;
|
|
2340
1053
|
|
|
2341
1054
|
/**
|
|
2342
1055
|
* Body param: Billing model: profile, organization, or profile_and_organization
|
|
@@ -2353,294 +1066,91 @@ export interface ProfileCreateParams {
|
|
|
2353
1066
|
/**
|
|
2354
1067
|
* Body param: Brand and KYC data grouped into contact, business, and compliance
|
|
2355
1068
|
* sections
|
|
2356
|
-
*/
|
|
2357
|
-
brand?:
|
|
2358
|
-
|
|
2359
|
-
/**
|
|
2360
|
-
* Body param: Profile description (optional)
|
|
2361
|
-
*/
|
|
2362
|
-
description?: string | null;
|
|
2363
|
-
|
|
2364
|
-
/**
|
|
2365
|
-
* Body param: Profile icon URL (optional)
|
|
2366
|
-
*/
|
|
2367
|
-
icon?: string | null;
|
|
2368
|
-
|
|
2369
|
-
/**
|
|
2370
|
-
* @deprecated Body param
|
|
2371
|
-
*/
|
|
2372
|
-
inherit_contacts?: boolean | null;
|
|
2373
|
-
|
|
2374
|
-
/**
|
|
2375
|
-
* Body param: Whether this profile inherits TCR brand from organization (default:
|
|
2376
|
-
* false)
|
|
2377
|
-
*/
|
|
2378
|
-
inherit_tcr_brand?: boolean | null;
|
|
2379
|
-
|
|
2380
|
-
/**
|
|
2381
|
-
* Body param: Whether this profile inherits TCR campaign from organization
|
|
2382
|
-
* (default: false)
|
|
2383
|
-
*/
|
|
2384
|
-
inherit_tcr_campaign?: boolean | null;
|
|
2385
|
-
|
|
2386
|
-
/**
|
|
2387
|
-
* @deprecated Body param
|
|
2388
|
-
*/
|
|
2389
|
-
inherit_templates?: boolean | null;
|
|
2390
|
-
|
|
2391
|
-
/**
|
|
2392
|
-
* Body param: Profile name (required)
|
|
2393
|
-
*/
|
|
2394
|
-
name?: string;
|
|
2395
|
-
|
|
2396
|
-
/**
|
|
2397
|
-
* Body param: Payment card details for this profile (optional). Accepted when
|
|
2398
|
-
* billing_model is "profile" or "profile_and_organization". Not persisted on our
|
|
2399
|
-
* servers — forwarded to the payment processor.
|
|
2400
|
-
*/
|
|
2401
|
-
payment_details?: ProfileCreateParams.PaymentDetails | null;
|
|
2402
|
-
|
|
2403
|
-
/**
|
|
2404
|
-
* Body param: Sandbox flag - when true, the operation is simulated without side
|
|
2405
|
-
* effects Useful for testing integrations without actual execution
|
|
2406
|
-
*/
|
|
2407
|
-
sandbox?: boolean;
|
|
2408
|
-
|
|
2409
|
-
/**
|
|
2410
|
-
* Body param: Profile short name/abbreviation (optional). Must be 3–11 characters,
|
|
2411
|
-
* contain only letters, numbers, and spaces, and include at least one letter.
|
|
2412
|
-
* Example: "SALES", "Mkt 2", "Support1".
|
|
2413
|
-
*/
|
|
2414
|
-
short_name?: string | null;
|
|
2415
|
-
|
|
2416
|
-
/**
|
|
2417
|
-
* Body param: Direct WhatsApp Business Account credentials for a profile. Use this
|
|
2418
|
-
* when the profile should have its own WhatsApp Business Account instead of
|
|
2419
|
-
* inheriting from the organization. Credentials must be obtained from Meta
|
|
2420
|
-
* Business Manager by creating a System User with whatsapp_business_messaging and
|
|
2421
|
-
* whatsapp_business_management scopes.
|
|
2422
|
-
*/
|
|
2423
|
-
whatsapp_business_account?: ProfileCreateParams.WhatsappBusinessAccount | null;
|
|
2424
|
-
|
|
2425
|
-
/**
|
|
2426
|
-
* Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
2427
|
-
* alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
2428
|
-
* hours per key per customer.
|
|
2429
|
-
*/
|
|
2430
|
-
'Idempotency-Key'?: string;
|
|
2431
|
-
|
|
2432
|
-
/**
|
|
2433
|
-
* Header param: Profile UUID to scope the request to a child profile. Only
|
|
2434
|
-
* organization API keys can use this header. The profile must belong to the
|
|
2435
|
-
* calling organization.
|
|
2436
|
-
*/
|
|
2437
|
-
'x-profile-id'?: string;
|
|
2438
|
-
}
|
|
2439
|
-
|
|
2440
|
-
export namespace ProfileCreateParams {
|
|
2441
|
-
/**
|
|
2442
|
-
* Billing contact information for a profile. Required when billing_model is
|
|
2443
|
-
* "profile" or "profile_and_organization".
|
|
2444
|
-
*/
|
|
2445
|
-
export interface BillingContact {
|
|
2446
|
-
/**
|
|
2447
|
-
* Email address where invoices will be sent (required)
|
|
2448
|
-
*/
|
|
2449
|
-
email: string;
|
|
2450
|
-
|
|
2451
|
-
/**
|
|
2452
|
-
* Full name of the billing contact or company (required)
|
|
2453
|
-
*/
|
|
2454
|
-
name: string;
|
|
2455
|
-
|
|
2456
|
-
/**
|
|
2457
|
-
* Billing address (optional). Free-form text including street, city, state, postal
|
|
2458
|
-
* code, and country.
|
|
2459
|
-
*/
|
|
2460
|
-
address?: string | null;
|
|
2461
|
-
|
|
2462
|
-
/**
|
|
2463
|
-
* Phone number for the billing contact (optional)
|
|
2464
|
-
*/
|
|
2465
|
-
phone?: string | null;
|
|
2466
|
-
}
|
|
2467
|
-
|
|
2468
|
-
/**
|
|
2469
|
-
* Brand and KYC data grouped into contact, business, and compliance sections
|
|
2470
|
-
*/
|
|
2471
|
-
export interface Brand {
|
|
2472
|
-
/**
|
|
2473
|
-
* Compliance and TCR information for brand registration
|
|
2474
|
-
*/
|
|
2475
|
-
compliance: Brand.Compliance;
|
|
2476
|
-
|
|
2477
|
-
/**
|
|
2478
|
-
* Contact information for brand KYC
|
|
2479
|
-
*/
|
|
2480
|
-
contact: Brand.Contact;
|
|
2481
|
-
|
|
2482
|
-
/**
|
|
2483
|
-
* Business details and address for brand KYC
|
|
2484
|
-
*/
|
|
2485
|
-
business?: Brand.Business | null;
|
|
2486
|
-
}
|
|
2487
|
-
|
|
2488
|
-
export namespace Brand {
|
|
2489
|
-
/**
|
|
2490
|
-
* Compliance and TCR information for brand registration
|
|
2491
|
-
*/
|
|
2492
|
-
export interface Compliance {
|
|
2493
|
-
brandRelationship: ProfilesAPI.TcrBrandRelationship;
|
|
2494
|
-
|
|
2495
|
-
vertical: ProfilesAPI.TcrVertical;
|
|
2496
|
-
|
|
2497
|
-
/**
|
|
2498
|
-
* List of destination countries for messaging
|
|
2499
|
-
*/
|
|
2500
|
-
destinationCountries?: Array<ProfilesAPI.DestinationCountry> | null;
|
|
2501
|
-
|
|
2502
|
-
/**
|
|
2503
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
2504
|
-
*/
|
|
2505
|
-
isTcrApplication?: boolean | null;
|
|
2506
|
-
|
|
2507
|
-
/**
|
|
2508
|
-
* Additional notes about the business or use case
|
|
2509
|
-
*/
|
|
2510
|
-
notes?: string | null;
|
|
2511
|
-
|
|
2512
|
-
/**
|
|
2513
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
2514
|
-
*/
|
|
2515
|
-
phoneNumberPrefix?: string | null;
|
|
2516
|
-
}
|
|
2517
|
-
|
|
2518
|
-
/**
|
|
2519
|
-
* Contact information for brand KYC
|
|
2520
|
-
*/
|
|
2521
|
-
export interface Contact {
|
|
2522
|
-
/**
|
|
2523
|
-
* Primary contact name (required)
|
|
2524
|
-
*/
|
|
2525
|
-
name: string;
|
|
2526
|
-
|
|
2527
|
-
/**
|
|
2528
|
-
* Business/brand name
|
|
2529
|
-
*/
|
|
2530
|
-
businessName?: string | null;
|
|
2531
|
-
|
|
2532
|
-
/**
|
|
2533
|
-
* Contact email address
|
|
2534
|
-
*/
|
|
2535
|
-
email?: string | null;
|
|
2536
|
-
|
|
2537
|
-
/**
|
|
2538
|
-
* Contact phone number in E.164 format
|
|
2539
|
-
*/
|
|
2540
|
-
phone?: string | null;
|
|
2541
|
-
|
|
2542
|
-
/**
|
|
2543
|
-
* Contact phone country code (e.g., "1" for US)
|
|
2544
|
-
*/
|
|
2545
|
-
phoneCountryCode?: string | null;
|
|
2546
|
-
|
|
2547
|
-
/**
|
|
2548
|
-
* Contact's role in the business
|
|
2549
|
-
*/
|
|
2550
|
-
role?: string | null;
|
|
2551
|
-
}
|
|
2552
|
-
|
|
2553
|
-
/**
|
|
2554
|
-
* Business details and address for brand KYC
|
|
2555
|
-
*/
|
|
2556
|
-
export interface Business {
|
|
2557
|
-
/**
|
|
2558
|
-
* City
|
|
2559
|
-
*/
|
|
2560
|
-
city?: string | null;
|
|
2561
|
-
|
|
2562
|
-
/**
|
|
2563
|
-
* Country code (e.g., US, CA)
|
|
2564
|
-
*/
|
|
2565
|
-
country?: string | null;
|
|
2566
|
-
|
|
2567
|
-
/**
|
|
2568
|
-
* Country where the business is registered
|
|
2569
|
-
*/
|
|
2570
|
-
countryOfRegistration?: string | null;
|
|
1069
|
+
*/
|
|
1070
|
+
brand?: BrandsBrandData | null;
|
|
2571
1071
|
|
|
2572
|
-
|
|
2573
|
-
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
| 'SOLE_PROPRIETOR'
|
|
2577
|
-
| 'GOVERNMENT'
|
|
2578
|
-
| null;
|
|
1072
|
+
/**
|
|
1073
|
+
* Body param: Profile description (optional)
|
|
1074
|
+
*/
|
|
1075
|
+
description?: string | null;
|
|
2579
1076
|
|
|
2580
|
-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
1077
|
+
/**
|
|
1078
|
+
* Body param: Profile icon URL (optional)
|
|
1079
|
+
*/
|
|
1080
|
+
icon?: string | null;
|
|
2584
1081
|
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
1082
|
+
/**
|
|
1083
|
+
* @deprecated Body param
|
|
1084
|
+
*/
|
|
1085
|
+
inherit_contacts?: boolean | null;
|
|
2589
1086
|
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
1087
|
+
/**
|
|
1088
|
+
* Body param: Whether this profile inherits TCR brand from organization (default:
|
|
1089
|
+
* false)
|
|
1090
|
+
*/
|
|
1091
|
+
inherit_tcr_brand?: boolean | null;
|
|
2594
1092
|
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
1093
|
+
/**
|
|
1094
|
+
* Body param: Whether this profile inherits TCR campaign from organization
|
|
1095
|
+
* (default: false)
|
|
1096
|
+
*/
|
|
1097
|
+
inherit_tcr_campaign?: boolean | null;
|
|
2599
1098
|
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
1099
|
+
/**
|
|
1100
|
+
* @deprecated Body param
|
|
1101
|
+
*/
|
|
1102
|
+
inherit_templates?: boolean | null;
|
|
2604
1103
|
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
1104
|
+
/**
|
|
1105
|
+
* Body param: Profile name (required)
|
|
1106
|
+
*/
|
|
1107
|
+
name?: string;
|
|
2609
1108
|
|
|
2610
|
-
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2615
|
-
|
|
1109
|
+
/**
|
|
1110
|
+
* Body param: Payment card details for this profile (optional). Accepted when
|
|
1111
|
+
* billing_model is "profile" or "profile_and_organization". Not persisted on our
|
|
1112
|
+
* servers — forwarded to the payment processor.
|
|
1113
|
+
*/
|
|
1114
|
+
payment_details?: PaymentDetails | null;
|
|
1115
|
+
|
|
1116
|
+
/**
|
|
1117
|
+
* Body param: Sandbox flag - when true, the operation is simulated without side
|
|
1118
|
+
* effects Useful for testing integrations without actual execution
|
|
1119
|
+
*/
|
|
1120
|
+
sandbox?: boolean;
|
|
2616
1121
|
|
|
2617
1122
|
/**
|
|
2618
|
-
*
|
|
2619
|
-
*
|
|
2620
|
-
*
|
|
1123
|
+
* Body param: Profile short name/abbreviation (optional). Must be 3–11 characters,
|
|
1124
|
+
* contain only letters, numbers, and spaces, and include at least one letter.
|
|
1125
|
+
* Example: "SALES", "Mkt 2", "Support1".
|
|
2621
1126
|
*/
|
|
2622
|
-
|
|
2623
|
-
/**
|
|
2624
|
-
* Card number (digits only, 13–19 characters)
|
|
2625
|
-
*/
|
|
2626
|
-
card_number: string;
|
|
1127
|
+
short_name?: string | null;
|
|
2627
1128
|
|
|
2628
|
-
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
|
|
1129
|
+
/**
|
|
1130
|
+
* Body param: Direct WhatsApp Business Account credentials for a profile. Use this
|
|
1131
|
+
* when the profile should have its own WhatsApp Business Account instead of
|
|
1132
|
+
* inheriting from the organization. Credentials must be obtained from Meta
|
|
1133
|
+
* Business Manager by creating a System User with whatsapp_business_messaging and
|
|
1134
|
+
* whatsapp_business_management scopes.
|
|
1135
|
+
*/
|
|
1136
|
+
whatsapp_business_account?: ProfileCreateParams.WhatsappBusinessAccount | null;
|
|
2632
1137
|
|
|
2633
|
-
|
|
2634
|
-
|
|
2635
|
-
|
|
2636
|
-
|
|
1138
|
+
/**
|
|
1139
|
+
* Header param: Unique key to ensure idempotent request processing. Must be 1-255
|
|
1140
|
+
* alphanumeric characters, hyphens, or underscores. Responses are cached for 24
|
|
1141
|
+
* hours per key per customer.
|
|
1142
|
+
*/
|
|
1143
|
+
'Idempotency-Key'?: string;
|
|
2637
1144
|
|
|
2638
|
-
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
|
|
1145
|
+
/**
|
|
1146
|
+
* Header param: Profile UUID to scope the request to a child profile. Only
|
|
1147
|
+
* organization API keys can use this header. The profile must belong to the
|
|
1148
|
+
* calling organization.
|
|
1149
|
+
*/
|
|
1150
|
+
'x-profile-id'?: string;
|
|
1151
|
+
}
|
|
2643
1152
|
|
|
1153
|
+
export namespace ProfileCreateParams {
|
|
2644
1154
|
/**
|
|
2645
1155
|
* Direct WhatsApp Business Account credentials for a profile. Use this when the
|
|
2646
1156
|
* profile should have its own WhatsApp Business Account instead of inheriting from
|
|
@@ -2709,7 +1219,7 @@ export interface ProfileUpdateParams {
|
|
|
2709
1219
|
* Body param: Billing contact information for a profile. Required when
|
|
2710
1220
|
* billing_model is "profile" or "profile_and_organization".
|
|
2711
1221
|
*/
|
|
2712
|
-
billing_contact?:
|
|
1222
|
+
billing_contact?: BillingContactInfo | null;
|
|
2713
1223
|
|
|
2714
1224
|
/**
|
|
2715
1225
|
* Body param: Billing model: profile, organization, or profile_and_organization
|
|
@@ -2727,7 +1237,7 @@ export interface ProfileUpdateParams {
|
|
|
2727
1237
|
* Body param: Brand and KYC data grouped into contact, business, and compliance
|
|
2728
1238
|
* sections
|
|
2729
1239
|
*/
|
|
2730
|
-
brand?:
|
|
1240
|
+
brand?: BrandsBrandData | null;
|
|
2731
1241
|
|
|
2732
1242
|
/**
|
|
2733
1243
|
* Body param: Profile description (optional)
|
|
@@ -2770,7 +1280,7 @@ export interface ProfileUpdateParams {
|
|
|
2770
1280
|
* billing_model is "profile" or "profile_and_organization". Not persisted on our
|
|
2771
1281
|
* servers — forwarded to the payment processor.
|
|
2772
1282
|
*/
|
|
2773
|
-
payment_details?:
|
|
1283
|
+
payment_details?: PaymentDetails | null;
|
|
2774
1284
|
|
|
2775
1285
|
/**
|
|
2776
1286
|
* Body param: Sandbox flag - when true, the operation is simulated without side
|
|
@@ -2838,211 +1348,6 @@ export interface ProfileUpdateParams {
|
|
|
2838
1348
|
'x-profile-id'?: string;
|
|
2839
1349
|
}
|
|
2840
1350
|
|
|
2841
|
-
export namespace ProfileUpdateParams {
|
|
2842
|
-
/**
|
|
2843
|
-
* Billing contact information for a profile. Required when billing_model is
|
|
2844
|
-
* "profile" or "profile_and_organization".
|
|
2845
|
-
*/
|
|
2846
|
-
export interface BillingContact {
|
|
2847
|
-
/**
|
|
2848
|
-
* Email address where invoices will be sent (required)
|
|
2849
|
-
*/
|
|
2850
|
-
email: string;
|
|
2851
|
-
|
|
2852
|
-
/**
|
|
2853
|
-
* Full name of the billing contact or company (required)
|
|
2854
|
-
*/
|
|
2855
|
-
name: string;
|
|
2856
|
-
|
|
2857
|
-
/**
|
|
2858
|
-
* Billing address (optional). Free-form text including street, city, state, postal
|
|
2859
|
-
* code, and country.
|
|
2860
|
-
*/
|
|
2861
|
-
address?: string | null;
|
|
2862
|
-
|
|
2863
|
-
/**
|
|
2864
|
-
* Phone number for the billing contact (optional)
|
|
2865
|
-
*/
|
|
2866
|
-
phone?: string | null;
|
|
2867
|
-
}
|
|
2868
|
-
|
|
2869
|
-
/**
|
|
2870
|
-
* Brand and KYC data grouped into contact, business, and compliance sections
|
|
2871
|
-
*/
|
|
2872
|
-
export interface Brand {
|
|
2873
|
-
/**
|
|
2874
|
-
* Compliance and TCR information for brand registration
|
|
2875
|
-
*/
|
|
2876
|
-
compliance: Brand.Compliance;
|
|
2877
|
-
|
|
2878
|
-
/**
|
|
2879
|
-
* Contact information for brand KYC
|
|
2880
|
-
*/
|
|
2881
|
-
contact: Brand.Contact;
|
|
2882
|
-
|
|
2883
|
-
/**
|
|
2884
|
-
* Business details and address for brand KYC
|
|
2885
|
-
*/
|
|
2886
|
-
business?: Brand.Business | null;
|
|
2887
|
-
}
|
|
2888
|
-
|
|
2889
|
-
export namespace Brand {
|
|
2890
|
-
/**
|
|
2891
|
-
* Compliance and TCR information for brand registration
|
|
2892
|
-
*/
|
|
2893
|
-
export interface Compliance {
|
|
2894
|
-
brandRelationship: ProfilesAPI.TcrBrandRelationship;
|
|
2895
|
-
|
|
2896
|
-
vertical: ProfilesAPI.TcrVertical;
|
|
2897
|
-
|
|
2898
|
-
/**
|
|
2899
|
-
* List of destination countries for messaging
|
|
2900
|
-
*/
|
|
2901
|
-
destinationCountries?: Array<ProfilesAPI.DestinationCountry> | null;
|
|
2902
|
-
|
|
2903
|
-
/**
|
|
2904
|
-
* Whether this is a TCR (Campaign Registry) application
|
|
2905
|
-
*/
|
|
2906
|
-
isTcrApplication?: boolean | null;
|
|
2907
|
-
|
|
2908
|
-
/**
|
|
2909
|
-
* Additional notes about the business or use case
|
|
2910
|
-
*/
|
|
2911
|
-
notes?: string | null;
|
|
2912
|
-
|
|
2913
|
-
/**
|
|
2914
|
-
* Phone number prefix for messaging (e.g., "+1")
|
|
2915
|
-
*/
|
|
2916
|
-
phoneNumberPrefix?: string | null;
|
|
2917
|
-
}
|
|
2918
|
-
|
|
2919
|
-
/**
|
|
2920
|
-
* Contact information for brand KYC
|
|
2921
|
-
*/
|
|
2922
|
-
export interface Contact {
|
|
2923
|
-
/**
|
|
2924
|
-
* Primary contact name (required)
|
|
2925
|
-
*/
|
|
2926
|
-
name: string;
|
|
2927
|
-
|
|
2928
|
-
/**
|
|
2929
|
-
* Business/brand name
|
|
2930
|
-
*/
|
|
2931
|
-
businessName?: string | null;
|
|
2932
|
-
|
|
2933
|
-
/**
|
|
2934
|
-
* Contact email address
|
|
2935
|
-
*/
|
|
2936
|
-
email?: string | null;
|
|
2937
|
-
|
|
2938
|
-
/**
|
|
2939
|
-
* Contact phone number in E.164 format
|
|
2940
|
-
*/
|
|
2941
|
-
phone?: string | null;
|
|
2942
|
-
|
|
2943
|
-
/**
|
|
2944
|
-
* Contact phone country code (e.g., "1" for US)
|
|
2945
|
-
*/
|
|
2946
|
-
phoneCountryCode?: string | null;
|
|
2947
|
-
|
|
2948
|
-
/**
|
|
2949
|
-
* Contact's role in the business
|
|
2950
|
-
*/
|
|
2951
|
-
role?: string | null;
|
|
2952
|
-
}
|
|
2953
|
-
|
|
2954
|
-
/**
|
|
2955
|
-
* Business details and address for brand KYC
|
|
2956
|
-
*/
|
|
2957
|
-
export interface Business {
|
|
2958
|
-
/**
|
|
2959
|
-
* City
|
|
2960
|
-
*/
|
|
2961
|
-
city?: string | null;
|
|
2962
|
-
|
|
2963
|
-
/**
|
|
2964
|
-
* Country code (e.g., US, CA)
|
|
2965
|
-
*/
|
|
2966
|
-
country?: string | null;
|
|
2967
|
-
|
|
2968
|
-
/**
|
|
2969
|
-
* Country where the business is registered
|
|
2970
|
-
*/
|
|
2971
|
-
countryOfRegistration?: string | null;
|
|
2972
|
-
|
|
2973
|
-
entityType?:
|
|
2974
|
-
| 'PRIVATE_PROFIT'
|
|
2975
|
-
| 'PUBLIC_PROFIT'
|
|
2976
|
-
| 'NON_PROFIT'
|
|
2977
|
-
| 'SOLE_PROPRIETOR'
|
|
2978
|
-
| 'GOVERNMENT'
|
|
2979
|
-
| null;
|
|
2980
|
-
|
|
2981
|
-
/**
|
|
2982
|
-
* Legal business name
|
|
2983
|
-
*/
|
|
2984
|
-
legalName?: string | null;
|
|
2985
|
-
|
|
2986
|
-
/**
|
|
2987
|
-
* Postal/ZIP code
|
|
2988
|
-
*/
|
|
2989
|
-
postalCode?: string | null;
|
|
2990
|
-
|
|
2991
|
-
/**
|
|
2992
|
-
* State/province code
|
|
2993
|
-
*/
|
|
2994
|
-
state?: string | null;
|
|
2995
|
-
|
|
2996
|
-
/**
|
|
2997
|
-
* Street address
|
|
2998
|
-
*/
|
|
2999
|
-
street?: string | null;
|
|
3000
|
-
|
|
3001
|
-
/**
|
|
3002
|
-
* Tax ID/EIN number
|
|
3003
|
-
*/
|
|
3004
|
-
taxId?: string | null;
|
|
3005
|
-
|
|
3006
|
-
/**
|
|
3007
|
-
* Type of tax ID (e.g., us_ein, ca_bn)
|
|
3008
|
-
*/
|
|
3009
|
-
taxIdType?: string | null;
|
|
3010
|
-
|
|
3011
|
-
/**
|
|
3012
|
-
* Business website URL
|
|
3013
|
-
*/
|
|
3014
|
-
url?: string | null;
|
|
3015
|
-
}
|
|
3016
|
-
}
|
|
3017
|
-
|
|
3018
|
-
/**
|
|
3019
|
-
* Payment card details for this profile (optional). Accepted when billing_model is
|
|
3020
|
-
* "profile" or "profile_and_organization". Not persisted on our servers —
|
|
3021
|
-
* forwarded to the payment processor.
|
|
3022
|
-
*/
|
|
3023
|
-
export interface PaymentDetails {
|
|
3024
|
-
/**
|
|
3025
|
-
* Card number (digits only, 13–19 characters)
|
|
3026
|
-
*/
|
|
3027
|
-
card_number: string;
|
|
3028
|
-
|
|
3029
|
-
/**
|
|
3030
|
-
* Card security code (3–4 digits)
|
|
3031
|
-
*/
|
|
3032
|
-
cvc: string;
|
|
3033
|
-
|
|
3034
|
-
/**
|
|
3035
|
-
* Card expiry date in MM/YY format (e.g. "09/27")
|
|
3036
|
-
*/
|
|
3037
|
-
expiry: string;
|
|
3038
|
-
|
|
3039
|
-
/**
|
|
3040
|
-
* Billing ZIP / postal code associated with the card
|
|
3041
|
-
*/
|
|
3042
|
-
zip_code: string;
|
|
3043
|
-
}
|
|
3044
|
-
}
|
|
3045
|
-
|
|
3046
1351
|
export interface ProfileListParams {
|
|
3047
1352
|
/**
|
|
3048
1353
|
* Profile UUID to scope the request to a child profile. Only organization API keys
|
|
@@ -3098,12 +1403,17 @@ Profiles.Campaigns = Campaigns;
|
|
|
3098
1403
|
|
|
3099
1404
|
export declare namespace Profiles {
|
|
3100
1405
|
export {
|
|
1406
|
+
type APIResponseOfProfileDetail as APIResponseOfProfileDetail,
|
|
1407
|
+
type BillingContactInfo as BillingContactInfo,
|
|
1408
|
+
type BrandBusinessInfo as BrandBusinessInfo,
|
|
1409
|
+
type BrandComplianceInfo as BrandComplianceInfo,
|
|
1410
|
+
type BrandContactInfo as BrandContactInfo,
|
|
1411
|
+
type BrandsBrandData as BrandsBrandData,
|
|
3101
1412
|
type DestinationCountry as DestinationCountry,
|
|
1413
|
+
type PaymentDetails as PaymentDetails,
|
|
1414
|
+
type ProfileDetail as ProfileDetail,
|
|
3102
1415
|
type TcrBrandRelationship as TcrBrandRelationship,
|
|
3103
1416
|
type TcrVertical as TcrVertical,
|
|
3104
|
-
type ProfileCreateResponse as ProfileCreateResponse,
|
|
3105
|
-
type ProfileRetrieveResponse as ProfileRetrieveResponse,
|
|
3106
|
-
type ProfileUpdateResponse as ProfileUpdateResponse,
|
|
3107
1417
|
type ProfileListResponse as ProfileListResponse,
|
|
3108
1418
|
type ProfileCompleteResponse as ProfileCompleteResponse,
|
|
3109
1419
|
type ProfileCreateParams as ProfileCreateParams,
|
|
@@ -3116,10 +1426,13 @@ export declare namespace Profiles {
|
|
|
3116
1426
|
|
|
3117
1427
|
export {
|
|
3118
1428
|
Campaigns as Campaigns,
|
|
1429
|
+
type APIResponseOfBrandCampaign as APIResponseOfBrandCampaign,
|
|
1430
|
+
type APIResponseOfListOfBrandCampaign as APIResponseOfListOfBrandCampaign,
|
|
1431
|
+
type BrandCampaign as BrandCampaign,
|
|
1432
|
+
type CampaignData as CampaignData,
|
|
1433
|
+
type CampaignUseCase as CampaignUseCase,
|
|
1434
|
+
type CampaignUseCaseData as CampaignUseCaseData,
|
|
3119
1435
|
type MessagingUseCaseUs as MessagingUseCaseUs,
|
|
3120
|
-
type CampaignCreateResponse as CampaignCreateResponse,
|
|
3121
|
-
type CampaignUpdateResponse as CampaignUpdateResponse,
|
|
3122
|
-
type CampaignListResponse as CampaignListResponse,
|
|
3123
1436
|
type CampaignCreateParams as CampaignCreateParams,
|
|
3124
1437
|
type CampaignUpdateParams as CampaignUpdateParams,
|
|
3125
1438
|
type CampaignListParams as CampaignListParams,
|