@heymantle/core-api-client 0.3.1 → 0.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -5129,6 +5129,8 @@ type paths = {
5129
5129
  * @default false
5130
5130
  */
5131
5131
  hasCommission?: boolean;
5132
+ /** @description The management fee percentage for this account owner. Defaults to the user's or organization's management fee percentage if not specified. */
5133
+ managementFeePercentage?: number | null;
5132
5134
  /** @default sales */
5133
5135
  type: components["schemas"]["AccountOwnerType"];
5134
5136
  /** @description The ID of the user to assign as account owner */
@@ -5208,6 +5210,8 @@ type paths = {
5208
5210
  commissionPercentage?: number | null;
5209
5211
  /** @description Whether this account owner has commission enabled */
5210
5212
  hasCommission?: boolean;
5213
+ /** @description The management fee percentage for this account owner */
5214
+ managementFeePercentage?: number | null;
5211
5215
  type?: components["schemas"]["AccountOwnerType"];
5212
5216
  };
5213
5217
  };
@@ -8351,6 +8355,965 @@ type paths = {
8351
8355
  patch?: never;
8352
8356
  trace?: never;
8353
8357
  };
8358
+ "/email/campaigns": {
8359
+ parameters: {
8360
+ query?: never;
8361
+ header?: never;
8362
+ path?: never;
8363
+ cookie?: never;
8364
+ };
8365
+ /**
8366
+ * List email campaigns
8367
+ * @description Get a paginated list of email campaigns with optional filters.
8368
+ */
8369
+ get: {
8370
+ parameters: {
8371
+ query?: {
8372
+ /** @description Filter by app ID */
8373
+ appId?: string;
8374
+ /** @description The cursor to paginate from */
8375
+ cursor?: components["parameters"]["cursor"];
8376
+ /** @description Search campaigns by name */
8377
+ search?: string;
8378
+ /** @description Filter by campaign status */
8379
+ status?: "draft" | "active" | "scheduled" | "archived";
8380
+ /** @description The number of records to retrieve */
8381
+ take?: components["parameters"]["take"];
8382
+ /** @description Filter by campaign type */
8383
+ type?: "manual" | "flow";
8384
+ };
8385
+ header?: never;
8386
+ path?: never;
8387
+ cookie?: never;
8388
+ };
8389
+ requestBody?: never;
8390
+ responses: {
8391
+ /** @description A list of email campaigns */
8392
+ 200: {
8393
+ headers: {
8394
+ [name: string]: unknown;
8395
+ };
8396
+ content: {
8397
+ "application/json": {
8398
+ campaigns: components["schemas"]["EmailCampaign"][];
8399
+ } & components["schemas"]["Pagination"];
8400
+ };
8401
+ };
8402
+ 401: components["responses"]["401"];
8403
+ 403: components["responses"]["403"];
8404
+ };
8405
+ };
8406
+ put?: never;
8407
+ /**
8408
+ * Create email campaign
8409
+ * @description Create a new email campaign in draft status.
8410
+ */
8411
+ post: {
8412
+ parameters: {
8413
+ query?: never;
8414
+ header?: never;
8415
+ path?: never;
8416
+ cookie?: never;
8417
+ };
8418
+ requestBody: {
8419
+ content: {
8420
+ "application/json": {
8421
+ /** @description App ID to associate with */
8422
+ appId?: string;
8423
+ /** @description HTML content of the email */
8424
+ html?: string;
8425
+ /** @description Layout template ID */
8426
+ layoutId?: string;
8427
+ /** @description Campaign name */
8428
+ name: string;
8429
+ /** @description Plain text content of the email */
8430
+ plainText?: string;
8431
+ /** @description Preview text shown in email clients */
8432
+ previewText?: string;
8433
+ /** @description Sender ID to use */
8434
+ senderId?: string;
8435
+ /** @description Email subject line */
8436
+ subject?: string;
8437
+ /**
8438
+ * @description Campaign type
8439
+ * @default manual
8440
+ * @enum {string}
8441
+ */
8442
+ type?: "manual" | "flow";
8443
+ /** @description Unsubscribe group ID */
8444
+ unsubscribeGroupId?: string;
8445
+ };
8446
+ };
8447
+ };
8448
+ responses: {
8449
+ /** @description Campaign created successfully */
8450
+ 201: {
8451
+ headers: {
8452
+ [name: string]: unknown;
8453
+ };
8454
+ content: {
8455
+ "application/json": {
8456
+ campaign?: components["schemas"]["EmailCampaign"];
8457
+ };
8458
+ };
8459
+ };
8460
+ /** @description Validation error */
8461
+ 400: {
8462
+ headers: {
8463
+ [name: string]: unknown;
8464
+ };
8465
+ content?: never;
8466
+ };
8467
+ 401: components["responses"]["401"];
8468
+ 403: components["responses"]["403"];
8469
+ };
8470
+ };
8471
+ delete?: never;
8472
+ options?: never;
8473
+ head?: never;
8474
+ patch?: never;
8475
+ trace?: never;
8476
+ };
8477
+ "/email/campaigns/{id}": {
8478
+ parameters: {
8479
+ query?: never;
8480
+ header?: never;
8481
+ path?: never;
8482
+ cookie?: never;
8483
+ };
8484
+ /**
8485
+ * Get email campaign
8486
+ * @description Get detailed information about an email campaign.
8487
+ */
8488
+ get: {
8489
+ parameters: {
8490
+ query?: never;
8491
+ header?: never;
8492
+ path: {
8493
+ /** @description Campaign ID */
8494
+ id: string;
8495
+ };
8496
+ cookie?: never;
8497
+ };
8498
+ requestBody?: never;
8499
+ responses: {
8500
+ /** @description Campaign details */
8501
+ 200: {
8502
+ headers: {
8503
+ [name: string]: unknown;
8504
+ };
8505
+ content: {
8506
+ "application/json": {
8507
+ campaign?: components["schemas"]["EmailCampaign"];
8508
+ };
8509
+ };
8510
+ };
8511
+ 401: components["responses"]["401"];
8512
+ 403: components["responses"]["403"];
8513
+ /** @description Campaign not found */
8514
+ 404: {
8515
+ headers: {
8516
+ [name: string]: unknown;
8517
+ };
8518
+ content?: never;
8519
+ };
8520
+ };
8521
+ };
8522
+ /**
8523
+ * Update email campaign
8524
+ * @description Update an existing email campaign.
8525
+ */
8526
+ put: {
8527
+ parameters: {
8528
+ query?: never;
8529
+ header?: never;
8530
+ path: {
8531
+ /** @description Campaign ID */
8532
+ id: string;
8533
+ };
8534
+ cookie?: never;
8535
+ };
8536
+ requestBody: {
8537
+ content: {
8538
+ "application/json": {
8539
+ html?: string;
8540
+ layoutId?: string;
8541
+ name?: string;
8542
+ plainText?: string;
8543
+ previewText?: string;
8544
+ senderId?: string;
8545
+ /** @enum {string} */
8546
+ status?: "draft" | "active" | "paused" | "archived";
8547
+ subject?: string;
8548
+ unsubscribeGroupId?: string;
8549
+ };
8550
+ };
8551
+ };
8552
+ responses: {
8553
+ /** @description Campaign updated */
8554
+ 200: {
8555
+ headers: {
8556
+ [name: string]: unknown;
8557
+ };
8558
+ content?: never;
8559
+ };
8560
+ /** @description Validation error */
8561
+ 400: {
8562
+ headers: {
8563
+ [name: string]: unknown;
8564
+ };
8565
+ content?: never;
8566
+ };
8567
+ 401: components["responses"]["401"];
8568
+ 403: components["responses"]["403"];
8569
+ /** @description Campaign not found */
8570
+ 404: {
8571
+ headers: {
8572
+ [name: string]: unknown;
8573
+ };
8574
+ content?: never;
8575
+ };
8576
+ };
8577
+ };
8578
+ post?: never;
8579
+ /**
8580
+ * Delete email campaign
8581
+ * @description Soft delete an email campaign.
8582
+ */
8583
+ delete: {
8584
+ parameters: {
8585
+ query?: never;
8586
+ header?: never;
8587
+ path: {
8588
+ /** @description Campaign ID */
8589
+ id: string;
8590
+ };
8591
+ cookie?: never;
8592
+ };
8593
+ requestBody?: never;
8594
+ responses: {
8595
+ /** @description Campaign deleted */
8596
+ 200: {
8597
+ headers: {
8598
+ [name: string]: unknown;
8599
+ };
8600
+ content?: never;
8601
+ };
8602
+ 401: components["responses"]["401"];
8603
+ 403: components["responses"]["403"];
8604
+ /** @description Campaign not found */
8605
+ 404: {
8606
+ headers: {
8607
+ [name: string]: unknown;
8608
+ };
8609
+ content?: never;
8610
+ };
8611
+ };
8612
+ };
8613
+ options?: never;
8614
+ head?: never;
8615
+ patch?: never;
8616
+ trace?: never;
8617
+ };
8618
+ "/email/campaigns/{id}/cancel": {
8619
+ parameters: {
8620
+ query?: never;
8621
+ header?: never;
8622
+ path?: never;
8623
+ cookie?: never;
8624
+ };
8625
+ get?: never;
8626
+ put?: never;
8627
+ /**
8628
+ * Cancel scheduled send
8629
+ * @description Cancel a scheduled email campaign before it is sent.
8630
+ *
8631
+ * This will:
8632
+ * - Clear the scheduled send time
8633
+ * - Set the campaign status back to "draft"
8634
+ * - Cancel any pending delivery records
8635
+ *
8636
+ * The campaign can be rescheduled later by calling the send endpoint again with a new `scheduledAt` time.
8637
+ *
8638
+ * Returns an error if the campaign is not currently scheduled.
8639
+ */
8640
+ post: {
8641
+ parameters: {
8642
+ query?: never;
8643
+ header?: never;
8644
+ path: {
8645
+ /** @description Campaign ID */
8646
+ id: string;
8647
+ };
8648
+ cookie?: never;
8649
+ };
8650
+ requestBody?: never;
8651
+ responses: {
8652
+ /** @description Scheduled send cancelled */
8653
+ 200: {
8654
+ headers: {
8655
+ [name: string]: unknown;
8656
+ };
8657
+ content: {
8658
+ "application/json": {
8659
+ /** @description Number of delivery records that were cancelled */
8660
+ cancelledDeliveries?: number;
8661
+ emailId?: string;
8662
+ message?: string;
8663
+ };
8664
+ };
8665
+ };
8666
+ /** @description Campaign is not scheduled */
8667
+ 400: {
8668
+ headers: {
8669
+ [name: string]: unknown;
8670
+ };
8671
+ content?: never;
8672
+ };
8673
+ 401: components["responses"]["401"];
8674
+ 403: components["responses"]["403"];
8675
+ /** @description Campaign not found */
8676
+ 404: {
8677
+ headers: {
8678
+ [name: string]: unknown;
8679
+ };
8680
+ content?: never;
8681
+ };
8682
+ };
8683
+ };
8684
+ delete?: never;
8685
+ options?: never;
8686
+ head?: never;
8687
+ patch?: never;
8688
+ trace?: never;
8689
+ };
8690
+ "/email/campaigns/{id}/deliver": {
8691
+ parameters: {
8692
+ query?: never;
8693
+ header?: never;
8694
+ path?: never;
8695
+ cookie?: never;
8696
+ };
8697
+ get?: never;
8698
+ put?: never;
8699
+ /**
8700
+ * Deliver email to single customer
8701
+ * @description Send an email campaign to a single customer. Use this for event-triggered
8702
+ * or one-off emails where you want to target a specific customer.
8703
+ *
8704
+ * Creates a delivery record and tracks opens/clicks like a normal campaign send.
8705
+ *
8706
+ * If the campaign has `allowRepeatDelivery: false`, attempting to deliver
8707
+ * to the same customer twice will return a 409 Conflict error.
8708
+ *
8709
+ * Rate limited to 100 delivers per minute per organization.
8710
+ */
8711
+ post: {
8712
+ parameters: {
8713
+ query?: never;
8714
+ header?: never;
8715
+ path: {
8716
+ /** @description Campaign ID */
8717
+ id: string;
8718
+ };
8719
+ cookie?: never;
8720
+ };
8721
+ requestBody: {
8722
+ content: {
8723
+ "application/json": {
8724
+ /** @description Mantle customer ID to deliver to */
8725
+ customerId: string;
8726
+ /** @description Override recipient email address (for intake forms or custom delivery) */
8727
+ email?: string;
8728
+ /** @description Unique key to prevent duplicate deliveries */
8729
+ idempotencyKey?: string;
8730
+ /** @description Additional context data stored with the delivery */
8731
+ metadata?: Record<string, never>;
8732
+ };
8733
+ };
8734
+ };
8735
+ responses: {
8736
+ /** @description Email queued for delivery */
8737
+ 202: {
8738
+ headers: {
8739
+ [name: string]: unknown;
8740
+ };
8741
+ content: {
8742
+ "application/json": {
8743
+ delivery?: {
8744
+ /** Format: date-time */
8745
+ createdAt?: string;
8746
+ customerId?: string;
8747
+ emailId?: string;
8748
+ id?: string;
8749
+ status?: string;
8750
+ };
8751
+ message?: string;
8752
+ };
8753
+ };
8754
+ };
8755
+ /** @description Validation error */
8756
+ 400: {
8757
+ headers: {
8758
+ [name: string]: unknown;
8759
+ };
8760
+ content?: never;
8761
+ };
8762
+ 401: components["responses"]["401"];
8763
+ 403: components["responses"]["403"];
8764
+ /** @description Campaign not found */
8765
+ 404: {
8766
+ headers: {
8767
+ [name: string]: unknown;
8768
+ };
8769
+ content?: never;
8770
+ };
8771
+ /** @description Duplicate delivery (campaign does not allow repeat delivery) */
8772
+ 409: {
8773
+ headers: {
8774
+ [name: string]: unknown;
8775
+ };
8776
+ content?: never;
8777
+ };
8778
+ /** @description Rate limit exceeded */
8779
+ 429: {
8780
+ headers: {
8781
+ [name: string]: unknown;
8782
+ };
8783
+ content?: never;
8784
+ };
8785
+ };
8786
+ };
8787
+ delete?: never;
8788
+ options?: never;
8789
+ head?: never;
8790
+ patch?: never;
8791
+ trace?: never;
8792
+ };
8793
+ "/email/campaigns/{id}/preview": {
8794
+ parameters: {
8795
+ query?: never;
8796
+ header?: never;
8797
+ path?: never;
8798
+ cookie?: never;
8799
+ };
8800
+ /**
8801
+ * Preview email campaign
8802
+ * @description Get a rendered preview of an email campaign, optionally personalized for a specific customer.
8803
+ */
8804
+ get: {
8805
+ parameters: {
8806
+ query?: {
8807
+ /** @description Customer ID for personalized preview */
8808
+ customerId?: string;
8809
+ };
8810
+ header?: never;
8811
+ path: {
8812
+ /** @description Campaign ID */
8813
+ id: string;
8814
+ };
8815
+ cookie?: never;
8816
+ };
8817
+ requestBody?: never;
8818
+ responses: {
8819
+ /** @description Email preview */
8820
+ 200: {
8821
+ headers: {
8822
+ [name: string]: unknown;
8823
+ };
8824
+ content: {
8825
+ "application/json": {
8826
+ customerId?: string | null;
8827
+ emailId?: string;
8828
+ html?: string;
8829
+ previewText?: string;
8830
+ subject?: string;
8831
+ /** @description Warning message if preview was rendered with issues */
8832
+ warning?: string;
8833
+ };
8834
+ };
8835
+ };
8836
+ 401: components["responses"]["401"];
8837
+ 403: components["responses"]["403"];
8838
+ /** @description Campaign not found */
8839
+ 404: {
8840
+ headers: {
8841
+ [name: string]: unknown;
8842
+ };
8843
+ content?: never;
8844
+ };
8845
+ };
8846
+ };
8847
+ put?: never;
8848
+ post?: never;
8849
+ delete?: never;
8850
+ options?: never;
8851
+ head?: never;
8852
+ patch?: never;
8853
+ trace?: never;
8854
+ };
8855
+ "/email/campaigns/{id}/send": {
8856
+ parameters: {
8857
+ query?: never;
8858
+ header?: never;
8859
+ path?: never;
8860
+ cookie?: never;
8861
+ };
8862
+ get?: never;
8863
+ put?: never;
8864
+ /**
8865
+ * Send or schedule email campaign
8866
+ * @description Send an email campaign immediately or schedule it for later delivery.
8867
+ *
8868
+ * You can specify the audience in two ways:
8869
+ * 1. `audienceIds` - Array of customer segment IDs
8870
+ * 2. `criteria` - Ad-hoc audience conditions
8871
+ *
8872
+ * Optionally provide `scheduledAt` to schedule the campaign for future delivery.
8873
+ *
8874
+ * Rate limited to 10 sends per minute per organization.
8875
+ */
8876
+ post: {
8877
+ parameters: {
8878
+ query?: never;
8879
+ header?: never;
8880
+ path: {
8881
+ /** @description Campaign ID */
8882
+ id: string;
8883
+ };
8884
+ cookie?: never;
8885
+ };
8886
+ requestBody: {
8887
+ content: {
8888
+ "application/json": {
8889
+ /** @description Send to customers across all apps */
8890
+ anyApp?: boolean;
8891
+ /** @description Customer segment IDs to send to */
8892
+ audienceIds?: string[];
8893
+ /** @description Ad-hoc audience conditions */
8894
+ criteria?: {
8895
+ /** @description Array of condition groups (OR of ANDs) */
8896
+ conditions?: {
8897
+ operator?: string;
8898
+ property?: string;
8899
+ value?: Record<string, never>;
8900
+ }[][];
8901
+ contactConditions?: unknown[];
8902
+ filterContacts?: boolean;
8903
+ };
8904
+ /**
8905
+ * Format: date-time
8906
+ * @description ISO date-time to schedule the campaign. If provided, the campaign will be sent at this time instead of immediately.
8907
+ * @example 2024-12-25T09:00:00Z
8908
+ */
8909
+ scheduledAt?: string;
8910
+ /** @description Idempotency key to prevent duplicate sends */
8911
+ triggerIdempotencyKey?: string;
8912
+ };
8913
+ };
8914
+ };
8915
+ responses: {
8916
+ /** @description Email queued or scheduled for delivery */
8917
+ 202: {
8918
+ headers: {
8919
+ [name: string]: unknown;
8920
+ };
8921
+ content: {
8922
+ "application/json": {
8923
+ delivery?: {
8924
+ /** Format: date-time */
8925
+ createdAt?: string;
8926
+ emailId?: string;
8927
+ id?: string;
8928
+ /** Format: date-time */
8929
+ scheduledAt?: string;
8930
+ /** @enum {string} */
8931
+ status?: "pending" | "scheduled";
8932
+ };
8933
+ message?: string;
8934
+ /**
8935
+ * Format: date-time
8936
+ * @description Present when campaign was scheduled
8937
+ */
8938
+ scheduledAt?: string;
8939
+ };
8940
+ };
8941
+ };
8942
+ /** @description Validation error */
8943
+ 400: {
8944
+ headers: {
8945
+ [name: string]: unknown;
8946
+ };
8947
+ content?: never;
8948
+ };
8949
+ 401: components["responses"]["401"];
8950
+ 403: components["responses"]["403"];
8951
+ /** @description Campaign not found */
8952
+ 404: {
8953
+ headers: {
8954
+ [name: string]: unknown;
8955
+ };
8956
+ content?: never;
8957
+ };
8958
+ /** @description Rate limit exceeded */
8959
+ 429: {
8960
+ headers: {
8961
+ [name: string]: unknown;
8962
+ };
8963
+ content?: never;
8964
+ };
8965
+ };
8966
+ };
8967
+ delete?: never;
8968
+ options?: never;
8969
+ head?: never;
8970
+ patch?: never;
8971
+ trace?: never;
8972
+ };
8973
+ "/email/campaigns/{id}/test": {
8974
+ parameters: {
8975
+ query?: never;
8976
+ header?: never;
8977
+ path?: never;
8978
+ cookie?: never;
8979
+ };
8980
+ get?: never;
8981
+ put?: never;
8982
+ /**
8983
+ * Send test email
8984
+ * @description Send a test email to specified email addresses without creating a delivery record.
8985
+ * The subject line will be prefixed with "[TEST]".
8986
+ *
8987
+ * Maximum 10 email addresses per request.
8988
+ */
8989
+ post: {
8990
+ parameters: {
8991
+ query?: never;
8992
+ header?: never;
8993
+ path: {
8994
+ /** @description Campaign ID */
8995
+ id: string;
8996
+ };
8997
+ cookie?: never;
8998
+ };
8999
+ requestBody: {
9000
+ content: {
9001
+ "application/json": {
9002
+ /**
9003
+ * @description Comma-separated email addresses to send test to
9004
+ * @example test@example.com, another@example.com
9005
+ */
9006
+ email: string;
9007
+ /** @description Custom recipient data for personalization in the test email */
9008
+ recipient?: {
9009
+ customFields?: Record<string, never>;
9010
+ email?: string;
9011
+ name?: string;
9012
+ };
9013
+ };
9014
+ };
9015
+ };
9016
+ responses: {
9017
+ /** @description Test email sent */
9018
+ 200: {
9019
+ headers: {
9020
+ [name: string]: unknown;
9021
+ };
9022
+ content: {
9023
+ "application/json": {
9024
+ message?: string;
9025
+ recipients?: string[];
9026
+ success?: boolean;
9027
+ };
9028
+ };
9029
+ };
9030
+ /** @description Validation error */
9031
+ 400: {
9032
+ headers: {
9033
+ [name: string]: unknown;
9034
+ };
9035
+ content?: never;
9036
+ };
9037
+ 401: components["responses"]["401"];
9038
+ 403: components["responses"]["403"];
9039
+ /** @description Campaign not found */
9040
+ 404: {
9041
+ headers: {
9042
+ [name: string]: unknown;
9043
+ };
9044
+ content?: never;
9045
+ };
9046
+ };
9047
+ };
9048
+ delete?: never;
9049
+ options?: never;
9050
+ head?: never;
9051
+ patch?: never;
9052
+ trace?: never;
9053
+ };
9054
+ "/email/deliveries": {
9055
+ parameters: {
9056
+ query?: never;
9057
+ header?: never;
9058
+ path?: never;
9059
+ cookie?: never;
9060
+ };
9061
+ /**
9062
+ * List email deliveries
9063
+ * @description Get email delivery history with stats.
9064
+ */
9065
+ get: {
9066
+ parameters: {
9067
+ query?: {
9068
+ /** @description The cursor to paginate from */
9069
+ cursor?: components["parameters"]["cursor"];
9070
+ /** @description Filter by campaign ID */
9071
+ emailId?: string;
9072
+ /** @description Filter by end date (ISO format) */
9073
+ endDate?: string;
9074
+ /** @description Filter by start date (ISO format) */
9075
+ startDate?: string;
9076
+ /** @description The number of records to retrieve */
9077
+ take?: components["parameters"]["take"];
9078
+ };
9079
+ header?: never;
9080
+ path?: never;
9081
+ cookie?: never;
9082
+ };
9083
+ requestBody?: never;
9084
+ responses: {
9085
+ /** @description List of email deliveries */
9086
+ 200: {
9087
+ headers: {
9088
+ [name: string]: unknown;
9089
+ };
9090
+ content: {
9091
+ "application/json": {
9092
+ deliveries: {
9093
+ audienceSize?: number;
9094
+ /** Format: date-time */
9095
+ createdAt?: string;
9096
+ email?: Record<string, never>;
9097
+ emailId?: string;
9098
+ id?: string;
9099
+ stats?: {
9100
+ clicked?: number;
9101
+ delivered?: number;
9102
+ failed?: number;
9103
+ opened?: number;
9104
+ sent?: number;
9105
+ total?: number;
9106
+ };
9107
+ status?: string;
9108
+ }[];
9109
+ } & components["schemas"]["Pagination"];
9110
+ };
9111
+ };
9112
+ 401: components["responses"]["401"];
9113
+ 403: components["responses"]["403"];
9114
+ };
9115
+ };
9116
+ put?: never;
9117
+ post?: never;
9118
+ delete?: never;
9119
+ options?: never;
9120
+ head?: never;
9121
+ patch?: never;
9122
+ trace?: never;
9123
+ };
9124
+ "/email/deliveries/{id}": {
9125
+ parameters: {
9126
+ query?: never;
9127
+ header?: never;
9128
+ path?: never;
9129
+ cookie?: never;
9130
+ };
9131
+ /**
9132
+ * Get delivery details
9133
+ * @description Get detailed stats and events for a specific email delivery.
9134
+ */
9135
+ get: {
9136
+ parameters: {
9137
+ query?: never;
9138
+ header?: never;
9139
+ path: {
9140
+ /** @description Delivery ID */
9141
+ id: string;
9142
+ };
9143
+ cookie?: never;
9144
+ };
9145
+ requestBody?: never;
9146
+ responses: {
9147
+ /** @description Delivery details */
9148
+ 200: {
9149
+ headers: {
9150
+ [name: string]: unknown;
9151
+ };
9152
+ content: {
9153
+ "application/json": {
9154
+ delivery?: {
9155
+ audienceCriteria?: Record<string, never>;
9156
+ audienceSize?: number;
9157
+ /** Format: date-time */
9158
+ createdAt?: string;
9159
+ email?: Record<string, never>;
9160
+ emailId?: string;
9161
+ error?: string;
9162
+ id?: string;
9163
+ recentDeliveries?: Record<string, never>[];
9164
+ recentEvents?: Record<string, never>[];
9165
+ stats?: {
9166
+ bounced?: number;
9167
+ clicked?: number;
9168
+ complained?: number;
9169
+ delivered?: number;
9170
+ failed?: number;
9171
+ opened?: number;
9172
+ pending?: number;
9173
+ sent?: number;
9174
+ total?: number;
9175
+ unsubscribed?: number;
9176
+ };
9177
+ status?: string;
9178
+ /** Format: date-time */
9179
+ updatedAt?: string;
9180
+ };
9181
+ };
9182
+ };
9183
+ };
9184
+ 401: components["responses"]["401"];
9185
+ 403: components["responses"]["403"];
9186
+ /** @description Delivery not found */
9187
+ 404: {
9188
+ headers: {
9189
+ [name: string]: unknown;
9190
+ };
9191
+ content?: never;
9192
+ };
9193
+ };
9194
+ };
9195
+ put?: never;
9196
+ post?: never;
9197
+ delete?: never;
9198
+ options?: never;
9199
+ head?: never;
9200
+ patch?: never;
9201
+ trace?: never;
9202
+ };
9203
+ "/email/layouts": {
9204
+ parameters: {
9205
+ query?: never;
9206
+ header?: never;
9207
+ path?: never;
9208
+ cookie?: never;
9209
+ };
9210
+ /**
9211
+ * List email layouts
9212
+ * @description Get available email layouts/templates for the organization.
9213
+ */
9214
+ get: {
9215
+ parameters: {
9216
+ query?: {
9217
+ /** @description Filter layouts by app ID */
9218
+ appId?: string;
9219
+ };
9220
+ header?: never;
9221
+ path?: never;
9222
+ cookie?: never;
9223
+ };
9224
+ requestBody?: never;
9225
+ responses: {
9226
+ /** @description List of email layouts */
9227
+ 200: {
9228
+ headers: {
9229
+ [name: string]: unknown;
9230
+ };
9231
+ content: {
9232
+ "application/json": {
9233
+ layouts?: {
9234
+ appId?: string;
9235
+ /** Format: date-time */
9236
+ createdAt?: string;
9237
+ defaultLayout?: boolean;
9238
+ format?: string;
9239
+ id?: string;
9240
+ name?: string;
9241
+ thumbnail?: string;
9242
+ /** Format: date-time */
9243
+ updatedAt?: string;
9244
+ }[];
9245
+ };
9246
+ };
9247
+ };
9248
+ 401: components["responses"]["401"];
9249
+ 403: components["responses"]["403"];
9250
+ };
9251
+ };
9252
+ put?: never;
9253
+ post?: never;
9254
+ delete?: never;
9255
+ options?: never;
9256
+ head?: never;
9257
+ patch?: never;
9258
+ trace?: never;
9259
+ };
9260
+ "/email/senders": {
9261
+ parameters: {
9262
+ query?: never;
9263
+ header?: never;
9264
+ path?: never;
9265
+ cookie?: never;
9266
+ };
9267
+ /**
9268
+ * List email senders
9269
+ * @description Get available email senders for the organization.
9270
+ */
9271
+ get: {
9272
+ parameters: {
9273
+ query?: {
9274
+ /** @description Filter senders by app ID */
9275
+ appId?: string;
9276
+ };
9277
+ header?: never;
9278
+ path?: never;
9279
+ cookie?: never;
9280
+ };
9281
+ requestBody?: never;
9282
+ responses: {
9283
+ /** @description List of email senders */
9284
+ 200: {
9285
+ headers: {
9286
+ [name: string]: unknown;
9287
+ };
9288
+ content: {
9289
+ "application/json": {
9290
+ senders?: {
9291
+ address?: Record<string, never>;
9292
+ appId?: string;
9293
+ /** Format: date-time */
9294
+ createdAt?: string;
9295
+ from?: string;
9296
+ id?: string;
9297
+ name?: string;
9298
+ replyTo?: string;
9299
+ /** Format: date-time */
9300
+ updatedAt?: string;
9301
+ }[];
9302
+ };
9303
+ };
9304
+ };
9305
+ 401: components["responses"]["401"];
9306
+ 403: components["responses"]["403"];
9307
+ };
9308
+ };
9309
+ put?: never;
9310
+ post?: never;
9311
+ delete?: never;
9312
+ options?: never;
9313
+ head?: never;
9314
+ patch?: never;
9315
+ trace?: never;
9316
+ };
8354
9317
  "/email/unsubscribe_groups": {
8355
9318
  parameters: {
8356
9319
  query?: never;
@@ -12170,6 +13133,10 @@ type paths = {
12170
13133
  dealId?: string;
12171
13134
  /** @description Filter by priority (can provide multiple as comma-separated values) */
12172
13135
  priority?: "high" | "medium" | "low";
13136
+ /** @description Field to sort tasks by */
13137
+ sort?: "dueDate" | "createdAt" | "priority";
13138
+ /** @description Sort direction */
13139
+ sortDirection?: "asc" | "desc";
12173
13140
  /** @description Filter by status (can provide multiple as comma-separated values) */
12174
13141
  status?: "new" | "in_progress" | "complete";
12175
13142
  /** @description Number of tasks to return per page */
@@ -14772,6 +15739,8 @@ type components = {
14772
15739
  /** @description Whether this account owner has commission enabled */
14773
15740
  hasCommission?: boolean;
14774
15741
  id?: string;
15742
+ /** @description The management fee percentage for this account owner. When set, the owner earns this percentage of MRR as a management fee when not actively earning commission. */
15743
+ managementFeePercentage?: number | null;
14775
15744
  type?: components["schemas"]["AccountOwnerType"];
14776
15745
  /** Format: date-time */
14777
15746
  updatedAt?: string;
@@ -16148,6 +17117,98 @@ type components = {
16148
17117
  */
16149
17118
  visibility?: "public" | "internal";
16150
17119
  };
17120
+ EmailCampaign: {
17121
+ appId?: string;
17122
+ clickCount?: number;
17123
+ /** Format: date-time */
17124
+ createdAt?: string;
17125
+ deliveredCount?: number;
17126
+ /** @enum {string} */
17127
+ format?: "html" | "plainText";
17128
+ html?: string;
17129
+ id?: string;
17130
+ layout?: components["schemas"]["EmailLayout"];
17131
+ layoutId?: string;
17132
+ name?: string;
17133
+ openCount?: number;
17134
+ plainText?: string;
17135
+ previewText?: string;
17136
+ sender?: components["schemas"]["EmailSender"];
17137
+ senderId?: string;
17138
+ sentCount?: number;
17139
+ /** @enum {string} */
17140
+ status?: "draft" | "active" | "scheduled" | "archived";
17141
+ subject?: string;
17142
+ thumbnail?: string;
17143
+ /** @enum {string} */
17144
+ type?: "manual" | "flow";
17145
+ unsubscribeGroup?: Record<string, never>;
17146
+ unsubscribeGroupId?: string;
17147
+ /** Format: date-time */
17148
+ updatedAt?: string;
17149
+ };
17150
+ EmailDelivery: {
17151
+ audienceCriteria?: Record<string, never>;
17152
+ audienceSize?: number;
17153
+ /** Format: date-time */
17154
+ createdAt?: string;
17155
+ email?: components["schemas"]["EmailCampaign"];
17156
+ emailId?: string;
17157
+ error?: string;
17158
+ id?: string;
17159
+ recentDeliveries?: Record<string, never>[];
17160
+ recentEvents?: Record<string, never>[];
17161
+ stats?: components["schemas"]["EmailDeliveryStats"];
17162
+ /** @enum {string} */
17163
+ status?: "pending" | "processing" | "completed" | "failed";
17164
+ /** Format: date-time */
17165
+ updatedAt?: string;
17166
+ };
17167
+ EmailDeliveryStats: {
17168
+ bounced?: number;
17169
+ clicked?: number;
17170
+ complained?: number;
17171
+ delivered?: number;
17172
+ failed?: number;
17173
+ opened?: number;
17174
+ pending?: number;
17175
+ sent?: number;
17176
+ total?: number;
17177
+ unsubscribed?: number;
17178
+ };
17179
+ EmailLayout: {
17180
+ appId?: string;
17181
+ /** Format: date-time */
17182
+ createdAt?: string;
17183
+ defaultLayout?: boolean;
17184
+ format?: string;
17185
+ id?: string;
17186
+ name?: string;
17187
+ thumbnail?: string;
17188
+ /** Format: date-time */
17189
+ updatedAt?: string;
17190
+ };
17191
+ EmailPreview: {
17192
+ customerId?: string;
17193
+ emailId?: string;
17194
+ html?: string;
17195
+ previewText?: string;
17196
+ subject?: string;
17197
+ };
17198
+ EmailSender: {
17199
+ address?: Record<string, never>;
17200
+ appId?: string;
17201
+ /** Format: date-time */
17202
+ createdAt?: string;
17203
+ /** Format: email */
17204
+ from?: string;
17205
+ id?: string;
17206
+ name?: string;
17207
+ /** Format: email */
17208
+ replyTo?: string;
17209
+ /** Format: date-time */
17210
+ updatedAt?: string;
17211
+ };
16151
17212
  EmailUnsubscribeGroup: {
16152
17213
  /**
16153
17214
  * Format: date-time
@@ -17524,7 +18585,7 @@ type components = {
17524
18585
  * @example contact_added
17525
18586
  * @enum {string}
17526
18587
  */
17527
- ThreadEventType: "contact_added" | "contact_removed" | "agent_assigned" | "team_assigned" | "customer_assigned" | "app_assigned" | "status_changed" | "priority_changed" | "channel_changed" | "loop_opened" | "loop_closed" | "loop_reopened" | "authenticated" | "unauthenticated" | "message" | "internal_note";
18588
+ ThreadEventType: "contact_added" | "contact_removed" | "agent_assigned" | "team_assigned" | "customer_assigned" | "app_assigned" | "status_changed" | "priority_changed" | "channel_changed" | "loop_opened" | "loop_closed" | "loop_reopened" | "authenticated" | "unauthenticated" | "email_received" | "message" | "internal_note";
17528
18589
  ThreadMessageWebhook: {
17529
18590
  /** @description Type of actor (customer, agent, system). */
17530
18591
  actorType?: string;
@@ -19754,6 +20815,7 @@ declare class CustomersResource extends BaseResource {
19754
20815
  createdAt?: string | undefined;
19755
20816
  hasCommission?: boolean | undefined;
19756
20817
  id?: string | undefined;
20818
+ managementFeePercentage?: number | null | undefined;
19757
20819
  type?: components["schemas"]["AccountOwnerType"] | undefined;
19758
20820
  updatedAt?: string | undefined;
19759
20821
  user?: {
@@ -19934,6 +20996,7 @@ declare class CustomersResource extends BaseResource {
19934
20996
  createdAt?: string | undefined;
19935
20997
  hasCommission?: boolean | undefined;
19936
20998
  id?: string | undefined;
20999
+ managementFeePercentage?: number | null | undefined;
19937
21000
  type?: components["schemas"]["AccountOwnerType"] | undefined;
19938
21001
  updatedAt?: string | undefined;
19939
21002
  user?: {
@@ -20141,6 +21204,7 @@ declare class CustomersResource extends BaseResource {
20141
21204
  createdAt?: string | undefined;
20142
21205
  hasCommission?: boolean | undefined;
20143
21206
  id?: string | undefined;
21207
+ managementFeePercentage?: number | null | undefined;
20144
21208
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20145
21209
  updatedAt?: string | undefined;
20146
21210
  user?: {
@@ -20161,6 +21225,7 @@ declare class CustomersResource extends BaseResource {
20161
21225
  createdAt?: string | undefined;
20162
21226
  hasCommission?: boolean | undefined;
20163
21227
  id?: string | undefined;
21228
+ managementFeePercentage?: number | null | undefined;
20164
21229
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20165
21230
  updatedAt?: string | undefined;
20166
21231
  user?: {
@@ -20341,6 +21406,7 @@ declare class CustomersResource extends BaseResource {
20341
21406
  createdAt?: string | undefined;
20342
21407
  hasCommission?: boolean | undefined;
20343
21408
  id?: string | undefined;
21409
+ managementFeePercentage?: number | null | undefined;
20344
21410
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20345
21411
  updatedAt?: string | undefined;
20346
21412
  user?: {
@@ -20521,6 +21587,7 @@ declare class CustomersResource extends BaseResource {
20521
21587
  createdAt?: string | undefined;
20522
21588
  hasCommission?: boolean | undefined;
20523
21589
  id?: string | undefined;
21590
+ managementFeePercentage?: number | null | undefined;
20524
21591
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20525
21592
  updatedAt?: string | undefined;
20526
21593
  user?: {
@@ -20701,6 +21768,7 @@ declare class CustomersResource extends BaseResource {
20701
21768
  createdAt?: string | undefined;
20702
21769
  hasCommission?: boolean | undefined;
20703
21770
  id?: string | undefined;
21771
+ managementFeePercentage?: number | null | undefined;
20704
21772
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20705
21773
  updatedAt?: string | undefined;
20706
21774
  user?: {
@@ -20953,6 +22021,7 @@ declare class CustomersResource extends BaseResource {
20953
22021
  createdAt?: string | undefined;
20954
22022
  hasCommission?: boolean | undefined;
20955
22023
  id?: string | undefined;
22024
+ managementFeePercentage?: number | null | undefined;
20956
22025
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20957
22026
  updatedAt?: string | undefined;
20958
22027
  user?: {
@@ -20969,6 +22038,7 @@ declare class CustomersResource extends BaseResource {
20969
22038
  createdAt?: string | undefined;
20970
22039
  hasCommission?: boolean | undefined;
20971
22040
  id?: string | undefined;
22041
+ managementFeePercentage?: number | null | undefined;
20972
22042
  type?: components["schemas"]["AccountOwnerType"] | undefined;
20973
22043
  updatedAt?: string | undefined;
20974
22044
  user?: {
@@ -22357,6 +23427,271 @@ declare class DocsResource extends BaseResource {
22357
23427
  }>;
22358
23428
  }
22359
23429
 
23430
+ declare class EmailCampaignsResource extends BaseResource {
23431
+ list(params?: paths['/email/campaigns']['get']['parameters']['query']): Promise<{
23432
+ campaigns: {
23433
+ appId?: string | undefined;
23434
+ clickCount?: number | undefined;
23435
+ createdAt?: string | undefined;
23436
+ deliveredCount?: number | undefined;
23437
+ format?: "html" | "plainText" | undefined;
23438
+ html?: string | undefined;
23439
+ id?: string | undefined;
23440
+ layout?: {
23441
+ appId?: string | undefined;
23442
+ createdAt?: string | undefined;
23443
+ defaultLayout?: boolean | undefined;
23444
+ format?: string | undefined;
23445
+ id?: string | undefined;
23446
+ name?: string | undefined;
23447
+ thumbnail?: string | undefined;
23448
+ updatedAt?: string | undefined;
23449
+ } | undefined;
23450
+ layoutId?: string | undefined;
23451
+ name?: string | undefined;
23452
+ openCount?: number | undefined;
23453
+ plainText?: string | undefined;
23454
+ previewText?: string | undefined;
23455
+ sender?: {
23456
+ address?: {} | undefined;
23457
+ appId?: string | undefined;
23458
+ createdAt?: string | undefined;
23459
+ from?: string | undefined;
23460
+ id?: string | undefined;
23461
+ name?: string | undefined;
23462
+ replyTo?: string | undefined;
23463
+ updatedAt?: string | undefined;
23464
+ } | undefined;
23465
+ senderId?: string | undefined;
23466
+ sentCount?: number | undefined;
23467
+ status?: "draft" | "active" | "scheduled" | "archived" | undefined;
23468
+ subject?: string | undefined;
23469
+ thumbnail?: string | undefined;
23470
+ type?: "manual" | "flow" | undefined;
23471
+ unsubscribeGroup?: {} | undefined;
23472
+ unsubscribeGroupId?: string | undefined;
23473
+ updatedAt?: string | undefined;
23474
+ }[];
23475
+ cursor?: string | undefined;
23476
+ hasNextPage?: boolean | undefined;
23477
+ hasPreviousPage?: boolean | undefined;
23478
+ total?: number | undefined;
23479
+ }>;
23480
+ create(data: NonNullable<paths['/email/campaigns']['post']['requestBody']>['content']['application/json']): Promise<{
23481
+ campaign?: {
23482
+ appId?: string | undefined;
23483
+ clickCount?: number | undefined;
23484
+ createdAt?: string | undefined;
23485
+ deliveredCount?: number | undefined;
23486
+ format?: "html" | "plainText" | undefined;
23487
+ html?: string | undefined;
23488
+ id?: string | undefined;
23489
+ layout?: {
23490
+ appId?: string | undefined;
23491
+ createdAt?: string | undefined;
23492
+ defaultLayout?: boolean | undefined;
23493
+ format?: string | undefined;
23494
+ id?: string | undefined;
23495
+ name?: string | undefined;
23496
+ thumbnail?: string | undefined;
23497
+ updatedAt?: string | undefined;
23498
+ } | undefined;
23499
+ layoutId?: string | undefined;
23500
+ name?: string | undefined;
23501
+ openCount?: number | undefined;
23502
+ plainText?: string | undefined;
23503
+ previewText?: string | undefined;
23504
+ sender?: {
23505
+ address?: {} | undefined;
23506
+ appId?: string | undefined;
23507
+ createdAt?: string | undefined;
23508
+ from?: string | undefined;
23509
+ id?: string | undefined;
23510
+ name?: string | undefined;
23511
+ replyTo?: string | undefined;
23512
+ updatedAt?: string | undefined;
23513
+ } | undefined;
23514
+ senderId?: string | undefined;
23515
+ sentCount?: number | undefined;
23516
+ status?: "draft" | "active" | "scheduled" | "archived" | undefined;
23517
+ subject?: string | undefined;
23518
+ thumbnail?: string | undefined;
23519
+ type?: "manual" | "flow" | undefined;
23520
+ unsubscribeGroup?: {} | undefined;
23521
+ unsubscribeGroupId?: string | undefined;
23522
+ updatedAt?: string | undefined;
23523
+ } | undefined;
23524
+ }>;
23525
+ cancel(campaignId: string): Promise<{
23526
+ cancelledDeliveries?: number | undefined;
23527
+ emailId?: string | undefined;
23528
+ message?: string | undefined;
23529
+ }>;
23530
+ deliver(campaignId: string, data: NonNullable<paths['/email/campaigns/{id}/deliver']['post']['requestBody']>['content']['application/json']): Promise<{
23531
+ delivery?: {
23532
+ createdAt?: string | undefined;
23533
+ customerId?: string | undefined;
23534
+ emailId?: string | undefined;
23535
+ id?: string | undefined;
23536
+ status?: string | undefined;
23537
+ } | undefined;
23538
+ message?: string | undefined;
23539
+ }>;
23540
+ preview(campaignId: string, params?: paths['/email/campaigns/{id}/preview']['get']['parameters']['query']): Promise<{
23541
+ customerId?: string | null | undefined;
23542
+ emailId?: string | undefined;
23543
+ html?: string | undefined;
23544
+ previewText?: string | undefined;
23545
+ subject?: string | undefined;
23546
+ warning?: string | undefined;
23547
+ }>;
23548
+ send(campaignId: string, data: NonNullable<paths['/email/campaigns/{id}/send']['post']['requestBody']>['content']['application/json']): Promise<{
23549
+ delivery?: {
23550
+ createdAt?: string | undefined;
23551
+ emailId?: string | undefined;
23552
+ id?: string | undefined;
23553
+ scheduledAt?: string | undefined;
23554
+ status?: "pending" | "scheduled" | undefined;
23555
+ } | undefined;
23556
+ message?: string | undefined;
23557
+ scheduledAt?: string | undefined;
23558
+ }>;
23559
+ test(campaignId: string, data: NonNullable<paths['/email/campaigns/{id}/test']['post']['requestBody']>['content']['application/json']): Promise<{
23560
+ message?: string | undefined;
23561
+ recipients?: string[] | undefined;
23562
+ success?: boolean | undefined;
23563
+ }>;
23564
+ get(campaignId: string): Promise<{
23565
+ campaign?: {
23566
+ appId?: string | undefined;
23567
+ clickCount?: number | undefined;
23568
+ createdAt?: string | undefined;
23569
+ deliveredCount?: number | undefined;
23570
+ format?: "html" | "plainText" | undefined;
23571
+ html?: string | undefined;
23572
+ id?: string | undefined;
23573
+ layout?: {
23574
+ appId?: string | undefined;
23575
+ createdAt?: string | undefined;
23576
+ defaultLayout?: boolean | undefined;
23577
+ format?: string | undefined;
23578
+ id?: string | undefined;
23579
+ name?: string | undefined;
23580
+ thumbnail?: string | undefined;
23581
+ updatedAt?: string | undefined;
23582
+ } | undefined;
23583
+ layoutId?: string | undefined;
23584
+ name?: string | undefined;
23585
+ openCount?: number | undefined;
23586
+ plainText?: string | undefined;
23587
+ previewText?: string | undefined;
23588
+ sender?: {
23589
+ address?: {} | undefined;
23590
+ appId?: string | undefined;
23591
+ createdAt?: string | undefined;
23592
+ from?: string | undefined;
23593
+ id?: string | undefined;
23594
+ name?: string | undefined;
23595
+ replyTo?: string | undefined;
23596
+ updatedAt?: string | undefined;
23597
+ } | undefined;
23598
+ senderId?: string | undefined;
23599
+ sentCount?: number | undefined;
23600
+ status?: "draft" | "active" | "scheduled" | "archived" | undefined;
23601
+ subject?: string | undefined;
23602
+ thumbnail?: string | undefined;
23603
+ type?: "manual" | "flow" | undefined;
23604
+ unsubscribeGroup?: {} | undefined;
23605
+ unsubscribeGroupId?: string | undefined;
23606
+ updatedAt?: string | undefined;
23607
+ } | undefined;
23608
+ }>;
23609
+ update(campaignId: string, data: NonNullable<paths['/email/campaigns/{id}']['put']['requestBody']>['content']['application/json']): Promise<undefined>;
23610
+ del(campaignId: string): Promise<undefined>;
23611
+ }
23612
+
23613
+ declare class EmailDeliveriesResource extends BaseResource {
23614
+ list(params?: paths['/email/deliveries']['get']['parameters']['query']): Promise<{
23615
+ deliveries: {
23616
+ audienceSize?: number | undefined;
23617
+ createdAt?: string | undefined;
23618
+ email?: {} | undefined;
23619
+ emailId?: string | undefined;
23620
+ id?: string | undefined;
23621
+ stats?: {
23622
+ clicked?: number | undefined;
23623
+ delivered?: number | undefined;
23624
+ failed?: number | undefined;
23625
+ opened?: number | undefined;
23626
+ sent?: number | undefined;
23627
+ total?: number | undefined;
23628
+ } | undefined;
23629
+ status?: string | undefined;
23630
+ }[];
23631
+ cursor?: string | undefined;
23632
+ hasNextPage?: boolean | undefined;
23633
+ hasPreviousPage?: boolean | undefined;
23634
+ total?: number | undefined;
23635
+ }>;
23636
+ get(deliveryId: string): Promise<{
23637
+ delivery?: {
23638
+ audienceCriteria?: {} | undefined;
23639
+ audienceSize?: number | undefined;
23640
+ createdAt?: string | undefined;
23641
+ email?: {} | undefined;
23642
+ emailId?: string | undefined;
23643
+ error?: string | undefined;
23644
+ id?: string | undefined;
23645
+ recentDeliveries?: {}[] | undefined;
23646
+ recentEvents?: {}[] | undefined;
23647
+ stats?: {
23648
+ bounced?: number | undefined;
23649
+ clicked?: number | undefined;
23650
+ complained?: number | undefined;
23651
+ delivered?: number | undefined;
23652
+ failed?: number | undefined;
23653
+ opened?: number | undefined;
23654
+ pending?: number | undefined;
23655
+ sent?: number | undefined;
23656
+ total?: number | undefined;
23657
+ unsubscribed?: number | undefined;
23658
+ } | undefined;
23659
+ status?: string | undefined;
23660
+ updatedAt?: string | undefined;
23661
+ } | undefined;
23662
+ }>;
23663
+ }
23664
+
23665
+ declare class EmailLayoutsResource extends BaseResource {
23666
+ list(params?: paths['/email/layouts']['get']['parameters']['query']): Promise<{
23667
+ layouts?: {
23668
+ appId?: string | undefined;
23669
+ createdAt?: string | undefined;
23670
+ defaultLayout?: boolean | undefined;
23671
+ format?: string | undefined;
23672
+ id?: string | undefined;
23673
+ name?: string | undefined;
23674
+ thumbnail?: string | undefined;
23675
+ updatedAt?: string | undefined;
23676
+ }[] | undefined;
23677
+ }>;
23678
+ }
23679
+
23680
+ declare class EmailSendersResource extends BaseResource {
23681
+ list(params?: paths['/email/senders']['get']['parameters']['query']): Promise<{
23682
+ senders?: {
23683
+ address?: {} | undefined;
23684
+ appId?: string | undefined;
23685
+ createdAt?: string | undefined;
23686
+ from?: string | undefined;
23687
+ id?: string | undefined;
23688
+ name?: string | undefined;
23689
+ replyTo?: string | undefined;
23690
+ updatedAt?: string | undefined;
23691
+ }[] | undefined;
23692
+ }>;
23693
+ }
23694
+
22360
23695
  declare class EmailUnsubscribeGroupsResource extends BaseResource {
22361
23696
  list(): Promise<{
22362
23697
  unsubscribeGroups: {
@@ -22397,6 +23732,7 @@ declare class EntitiesResource extends BaseResource {
22397
23732
  createdAt?: string | undefined;
22398
23733
  hasCommission?: boolean | undefined;
22399
23734
  id?: string | undefined;
23735
+ managementFeePercentage?: number | null | undefined;
22400
23736
  type?: components["schemas"]["AccountOwnerType"] | undefined;
22401
23737
  updatedAt?: string | undefined;
22402
23738
  user?: {
@@ -23035,6 +24371,7 @@ declare class ListsResource extends BaseResource {
23035
24371
  createdAt?: string | undefined;
23036
24372
  hasCommission?: boolean | undefined;
23037
24373
  id?: string | undefined;
24374
+ managementFeePercentage?: number | null | undefined;
23038
24375
  type?: components["schemas"]["AccountOwnerType"] | undefined;
23039
24376
  updatedAt?: string | undefined;
23040
24377
  user?: {
@@ -26170,6 +27507,10 @@ declare class MantleCoreClient {
26170
27507
  readonly dealFlows: DealFlowsResource;
26171
27508
  readonly deals: DealsResource;
26172
27509
  readonly docs: DocsResource;
27510
+ readonly emailCampaigns: EmailCampaignsResource;
27511
+ readonly emailDeliveries: EmailDeliveriesResource;
27512
+ readonly emailLayouts: EmailLayoutsResource;
27513
+ readonly emailSenders: EmailSendersResource;
26173
27514
  readonly emailUnsubscribeGroups: EmailUnsubscribeGroupsResource;
26174
27515
  readonly entities: EntitiesResource;
26175
27516
  readonly flowExtensions: FlowExtensionsResource;
@@ -26283,6 +27624,12 @@ type DocsPage = components['schemas']['DocsPage'];
26283
27624
  type DocsPageResponse = components['schemas']['DocsPageResponse'];
26284
27625
  type DocsPageSummary = components['schemas']['DocsPageSummary'];
26285
27626
  type DocsRepository = components['schemas']['DocsRepository'];
27627
+ type EmailCampaign = components['schemas']['EmailCampaign'];
27628
+ type EmailDelivery = components['schemas']['EmailDelivery'];
27629
+ type EmailDeliveryStats = components['schemas']['EmailDeliveryStats'];
27630
+ type EmailLayout = components['schemas']['EmailLayout'];
27631
+ type EmailPreview = components['schemas']['EmailPreview'];
27632
+ type EmailSender = components['schemas']['EmailSender'];
26286
27633
  type EmailUnsubscribeGroup = components['schemas']['EmailUnsubscribeGroup'];
26287
27634
  type EmailUnsubscribeGroupMember = components['schemas']['EmailUnsubscribeGroupMember'];
26288
27635
  type EventWebhook = components['schemas']['EventWebhook'];
@@ -26489,4 +27836,4 @@ interface RateLimitOptions {
26489
27836
  */
26490
27837
  declare function createRateLimitMiddleware(options?: RateLimitOptions): Middleware;
26491
27838
 
26492
- export { type AccountOwner, type AccountOwnerType, type Action, type ActiveSubscriptionsResponse, type Affiliate, type AffiliateAttributionWebhook, type AffiliateCommission, AffiliateCommissionsResource, type AffiliateMembershipWebhook, type AffiliatePayout, type AffiliatePayoutWebhook, AffiliatePayoutsResource, type AffiliateProgram, type AffiliateProgramGroup, type AffiliateProgramMembership, type AffiliateProgramWebhook, AffiliateProgramsResource, type AffiliateReferral, AffiliateReferralsResource, type AffiliateRules, type AffiliateRulesWebhook, type AffiliateWebhook, AffiliatesResource, type Agent, type AgentRun, AgentsResource, AiAgentRunsResource, type App, type AppChargeWebhook, type AppEvent, type AppInstallation, type AppInstallationWebhook, type AppWebhook, AppsResource, type AuthRefreshOptions, type BaseCustomerWebhook, BaseResource, ChannelsResource, type Charge, ChargesResource, type Checklist, type ChecklistStep, CompaniesResource, type Company, type Contact, type ContactWebhook, ContactsResource, type CursorPagination, CustomDataResource, type CustomField, type CustomFieldDefaultValue, type Customer, type CustomerContact, type CustomerContactWebhook, type CustomerSegment, CustomerSegmentsResource, type CustomerWebhook, type CustomerWithoutSubscriptionWebhook, CustomersResource, type Deal, type DealAcquirer, DealActivitiesResource, type DealActivity, type DealAffiliate, type DealApp, type DealContact, type DealCustomData, type DealCustomer, type DealEvent, type DealFlow, type DealFlowAffiliate, type DealFlowDefaultSource, type DealFlowPartnership, type DealFlowStage, type DealFlowUser, DealFlowsResource, type DealOwner, type DealPartnership, type DealPlan, type DealStage, DealsResource, type DetailedAffiliate, type DetailedFlow, type DocsCollection, type DocsCollectionResponse, type DocsGenerateJobResponse, type DocsGenerateStatusCompleted, type DocsGenerateStatusFailed, type DocsGenerateStatusPending, type DocsGroup, type DocsGroupResponse, type DocsPage, type DocsPageResponse, type DocsPageSummary, type DocsRepository, DocsResource, type EmailUnsubscribeGroup, type EmailUnsubscribeGroupMember, EmailUnsubscribeGroupsResource, EntitiesResource, type EventWebhook, type ExtensionUninstallPayload, type ExtensionWebhook, type Feature, type Flow, type FlowActionRun, FlowExtensionsResource, FlowsResource, type InvalidTokenError, type Invoice, type InvoiceWebhook, JournalEntriesResource, type JournalEntry, type JournalEntryApp, type JournalEntryFile, type List, ListsResource, type LogoChurnResponse, MantleAPIError, MantleAuthenticationError, MantleCoreClient, type MantleCoreClientConfig, MantleNotFoundError, MantlePermissionError, MantleRateLimitError, MantleValidationError, MeResource, type Meeting, type MeetingAttendee, type MeetingAttendeeRef, type MeetingContactRef, type MeetingCustomer, type MeetingDeal, type MeetingPermission, type MeetingTaskSuggestion, type MeetingTranscript, type MeetingUser, type MeetingUtterance, MeetingsResource, MetricsResource, type MissingScopesError, type MrrResponse, type NetInstallsResponse, type NetRevenueResponse, type NetRevenueRetentionResponse, type Organization, OrganizationResource, type Pagination, type PayoutResponse, type Plan, type PlanFeature, type PlanFeatureWebhook, type PlanUsageChargeWebhook, type PlanWebhook, type PredictedLtvResponse, type RateLimitOptions, type RevenueRetentionResponse, type Review, type ReviewWebhook, type StandardMetricResponse, type Subscription, type SubscriptionWebhook, SubscriptionsResource, type SyncedEmail, type SyncedEmailContact, type SyncedEmailCustomer, type SyncedEmailDeal, type SyncedEmailMessage, type SyncedEmailUser, SyncedEmailsResource, type Task, type TaskComment, type TaskTodoItem, TasksResource, type ThreadEventType, type ThreadMessageWebhook, type ThreadWebhook, type Ticket, type TicketAgent, type TicketApp, type TicketAttachment, type TicketChannel, type TicketContact, type TicketCustomer, type TicketEvent, type TicketLoop, type TicketMessage, TicketsResource, type TimeSeriesDataPoint, type TimelineComment, TimelineCommentsResource, type Transaction, type TransactionWebhook, TransactionsResource, type Trigger, type UninstallEventWebhook, type UsageEvent, type UsageEventResponse, UsageEventsResource, type UsageMetric, type UsageMetricResponse, type User, UsersResource, type Webhook, WebhooksResource, type components, createAuthRefreshMiddleware, createRateLimitMiddleware, type paths };
27839
+ export { type AccountOwner, type AccountOwnerType, type Action, type ActiveSubscriptionsResponse, type Affiliate, type AffiliateAttributionWebhook, type AffiliateCommission, AffiliateCommissionsResource, type AffiliateMembershipWebhook, type AffiliatePayout, type AffiliatePayoutWebhook, AffiliatePayoutsResource, type AffiliateProgram, type AffiliateProgramGroup, type AffiliateProgramMembership, type AffiliateProgramWebhook, AffiliateProgramsResource, type AffiliateReferral, AffiliateReferralsResource, type AffiliateRules, type AffiliateRulesWebhook, type AffiliateWebhook, AffiliatesResource, type Agent, type AgentRun, AgentsResource, AiAgentRunsResource, type App, type AppChargeWebhook, type AppEvent, type AppInstallation, type AppInstallationWebhook, type AppWebhook, AppsResource, type AuthRefreshOptions, type BaseCustomerWebhook, BaseResource, ChannelsResource, type Charge, ChargesResource, type Checklist, type ChecklistStep, CompaniesResource, type Company, type Contact, type ContactWebhook, ContactsResource, type CursorPagination, CustomDataResource, type CustomField, type CustomFieldDefaultValue, type Customer, type CustomerContact, type CustomerContactWebhook, type CustomerSegment, CustomerSegmentsResource, type CustomerWebhook, type CustomerWithoutSubscriptionWebhook, CustomersResource, type Deal, type DealAcquirer, DealActivitiesResource, type DealActivity, type DealAffiliate, type DealApp, type DealContact, type DealCustomData, type DealCustomer, type DealEvent, type DealFlow, type DealFlowAffiliate, type DealFlowDefaultSource, type DealFlowPartnership, type DealFlowStage, type DealFlowUser, DealFlowsResource, type DealOwner, type DealPartnership, type DealPlan, type DealStage, DealsResource, type DetailedAffiliate, type DetailedFlow, type DocsCollection, type DocsCollectionResponse, type DocsGenerateJobResponse, type DocsGenerateStatusCompleted, type DocsGenerateStatusFailed, type DocsGenerateStatusPending, type DocsGroup, type DocsGroupResponse, type DocsPage, type DocsPageResponse, type DocsPageSummary, type DocsRepository, DocsResource, type EmailCampaign, type EmailDelivery, type EmailDeliveryStats, type EmailLayout, type EmailPreview, type EmailSender, type EmailUnsubscribeGroup, type EmailUnsubscribeGroupMember, EmailUnsubscribeGroupsResource, EntitiesResource, type EventWebhook, type ExtensionUninstallPayload, type ExtensionWebhook, type Feature, type Flow, type FlowActionRun, FlowExtensionsResource, FlowsResource, type InvalidTokenError, type Invoice, type InvoiceWebhook, JournalEntriesResource, type JournalEntry, type JournalEntryApp, type JournalEntryFile, type List, ListsResource, type LogoChurnResponse, MantleAPIError, MantleAuthenticationError, MantleCoreClient, type MantleCoreClientConfig, MantleNotFoundError, MantlePermissionError, MantleRateLimitError, MantleValidationError, MeResource, type Meeting, type MeetingAttendee, type MeetingAttendeeRef, type MeetingContactRef, type MeetingCustomer, type MeetingDeal, type MeetingPermission, type MeetingTaskSuggestion, type MeetingTranscript, type MeetingUser, type MeetingUtterance, MeetingsResource, MetricsResource, type MissingScopesError, type MrrResponse, type NetInstallsResponse, type NetRevenueResponse, type NetRevenueRetentionResponse, type Organization, OrganizationResource, type Pagination, type PayoutResponse, type Plan, type PlanFeature, type PlanFeatureWebhook, type PlanUsageChargeWebhook, type PlanWebhook, type PredictedLtvResponse, type RateLimitOptions, type RevenueRetentionResponse, type Review, type ReviewWebhook, type StandardMetricResponse, type Subscription, type SubscriptionWebhook, SubscriptionsResource, type SyncedEmail, type SyncedEmailContact, type SyncedEmailCustomer, type SyncedEmailDeal, type SyncedEmailMessage, type SyncedEmailUser, SyncedEmailsResource, type Task, type TaskComment, type TaskTodoItem, TasksResource, type ThreadEventType, type ThreadMessageWebhook, type ThreadWebhook, type Ticket, type TicketAgent, type TicketApp, type TicketAttachment, type TicketChannel, type TicketContact, type TicketCustomer, type TicketEvent, type TicketLoop, type TicketMessage, TicketsResource, type TimeSeriesDataPoint, type TimelineComment, TimelineCommentsResource, type Transaction, type TransactionWebhook, TransactionsResource, type Trigger, type UninstallEventWebhook, type UsageEvent, type UsageEventResponse, UsageEventsResource, type UsageMetric, type UsageMetricResponse, type User, UsersResource, type Webhook, WebhooksResource, type components, createAuthRefreshMiddleware, createRateLimitMiddleware, type paths };