From 89cac39999e5cafb3baa222779589ad41f31dade Mon Sep 17 00:00:00 2001
From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com>
Date: Fri, 27 Feb 2026 16:38:14 +0000
Subject: [PATCH] SDK regeneration
---
.fern/metadata.json | 6 +-
poetry.lock | 6 +-
pyproject.toml | 2 +-
reference.md | 25495 ----------------
src/brevo/__init__.py | 15 +-
src/brevo/balance/__init__.py | 3 -
src/brevo/balance/client.py | 15 +-
src/brevo/balance/raw_client.py | 23 +-
src/brevo/balance/types/__init__.py | 5 -
..._transaction_history_request_sort_field.py | 7 -
src/brevo/companies/__init__.py | 6 +
src/brevo/companies/client.py | 168 +
src/brevo/companies/raw_client.py | 263 +
src/brevo/companies/types/__init__.py | 6 +
...h_crm_attributes_id_request_object_type.py | 5 +
...tributes_id_request_options_labels_item.py | 28 +
src/brevo/contacts/client.py | 120 +-
src/brevo/contacts/raw_client.py | 120 +-
src/brevo/core/__init__.py | 6 +-
src/brevo/core/client_wrapper.py | 4 +-
src/brevo/core/datetime_utils.py | 42 +
src/brevo/custom_objects/client.py | 40 +-
src/brevo/custom_objects/raw_client.py | 40 +-
.../upsertrecords_request_records_item.py | 2 +-
.../types/upsertrecords_response.py | 3 +-
src/brevo/ecommerce/client.py | 32 +-
src/brevo/email_campaigns/client.py | 14 +-
src/brevo/email_campaigns/raw_client.py | 14 +-
src/brevo/program/client.py | 80 +
src/brevo/program/raw_client.py | 200 +
src/brevo/transactional_emails/client.py | 16 +-
src/brevo/transactional_emails/raw_client.py | 20 +-
src/brevo/transactional_sms/client.py | 24 +-
src/brevo/transactional_sms/raw_client.py | 24 +-
src/brevo/transactional_whats_app/client.py | 6 +-
.../transactional_whats_app/raw_client.py | 6 +-
src/brevo/types/__init__.py | 6 +
src/brevo/types/order_products_item.py | 41 +-
.../types/order_products_item_quantity.py | 23 +
.../order_products_item_quantity_float.py | 29 +
src/brevo/webhooks/client.py | 14 +-
src/brevo/webhooks/raw_client.py | 14 +-
.../create_webhook_request_events_item.py | 1 +
.../update_webhook_request_events_item.py | 1 +
src/brevo/whats_app_campaigns/client.py | 126 +-
src/brevo/whats_app_campaigns/raw_client.py | 126 +-
tests/wire/test_balance.py | 4 +-
tests/wire/test_companies.py | 16 +
tests/wire/test_ecommerce.py | 4 +-
tests/wire/test_program.py | 8 +
wiremock/wiremock-mappings.json | 2 +-
51 files changed, 1161 insertions(+), 26120 deletions(-)
delete mode 100644 reference.md
delete mode 100644 src/brevo/balance/types/get_loyalty_balance_programs_pid_transaction_history_request_sort_field.py
create mode 100644 src/brevo/companies/types/patch_crm_attributes_id_request_object_type.py
create mode 100644 src/brevo/companies/types/patch_crm_attributes_id_request_options_labels_item.py
create mode 100644 src/brevo/types/order_products_item_quantity.py
create mode 100644 src/brevo/types/order_products_item_quantity_float.py
diff --git a/.fern/metadata.json b/.fern/metadata.json
index 264a902..a59a92d 100644
--- a/.fern/metadata.json
+++ b/.fern/metadata.json
@@ -1,7 +1,7 @@
{
- "cliVersion": "3.85.3",
+ "cliVersion": "3.91.2",
"generatorName": "fernapi/fern-python-sdk",
- "generatorVersion": "4.59.0",
+ "generatorVersion": "4.61.0",
"generatorConfig": {
"package_name": "brevo",
"client_class_name": "Brevo",
@@ -18,5 +18,5 @@
"skip_validation": true
}
},
- "sdkVersion": "4.0.7"
+ "sdkVersion": "4.0.6"
}
\ No newline at end of file
diff --git a/poetry.lock b/poetry.lock
index 2407e5c..4db468e 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -38,13 +38,13 @@ trio = ["trio (>=0.26.1)"]
[[package]]
name = "certifi"
-version = "2026.1.4"
+version = "2026.2.25"
description = "Python package for providing Mozilla's CA Bundle."
optional = false
python-versions = ">=3.7"
files = [
- {file = "certifi-2026.1.4-py3-none-any.whl", hash = "sha256:9943707519e4add1115f44c2bc244f782c0249876bf51b6599fee1ffbedd685c"},
- {file = "certifi-2026.1.4.tar.gz", hash = "sha256:ac726dd470482006e014ad384921ed6438c457018f4b3d204aea4281258b2120"},
+ {file = "certifi-2026.2.25-py3-none-any.whl", hash = "sha256:027692e4402ad994f1c42e52a4997a9763c646b73e4096e4d5d6db8af1d6f0fa"},
+ {file = "certifi-2026.2.25.tar.gz", hash = "sha256:e887ab5cee78ea814d3472169153c2d12cd43b14bd03329a39a9c6e2e80bfba7"},
]
[[package]]
diff --git a/pyproject.toml b/pyproject.toml
index 820b965..fd716be 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -4,7 +4,7 @@ dynamic = ["version"]
[tool.poetry]
name = "brevo-python"
-version = "4.0.7"
+version = "4.0.6"
description = ""
readme = "README.md"
authors = []
diff --git a/reference.md b/reference.md
deleted file mode 100644
index 8e2b156..0000000
--- a/reference.md
+++ /dev/null
@@ -1,25495 +0,0 @@
-# Reference
-## Account
-client.account.get_account() -> AsyncHttpResponse[GetAccountResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves details of your Brevo account.
-
-**Use this to:**
-- Get account information (email, name, company, address)
-- Check plan details (type, credits, expiration)
-- Get relay information (for transactional emails)
-- Check Marketing Automation status
-- View date/time preferences and account settings
-- Access organization and user identifiers
-
-**Key information returned:**
-- Complete account details (organization ID, user ID, company information)
-- Address and contact information
-- Plan configurations and credit allocations across different verticals
-- Marketing Automation settings and tracker key
-- SMTP relay configuration for transactional emails
-- Date/time preferences and account settings
-- Enterprise features availability status
-
-**Important considerations:**
-- Provides comprehensive account overview for billing and configuration management
-- Essential for understanding current plan limitations and feature availability
-- Marketing Automation key required for advanced automation features
-- Plan verticals show detailed breakdown across Marketing, Chat, and CRM categories
-- Relay configuration crucial for transactional email setup and deliverability
-- Date/time preferences affect campaign scheduling and reporting displays
-- Enterprise status determines access to advanced features and sub-account management
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.account.get_account()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.account.get_account_activity(...) -> AsyncHttpResponse[GetAccountActivityResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves user activity logs from your organization for security monitoring and audit compliance.
-
-Use this to:
-- Monitor user login activities and access patterns
-- Track account modifications and configuration changes
-- Generate security audit reports and compliance documentation
-- Investigate suspicious activities and unauthorized access
-- Monitor team member actions and account usage
-
-Key information returned:
-- Complete user activity details and timestamps
-- User identification (email, IP address, browser)
-- Action types and activity descriptions
-- Security-relevant events and access logs
-- Historical activity data for audit trails
-
-Note: Requires Enterprise plan for access to organization activity logs.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.account.get_account_activity()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]`
-
-Mandatory if endDate is used. Enter start date in UTC date (YYYY-MM-DD)
-format to filter the activity in your account. Maximum time period that
-can be selected is one month. Additionally, you can retrieve activity
-logs from the past 12 months from the date of your search.
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]`
-
-Mandatory if startDate is used. Enter end date in UTC date (YYYY-MM-DD)
-format to filter the activity in your account. Maximum time period that
-can be selected is one month.
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β Enter the user's email address to filter their activity in the account.
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## MasterAccount
-client.master_account.create_a_new_group_of_sub_accounts(...) -> AsyncHttpResponse[PostCorporateGroupResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows to create a group of sub-accounts
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.create_a_new_group_of_sub_accounts(
- group_name="My group",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**group_name:** `str` β The name of the group of sub-accounts
-
-
-
-
-
--
-
-**sub_account_ids:** `typing.Optional[typing.Sequence[int]]` β Pass the list of sub-account Ids to be included in the group
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.delete_sub_account_from_group(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to remove a sub-organization from a group.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.delete_sub_account_from_group(
- group_id="groupId",
- sub_account_ids=[423432, 234323, 87678],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**group_id:** `str` β Group id
-
-
-
-
-
--
-
-**sub_account_ids:** `typing.Sequence[int]` β List of sub-account ids
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_a_group_details(...) -> AsyncHttpResponse[GetCorporateGroupIdResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to retrieve a specific groupβs information such as
-the list of sub-organizations and the user associated with the group.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_a_group_details(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the group of sub-organization
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.update_a_group_of_sub_accounts(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows to update a group of sub-accounts
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.update_a_group_of_sub_accounts(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the group
-
-
-
-
-
--
-
-**group_name:** `typing.Optional[str]` β The name of the group of sub-accounts
-
-
-
-
-
--
-
-**sub_account_ids:** `typing.Optional[typing.Sequence[int]]` β Pass the list of sub-account Ids to be included in the group
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.delete_a_group(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to delete a group of sub-organizations. When a
-group is deleted, the sub-organizations are no longer part of this group.
-The users associated with the group are no longer associated with the group
-once deleted.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.delete_a_group(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the group
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_sub_account_groups() -> AsyncHttpResponse[typing.List[GetSubAccountGroupsResponseItem]]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to list all groups created on your Admin account.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_sub_account_groups()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_corporate_invited_users_list(...) -> AsyncHttpResponse[GetCorporateInvitedUsersListResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to list all Admin users of your Admin account. You
-can filter users by type (active or pending) and paginate results using
-offset and limit.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_corporate_invited_users_list()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**type:** `typing.Optional[str]`
-
-User type (active | pending). This is required if offset is provided for
-limited result.
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]`
-
-Page number for the result set. This is optional, default value will be
-the 1st page.
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]`
-
-Number of users to be displayed on each page. This is optional, the
-default limit is 20, but max allowed limit is 100.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.list_of_all_i_ps() -> AsyncHttpResponse[typing.List[GetCorporateIpResponseItem]]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows you to retrieve the list of active IPs on your Admin
-account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.list_of_all_i_ps()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_the_details_of_requested_master_account() -> AsyncHttpResponse[GetCorporateMasterAccountResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will provide the details of the master account.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_the_details_of_requested_master_account()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.generate_sso_token_to_access_admin_account(...) -> AsyncHttpResponse[GetSsoToken]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint generates an SSO token to authenticate and access the admin
-account using the endpoint
-https://account-app.brevo.com/account/login/corporate/sso/[token], where
-[token] will be replaced by the actual token.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.generate_sso_token_to_access_admin_account(
- email="vipin+ent-user@brevo.com",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β User email of admin account
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_the_list_of_all_the_sub_accounts_of_the_master_account(...) -> AsyncHttpResponse[GetCorporateSubAccountResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will provide the list all the sub-accounts of the master
-account.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_the_list_of_all_the_sub_accounts_of_the_master_account(
- offset=1,
- limit=1,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**offset:** `int` β Index of the first sub-account in the page
-
-
-
-
-
--
-
-**limit:** `int` β Number of sub-accounts to be displayed on each page
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.create_a_new_sub_account_under_a_master_account(...) -> AsyncHttpResponse[PostCorporateSubAccountResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will create a new sub-account under a master account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.create_a_new_sub_account_under_a_master_account(
- company_name="Test Sub-account",
- email="test-sub@example.com",
- group_ids=["5f8f8c3b5f56a02d4433b3a7", "5f8f8c3b5f56a02d4433b3a8"],
- language="fr",
- timezone="Europe/Paris",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**company_name:** `str` β Set the name of the sub-account company
-
-
-
-
-
--
-
-**email:** `str` β Email address for the organization
-
-
-
-
-
--
-
-**group_ids:** `typing.Optional[typing.Sequence[str]]` β Set the group(s) for the sub-account
-
-
-
-
-
--
-
-**language:** `typing.Optional[PostCorporateSubAccountRequestLanguage]` β Set the language of the sub-account
-
-
-
-
-
--
-
-**timezone:** `typing.Optional[str]` β Set the timezone of the sub-account
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.associate_an_ip_to_sub_accounts(...) -> AsyncHttpResponse[typing.Dict[str, typing.Any]]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows to associate an IP to sub-accounts
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.associate_an_ip_to_sub_accounts(
- ids=[234322, 325553, 893432],
- ip="103.11.32.88",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**ids:** `typing.Sequence[int]`
-
-Pass the list of sub-account Ids to be associated with the IP
-address
-
-
-
-
-
--
-
-**ip:** `str` β IP address
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.dissociate_an_ip_to_sub_accounts(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows to dissociate an IP from sub-accounts
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.dissociate_an_ip_to_sub_accounts(
- ids=[234322, 325553, 893432],
- ip="103.11.32.88",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**ids:** `typing.Sequence[int]`
-
-Pass the list of sub-account Ids to be dissociated from the IP
-address
-
-
-
-
-
--
-
-**ip:** `str` β IP address
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.create_an_api_key_for_a_sub_account(...) -> AsyncHttpResponse[PostCorporateSubAccountKeyResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will generate an API v3 key for a sub-account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.create_an_api_key_for_a_sub_account(
- id=3232323,
- name="My Api Key",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization
-
-
-
-
-
--
-
-**name:** `str` β Name of the API key
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.generate_sso_token_to_access_sub_account(...) -> AsyncHttpResponse[GetSsoToken]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint generates an sso token to authenticate and access a
-sub-account of the master using the account endpoint
-https://account-app.brevo.com/account/login/sub-account/sso/[token], where
-[token] will be replaced by the actual token.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.generate_sso_token_to_access_sub_account(
- id=3232323,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β User email of sub-account organization
-
-
-
-
-
--
-
-**target:** `typing.Optional[PostCorporateSubAccountSsoTokenRequestTarget]`
-
-**Set target after login success** * **automation** - Redirect
-to Automation after login * **email_campaign** - Redirect to
-Email Campaign after login * **contacts** - Redirect to Contacts
-after login * **landing_pages** - Redirect to Landing Pages
-after login * **email_transactional** - Redirect to Email
-Transactional after login * **senders** - Redirect to Senders
-after login * **sms_campaign** - Redirect to Sms Campaign after
-login * **sms_transactional** - Redirect to Sms Transactional
-after login
-
-
-
-
-
--
-
-**url:** `typing.Optional[str]`
-
-Set the full target URL after login success. The user will land
-directly on this target URL after login
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_sub_account_details(...) -> AsyncHttpResponse[GetCorporateSubAccountIdResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will provide the details for the specified sub-account company
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_sub_account_details(
- id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.delete_a_sub_account(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.delete_a_sub_account(
- id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization to be deleted
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.enable_disable_sub_account_application_s(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-API endpoint for the Corporate owner to enable/disable applications on the
-sub-account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.enable_disable_sub_account_application_s(
- id=1000000,
- landing_pages=True,
- meetings=True,
- sms_campaigns=False,
- web_push=False,
- whatsapp=True,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization (mandatory)
-
-
-
-
-
--
-
-**automation:** `typing.Optional[bool]`
-
-Set this field to enable or disable Automation on the
-sub-account
-
-
-
-
-
--
-
-**conversations:** `typing.Optional[bool]`
-
-Set this field to enable or disable Conversations on the
-sub-account
-
-
-
-
-
--
-
-**crm:** `typing.Optional[bool]` β Set this field to enable or disable Sales CRM on the sub-account
-
-
-
-
-
--
-
-**email_campaigns:** `typing.Optional[bool]`
-
-Set this field to enable or disable Email Campaigns on the
-sub-account
-
-
-
-
-
--
-
-**facebook_ads:** `typing.Optional[bool]`
-
-Set this field to enable or disable Facebook ads on the
-sub-account
-
-
-
-
-
--
-
-**inbox:** `typing.Optional[bool]`
-
-Set this field to enable or disable Inbox on the sub-account /
-Not applicable on ENTv2
-
-
-
-
-
--
-
-**landing_pages:** `typing.Optional[bool]`
-
-Set this field to enable or disable Landing pages on the
-sub-account
-
-
-
-
-
--
-
-**meetings:** `typing.Optional[bool]` β Set this field to enable or disable Meetings on the sub-account
-
-
-
-
-
--
-
-**sms_campaigns:** `typing.Optional[bool]`
-
-Set this field to enable or disable SMS Marketing on the
-sub-account
-
-
-
-
-
--
-
-**transactional_emails:** `typing.Optional[bool]`
-
-Set this field to enable or disable Transactional Email on the
-sub-account
-
-
-
-
-
--
-
-**transactional_sms:** `typing.Optional[bool]`
-
-Set this field to enable or disable Transactional SMS on the
-sub-account
-
-
-
-
-
--
-
-**web_push:** `typing.Optional[bool]` β Set this field to enable or disable Web Push on the sub-account
-
-
-
-
-
--
-
-**whatsapp:** `typing.Optional[bool]`
-
-Set this field to enable or disable Whatsapp campaigns on the
-sub-account
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.update_sub_account_plan(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will update the sub-account plan. On the Corporate solution
-new version v2, you can set an unlimited number of credits in your
-sub-organization. Please pass the value β-1" to set the consumable in
-unlimited mode.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.master_account import (
- PutCorporateSubAccountIdPlanRequestCredits,
- PutCorporateSubAccountIdPlanRequestFeatures,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.update_sub_account_plan(
- id=1000000,
- credits=PutCorporateSubAccountIdPlanRequestCredits(
- email=5000,
- external_feeds=1,
- sms=2000.0,
- whatsapp=100.0,
- wp_subscribers=-1,
- ),
- features=PutCorporateSubAccountIdPlanRequestFeatures(
- inbox=10,
- landing_page=20,
- sales_users=6,
- users=15,
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `int` β Id of the sub-account organization
-
-
-
-
-
--
-
-**credits:** `typing.Optional[PutCorporateSubAccountIdPlanRequestCredits]` β Credit details to update
-
-
-
-
-
--
-
-**features:** `typing.Optional[PutCorporateSubAccountIdPlanRequestFeatures]` β Features details to update
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.update_sub_accounts_plan(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will update multiple sub-accounts plan. On the Corporate
-solution new version v2, you can set an unlimited number of credits in your
-sub-organization. Please pass the value β-1" to set the consumable in
-unlimited mode.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.master_account import (
- PutCorporateSubAccountsPlanRequestCredits,
- PutCorporateSubAccountsPlanRequestFeatures,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.update_sub_accounts_plan(
- credits=PutCorporateSubAccountsPlanRequestCredits(
- email=5000,
- external_feeds=1,
- sms=2000.0,
- whatsapp=100.0,
- wp_subscribers=-1,
- ),
- features=PutCorporateSubAccountsPlanRequestFeatures(
- landing_page=20,
- sales_users=6,
- users=15,
- ),
- sub_account_ids=[4534345, 987893, 876785],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**credits:** `typing.Optional[PutCorporateSubAccountsPlanRequestCredits]` β Credit details to update
-
-
-
-
-
--
-
-**features:** `typing.Optional[PutCorporateSubAccountsPlanRequestFeatures]` β Features details to update
-
-
-
-
-
--
-
-**sub_account_ids:** `typing.Optional[typing.Sequence[int]]` β List of sub-account ids
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.invite_admin_user(...) -> AsyncHttpResponse[InviteAdminUserResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-`This endpoint allows you to invite a member to manage the Admin account
-Features and their respective permissions are as below: - `my_plan`:
- - "all"
-- `api`:
- - "none"
-- `user_management`:
- - "all"
-- `app_management` | Not available in ENTv2:
- - "all"
-- `sub_organization_groups`
- - "create"
- - "edit_delete"
-- `create_sub_organizations`
- - "all"
-- `manage_sub_organizations`
- - "all"
-- `analytics`
- - "download_data"
- - "create_alerts"
- - "my_looks"
- - "explore_create"
-- `security`
- - "all"
-**Note**: - If `all_features_access: false` then only privileges are
-required otherwise if `true` then it's assumed that all permissions will be
-there for the invited admin user.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.master_account import InviteAdminUserRequestPrivilegesItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.invite_admin_user(
- all_features_access=True,
- email="inviteuser@example.com",
- privileges=[InviteAdminUserRequestPrivilegesItem()],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**all_features_access:** `bool` β All access to the features
-
-
-
-
-
--
-
-**email:** `str` β Email address for the organization
-
-
-
-
-
--
-
-**privileges:** `typing.Sequence[InviteAdminUserRequestPrivilegesItem]`
-
-
-
-
-
--
-
-**group_ids:** `typing.Optional[typing.Sequence[str]]` β Ids of Group
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.resend_cancel_admin_user_invitation(...) -> AsyncHttpResponse[PutCorporateUserInvitationActionEmailResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will allow the user to:
-- Resend an admin user invitation
-- Cancel an admin user invitation
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.resend_cancel_admin_user_invitation(
- action="resend",
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**action:** `PutCorporateUserInvitationActionEmailRequestAction` β Action to be performed (cancel / resend)
-
-
-
-
-
--
-
-**email:** `str` β Email address of the recipient
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.revoke_an_admin_user(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint allows to revoke/remove an invited member of your Admin
-account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.revoke_an_admin_user(
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email of the invited user
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.get_corporate_user_permission(...) -> AsyncHttpResponse[GetCorporateUserPermissionResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will provide the list of admin user permissions
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.get_corporate_user_permission(
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email of the invited user.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.master_account.change_admin_user_permissions(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will allow you to change the permissions of Admin users of
-your Admin account
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.master_account import (
- PutCorporateUserEmailPermissionsRequestPrivilegesItem,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.master_account.change_admin_user_permissions(
- email="email",
- all_features_access=False,
- privileges=[
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="user_management",
- permissions=["all"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="api",
- permissions=["all"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="my_plan",
- permissions=["none"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="apps_management",
- permissions=["all"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="create_sub_organizations",
- permissions=["all"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="sub_organization_groups",
- permissions=["create", "edit_delete"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="manage_sub_organizations",
- permissions=["all"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="security",
- permissions=["none"],
- ),
- PutCorporateUserEmailPermissionsRequestPrivilegesItem(
- feature="analytics",
- permissions=[
- "create_alerts",
- "download_data",
- "my_looks",
- "explore_create",
- ],
- ),
- ],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email address of Admin user
-
-
-
-
-
--
-
-**all_features_access:** `bool` β All access to the features
-
-
-
-
-
--
-
-**privileges:** `typing.Sequence[PutCorporateUserEmailPermissionsRequestPrivilegesItem]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## User
-client.user.get_invited_users_list() -> AsyncHttpResponse[GetInvitedUsersListResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.get_invited_users_list()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.user.put_revoke_user_permission(...) -> AsyncHttpResponse[PutRevokeUserPermissionResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.put_revoke_user_permission(
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email of the invited user.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.user.inviteuser(...) -> AsyncHttpResponse[InviteuserResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-`Feature` - A Feature represents a specific functionality like Email
-campaign, Deals, Calls, Automations, etc. on Brevo. While inviting a user,
-determine which feature you want to manage access to. You must specify the
-feature accurately to avoid errors. `Permission` - A Permission defines the
-level of access or control a user has over a specific feature. While
-inviting user, decide on the permission level required for the selected
-feature. Make sure the chosen permission is related to the selected feature.
-Features and their respective permissions are as below: - `email_campaigns`:
- - "create_edit_delete"
- - "send_schedule_suspend"
-- `sms_campaigns`:
- - "create_edit_delete"
- - "send_schedule_suspend"
-- `contacts`:
- - "view"
- - "create_edit_delete"
- - "import"
- - "export"
- - "list_and_attributes"
- - "forms"
-- `templates`:
- - "create_edit_delete"
- - "activate_deactivate"
-- `workflows`:
- - "create_edit_delete"
- - "activate_deactivate_pause"
- - "settings"
-- `landing_pages`:
- - "all"
-- `transactional_emails`:
- - "settings"
- - "logs"
-- `smtp_api`:
- - "smtp"
- - "api_keys"
- - "authorized_ips"
-- `user_management`:
- - "all"
-- `sales_platform`:
- - "create_edit_deals"
- - "delete_deals"
- - "manage_others_deals_tasks"
- - "reports"
- - "settings"
-- `phone`:
- - "all"
-- `conversations`:
- - "access"
- - "assign"
- - "configure"
-- `senders_domains_dedicated_ips`:
- - "senders_management"
- - "domains_management"
- - "dedicated_ips_management"
-- `push_notifications`:
- - "view"
- - "create_edit_delete"
- - "send"
- - "settings"
-- `companies`:
- - "manage_owned_companies"
- - "manage_other_companies"
- - "settings"
-**Note**: - If `all_features_access: false` then only privileges are
-required otherwise if `true` then it's assumed that all permissions will be
-there for the invited user. - The availability of feature and its permission
-depends on your current plan. Please select the features and permissions
-accordingly.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, InviteuserPrivilegesItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.inviteuser(
- all_features_access=True,
- email="inviteuser@example.com",
- privileges=[InviteuserPrivilegesItem()],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**all_features_access:** `bool` β All access to the features
-
-
-
-
-
--
-
-**email:** `str` β Email address for the organization
-
-
-
-
-
--
-
-**privileges:** `typing.Sequence[InviteuserPrivilegesItem]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.user.putresendcancelinvitation(...) -> AsyncHttpResponse[PutresendcancelinvitationResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.putresendcancelinvitation(
- action="resend",
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**action:** `PutresendcancelinvitationRequestAction` β action
-
-
-
-
-
--
-
-**email:** `str` β Email of the invited user.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.user.edit_user_permission(...) -> AsyncHttpResponse[EditUserPermissionResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-`Feature` - A Feature represents a specific functionality like Email
-campaign, Deals, Calls, Automations, etc. on Brevo. While inviting a user,
-determine which feature you want to manage access to. You must specify the
-feature accurately to avoid errors. `Permission` - A Permission defines the
-level of access or control a user has over a specific feature. While
-inviting user, decide on the permission level required for the selected
-feature. Make sure the chosen permission is related to the selected feature.
-Features and their respective permissions are as below: - `email_campaigns`:
- - "create_edit_delete"
- - "send_schedule_suspend"
-- `sms_campaigns`:
- - "create_edit_delete"
- - "send_schedule_suspend"
-- `contacts`:
- - "view"
- - "create_edit_delete"
- - "import"
- - "export"
- - "list_and_attributes"
- - "forms"
-- `templates`:
- - "create_edit_delete"
- - "activate_deactivate"
-- `workflows`:
- - "create_edit_delete"
- - "activate_deactivate_pause"
- - "settings"
-- `landing_pages`:
- - "all"
-- `transactional_emails`:
- - "settings"
- - "logs"
-- `smtp_api`:
- - "smtp"
- - "api_keys"
- - "authorized_ips"
-- `user_management`:
- - "all"
-- `sales_platform`:
- - "create_edit_deals"
- - "delete_deals"
- - "manage_others_deals_tasks"
- - "reports"
- - "settings"
-- `phone`:
- - "all"
-- `conversations`:
- - "access"
- - "assign"
- - "configure"
-- `senders_domains_dedicated_ips`:
- - "senders_management"
- - "domains_management"
- - "dedicated_ips_management"
-- `push_notifications`:
- - "view"
- - "create_edit_delete"
- - "send"
- - "settings"
-- `companies`:
- - "manage_owned_companies"
- - "manage_other_companies"
- - "settings"
-**Note**: - The privileges array remains the same as in the send invitation;
-the user simply needs to provide the permissions that need to be updated. -
-The availability of feature and its permission depends on your current plan.
-Please select the features and permissions accordingly.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, InviteuserPrivilegesItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.edit_user_permission(
- all_features_access=True,
- email="inviteuser@example.com",
- privileges=[InviteuserPrivilegesItem()],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**all_features_access:** `bool` β All access to the features
-
-
-
-
-
--
-
-**email:** `str` β Email address for the organization
-
-
-
-
-
--
-
-**privileges:** `typing.Sequence[InviteuserPrivilegesItem]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.user.get_user_permission(...) -> AsyncHttpResponse[GetUserPermissionResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.user.get_user_permission(
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email of the invited user.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Process
-client.process.get_processes(...) -> AsyncHttpResponse[GetProcessesResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves a list of background processes from your Brevo account with filtering and pagination.
-
-**Use this to:**
-- Monitor background process activity and status
-- Track long-running operations and tasks
-- Find process IDs for detailed status checking
-- Review process history and performance
-- Identify failed or stuck processes for troubleshooting
-
-**Key information returned:**
-- Process details (ID, name, type, status)
-- Process creation and completion timestamps
-- Process progress and completion status
-- Error information for failed processes
-- Process result data and download links
-
-**Important considerations:**
-- Background processes handle long-running operations like imports and exports
-- Process status indicates current state (queued, processing, completed, failed, cancelled)
-- Export processes provide download URLs when completed
-- Failed processes include error messages for troubleshooting
-- Use pagination for accounts with many historical processes
-- Sort options available for creation order (ascending or descending)
-- Different process types handle specific operations (imports, exports, calculations)
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.process.get_processes()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number limitation for the result returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Beginning point in the list to retrieve from.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetProcessesRequestSort]`
-
-Sort the results in the ascending/descending order of record creation.
-Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.process.get_process(...) -> AsyncHttpResponse[GetProcessResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves detailed information about a specific background process.
-
-**Use this to:**
-- Get detailed status of a specific process
-- Monitor process progress and completion
-- Download results from completed export processes
-- Check error details for failed processes
-- Track process execution times
-
-**Key information returned:**
-- Complete process details and status
-- Import/export statistics and results
-- Error information for troubleshooting
-- Download URLs for export processes
-- Process timing and performance data
-
-**Important considerations:**
-- Process ID must exist in your account
-- Completed processes provide detailed statistics and results
-- Export processes include download URLs when successful
-- Failed processes contain error messages for debugging
-- Timing information helps with performance analysis
-- Different process types return different result structures
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.process.get_process(
- process_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**process_id:** `int` β Id of the process
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Senders
-client.senders.get_senders(...) -> AsyncHttpResponse[GetSendersResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves a list of all email senders from your Brevo account with optional filtering.
-
-**Use this to:**
-- Get all available senders for email campaign setup
-- Find sender details including ID, name, and email address
-- Filter senders by IP address for dedicated IP users
-- Filter senders by domain for domain-specific configurations
-- Monitor sender configuration and status
-
-**Key information returned:**
-- Sender details (ID, name, email address)
-- Sender status and verification information
-- Associated IP addresses and domains (for dedicated IP accounts)
-- Sender configuration settings
-
-**Important considerations:**
-- Standard accounts show empty IP arrays, dedicated IP accounts show IP assignments
-- Filtering by IP only available for accounts with dedicated IPs
-- Domain filtering helps organize senders by business units or brands
-- Sender status indicates if sender is active and ready for campaign use
-- Email verification required before sender can be used in campaigns
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.get_senders()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**ip:** `typing.Optional[str]` β Filter your senders for a specific ip. **Available for dedicated IP usage only**
-
-
-
-
-
--
-
-**domain:** `typing.Optional[str]` β Filter your senders for a specific domain
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.create_sender(...) -> AsyncHttpResponse[CreateSenderResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new email sender in your Brevo account.
-
-**Use this to:**
-- Add new senders for email campaigns
-- Configure sender identity (name and email)
-- Associate dedicated IPs with the sender (for dedicated IP accounts)
-- Set up domain-based sender configurations
-
-**Key information returned:**
-- Created sender ID
-- DKIM and SPF configuration status
-- Success confirmation
-
-**Important considerations:**
-- Verification email sent to specified sender address
-- DKIM and SPF configuration affects deliverability
-- Dedicated IP accounts require IP association during creation
-- IP weights must sum to 100 when specified
-- Sender must be verified before use in campaigns
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.create_sender(
- email="support@example.com",
- name="Support Team",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str`
-
-From email to use for the sender. A verification email will be
-sent to this address.
-
-
-
-
-
--
-
-**name:** `str` β From Name to use for the sender
-
-
-
-
-
--
-
-**ips:** `typing.Optional[typing.Sequence[CreateSenderRequestIpsItem]]`
-
-**Mandatory in case of dedicated IP**. IPs to associate to the
-sender. Not required for standard accounts.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.get_ips() -> AsyncHttpResponse[GetIpsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves all dedicated IPs associated with your Brevo account.
-
-Use this to:
-- List all your dedicated IPs
-- Check the status of your dedicated IPs (active/inactive)
-- Find IP addresses and associated domains for configuration purposes
-- Monitor your IP reputation and deliverability
-- Verify available IPs for sender configuration
-
-Key information returned:
-- IP ID and address
-- Associated domain
-- Active status
-- IP configuration details
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.get_ips()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.update_sender(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates an existing email sender's configuration.
-
-Use this to:
-- Modify sender display name or email address
-- Update dedicated IP associations
-- Change sender configuration settings
-- Correct sender information
-
-Key information returned:
-- Success confirmation
-- Updated sender details
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.senders import UpdateSenderRequestIpsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.update_sender(
- sender_id=1000000,
- email="campaigns@enterprise.com",
- ips=[
- UpdateSenderRequestIpsItem(
- domain="enterprise.com",
- ip="192.168.1.100",
- weight=70,
- ),
- UpdateSenderRequestIpsItem(
- domain="mail.enterprise.com",
- ip="192.168.1.101",
- weight=30,
- ),
- ],
- name="Multi-IP Sender",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender_id:** `int` β Id of the sender
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β From Email to update the sender
-
-
-
-
-
--
-
-**ips:** `typing.Optional[typing.Sequence[UpdateSenderRequestIpsItem]]`
-
-**Only in case of dedicated IP**. IPs to associate to the
-sender. If passed, will replace all the existing IPs. Not required for standard accounts.
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β From Name to update the sender
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.delete_sender(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes an email sender from your Brevo account.
-
-Use this to:
-- Remove senders that are no longer needed
-- Clean up sender configurations
-- Remove duplicate or test senders
-
-Key information returned:
-- Success confirmation message
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.delete_sender(
- sender_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender_id:** `int` β Id of the sender
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.get_ips_from_sender(...) -> AsyncHttpResponse[GetIpsFromSenderResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves the dedicated IPs associated with a specific sender.
-
-Use this to:
-- Check IP configuration for a sender
-- Verify dedicated IP associations
-- Get IP details for troubleshooting
-- Monitor sender IP configuration
-
-Key information returned:
-- List of associated dedicated IPs
-- IP addresses and domain configurations
-- IP status and settings
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.get_ips_from_sender(
- sender_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender_id:** `int` β Id of the sender
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.senders.validate_sender_by_otp(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Validates a sender using the OTP (One-Time Password) received via email.
-
-Use this to:
-- Complete sender verification process
-- Activate a newly created sender
-- Verify ownership of the sender email address
-- Enable the sender for use in email campaigns
-
-Key information returned:
-- Success confirmation of sender verification
-- Sender activation status
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.senders.validate_sender_by_otp(
- sender_id=1000000,
- otp=789012,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender_id:** `int` β Id of the sender
-
-
-
-
-
--
-
-**otp:** `int` β 6 digit OTP received on email
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Domains
-client.domains.get_domains() -> AsyncHttpResponse[GetDomainsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves all domains associated with the account.
-
-Use this to:
-- List all domains
-- Verify domain existence
-- Check domain authentication and verification status
-- Monitor domain configuration and provider information
-- Review domain creation history and ownership
-
-Key information returned:
-- Domain details (ID, name, authentication status)
-- Verification and authentication states
-- Associated IP addresses and DNS providers
-- Creator information and creation timestamps
-- Pagination information for large domain lists
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.domains.get_domains()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.domains.create_domain(...) -> AsyncHttpResponse[CreateDomainResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new domain in Brevo.
-
-Use this to:
-- Add new domains for sending emails
-- Set up domain authentication for better deliverability
-- Configure DNS records for email authentication
-- Establish domain-based sender identities
-
-Key information returned:
-- Created domain ID and configuration
-- Required DNS records for authentication
-- Domain provider detection results
-- Setup instructions and next steps
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.domains.create_domain(
- name="mycompany.com",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Domain name to be added
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.domains.get_domain_configuration(...) -> AsyncHttpResponse[GetDomainConfigurationResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves configuration of a specific domain, to know if the domain is valid or not.
-
-Use this to:
-- Check domain configuration
-- Validate a domain configuration
-- Monitor DNS record status
-- Troubleshoot authentication issues
-
-Key information returned:
-- Domain verification and authentication status
-- DNS records configuration and validation status
-- Detailed authentication requirements
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.domains.get_domain_configuration(
- domain_name="domainName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**domain_name:** `str` β Domain name
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.domains.delete_domain(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes a domain from Brevo.
-
-Use this to:
-- Remove existing domains
-- Clean up unused domain configurations
-- Remove test domains
-
-Key information returned:
-- Success confirmation message
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.domains.delete_domain(
- domain_name="domainName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**domain_name:** `str` β Domain name
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.domains.authenticate_domain(...) -> AsyncHttpResponse[AuthenticateDomainResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Authenticates a specific domain.
-
-Use this to:
-- Authenticate a domain
-- Verify DNS record configuration
-- Complete domain setup for sending
-- Enable domain for email authentication
-
-Key information returned:
-- Authentication success confirmation
-- Domain readiness status for email sending
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.domains.authenticate_domain(
- domain_name="domainName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**domain_name:** `str` β Domain name
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Webhooks
-client.webhooks.get_webhooks(...) -> AsyncHttpResponse[GetWebhooksResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves all webhooks from your Brevo account with filtering and sorting options.
-
-Use this to:
-- Monitor webhook configurations and event handling
-- List webhooks by type (transactional, marketing, inbound)
-- Review webhook endpoints and authentication
-- Track webhook creation and modification history
-- Audit webhook event subscriptions
-
-Key information returned:
-- Complete webhook details and configuration
-- Event types and channel subscriptions
-- Authentication and security settings
-- Webhook URLs and custom headers
-- Creation and modification timestamps
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.get_webhooks()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**type:** `typing.Optional[GetWebhooksRequestType]` β Filter on webhook type
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetWebhooksRequestSort]` β Sort the results in the ascending/descending order of webhook creation
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.webhooks.create_webhook(...) -> AsyncHttpResponse[CreateWebhookResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new webhook to receive real-time notifications for specified events.
-
-Use this to:
-- Set up event notifications for transactional or marketing emails
-- Configure webhook endpoints for campaign tracking
-- Enable real-time monitoring of email delivery status
-- Subscribe to contact list changes and updates
-- Implement custom event handling and automation
-
-Key information returned:
-- Created webhook ID and configuration
-- Success confirmation and setup details
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.create_webhook(
- events=["sent"],
- url="http://requestb.in/173lyyx1",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**events:** `typing.Sequence[CreateWebhookRequestEventsItem]`
-
-- Events triggering the webhook. Possible values for
-**Transactional** type webhook: #### `sent` OR `request`,
-`delivered`, `hardBounce`, `softBounce`, `blocked`, `spam`,
-`invalid`, `deferred`, `click`, `opened`, `uniqueOpened` and
-`unsubscribed` - Possible values for **Marketing** type webhook:
-#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
-`unsubscribed`, `listAddition` & `delivered` - Possible values
-for **Inbound** type webhook: #### `inboundEmailProcessed` -
-Possible values for type **Transactional** and channel **SMS**
-####
-`accepted`,`delivered`,`softBounce`,`hardBounce`,`unsubscribe`,`reply`,
-`subscribe`,`sent`,`blacklisted`,`skip` - Possible values for
-type **Marketing** channel **SMS** ####
-`sent`,`delivered`,`softBounce`,`hardBounce`,`unsubscribe`,`reply`,
-`subscribe`,`skip`
-
-
-
-
-
--
-
-**url:** `str` β URL of the webhook
-
-
-
-
-
--
-
-**auth:** `typing.Optional[CreateWebhookRequestAuth]` β Add authentication on webhook url
-
-
-
-
-
--
-
-**batched:** `typing.Optional[bool]` β To send batched webhooks
-
-
-
-
-
--
-
-**channel:** `typing.Optional[CreateWebhookRequestChannel]` β channel of webhook
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Description of the webhook
-
-
-
-
-
--
-
-**domain:** `typing.Optional[str]`
-
-Inbound domain of webhook, required in case of event type
-`inbound`
-
-
-
-
-
--
-
-**headers:** `typing.Optional[typing.Sequence[CreateWebhookRequestHeadersItem]]` β Custom headers to be send with webhooks
-
-
-
-
-
--
-
-**type:** `typing.Optional[CreateWebhookRequestType]` β Type of the webhook
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.webhooks.export_webhooks_history(...) -> AsyncHttpResponse[ExportWebhooksHistoryResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-To have it activated please send us a request and we will activate it for your account.
-
-
-Exports webhook event history to CSV format for analysis and reporting.
-
-Use this to:
-- Generate comprehensive webhook event reports
-- Analyze webhook delivery patterns and success rates
-- Export event data for external analysis tools
-- Create historical reports for compliance and auditing
-- Track webhook performance and reliability metrics
-
-Key information returned:
-- Process ID for tracking export completion
-- CSV file will be delivered to specified webhook URL
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.export_webhooks_history(
- event="invalid_parameter",
- notify_url="https://brevo.com",
- type="transactional",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**event:** `ExportWebhooksHistoryRequestEvent` β Filter the history for a specific event type
-
-
-
-
-
--
-
-**notify_url:** `str` β Webhook URL to receive CSV file link
-
-
-
-
-
--
-
-**type:** `ExportWebhooksHistoryRequestType` β Filter the history based on webhook type
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]`
-
-Number of days in the past including today (positive
-integer). _Not compatible with 'startDate' and 'endDate'_
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β Filter the history for a specific email
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]`
-
-Mandatory if startDate is used. Ending date of the report
-(YYYY-MM-DD). Must be greater than equal to startDate
-
-
-
-
-
--
-
-**message_id:** `typing.Optional[int]`
-
-Filter the history for a specific message id. Applicable
-only for transactional webhooks.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[str]` β Sorting order of records (asc or desc)
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]`
-
-Mandatory if endDate is used. Starting date of the history
-(YYYY-MM-DD). Must be lower than equal to endDate
-
-
-
-
-
--
-
-**webhook_id:** `typing.Optional[int]` β Filter the history for a specific webhook id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.webhooks.get_webhook(...) -> AsyncHttpResponse[GetWebhook]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves detailed information about a specific webhook configuration.
-
-Use this to:
-- Get complete webhook configuration and settings
-- Check webhook event subscriptions and triggers
-- Review authentication and security settings
-- Verify webhook URL and custom headers
-- Access webhook creation and modification history
-
-Key information returned:
-- Complete webhook details and configuration
-- Event types and channel subscriptions
-- Authentication credentials and methods
-- Custom headers and request settings
-- Webhook status and activity information
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.get_webhook(
- webhook_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**webhook_id:** `int` β Id of the webhook
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.webhooks.update_webhook(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates an existing webhook configuration and event subscriptions.
-
-Use this to:
-- Modify webhook event subscriptions and triggers
-- Update webhook URL and endpoint configuration
-- Change authentication settings and credentials
-- Adjust custom headers and request parameters
-- Enable or disable specific webhook events
-
-Key information returned:
-- Success confirmation of webhook updates
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.update_webhook(
- webhook_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**webhook_id:** `int` β Id of the webhook
-
-
-
-
-
--
-
-**auth:** `typing.Optional[UpdateWebhookRequestAuth]` β Add authentication on webhook url
-
-
-
-
-
--
-
-**batched:** `typing.Optional[bool]` β To send batched webhooks
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Description of the webhook
-
-
-
-
-
--
-
-**domain:** `typing.Optional[str]` β Inbound domain of webhook, used in case of event type `inbound`
-
-
-
-
-
--
-
-**events:** `typing.Optional[typing.Sequence[UpdateWebhookRequestEventsItem]]`
-
-- Events triggering the webhook. Possible values for
-**Transactional** type webhook: #### `sent` OR `request`,
-`delivered`, `hardBounce`, `softBounce`, `blocked`, `spam`,
-`invalid`, `deferred`, `click`, `opened`, `uniqueOpened` and
-`unsubscribed` - Possible values for **Marketing** type webhook:
-#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
-`unsubscribed`, `listAddition` & `delivered` - Possible values
-for **Inbound** type webhook: #### `inboundEmailProcessed`
-
-
-
-
-
--
-
-**headers:** `typing.Optional[typing.Sequence[UpdateWebhookRequestHeadersItem]]` β Custom headers to be send with webhooks
-
-
-
-
-
--
-
-**url:** `typing.Optional[str]` β URL of the webhook
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.webhooks.delete_webhook(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Permanently deletes a webhook and stops all event notifications.
-
-Use this to:
-- Remove unused or obsolete webhook configurations
-- Clean up webhook endpoints and subscriptions
-- Stop event notifications to specific URLs
-- Maintain organized webhook management
-
-Key information returned:
-- Success confirmation of webhook deletion
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.webhooks.delete_webhook(
- webhook_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**webhook_id:** `int` β Id of the webhook
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## ExternalFeeds
-client.external_feeds.get_all_external_feeds(...) -> AsyncHttpResponse[GetAllExternalFeedsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves all external feeds from your Brevo account with filtering and pagination.
-
-**Use this to:**
-- Get an overview of all external data feeds
-- Find feeds by name using search functionality
-- Filter feeds by creation date range
-- Browse feeds by authentication type
-- Monitor feed library organization and usage
-
-**Key information returned:**
-- Feed details (UUID, name, URL, authentication type)
-- Feed configuration and settings
-- Creation and modification timestamps
-- Feed status and error information
-- Authentication and header configurations
-
-**Important considerations:**
-- External feeds enable dynamic content in email campaigns
-- Feeds must be accessible from Brevo servers
-- Authentication credentials are securely stored
-- Feed performance affects campaign delivery
-- Use pagination for accounts with many feeds
-- Date range filtering limited to 30 days maximum
-- Search functionality works on feed name matching
-- Internal feeds are system-managed and cannot be modified
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-import datetime
-
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.external_feeds.get_all_external_feeds(
- search="product",
- start_date=datetime.date.fromisoformat(
- "2024-01-01",
- ),
- end_date=datetime.date.fromisoformat(
- "2024-01-31",
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**search:** `typing.Optional[str]` β Can be used to filter records by search keyword on feed name
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[dt.date]`
-
-Mandatory if `endDate` is used. Starting date (YYYY-MM-DD) from which
-you want to fetch the list. Can be maximum 30 days older than current
-date.
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[dt.date]`
-
-Mandatory if `startDate` is used. Ending date (YYYY-MM-DD) till which
-you want to fetch the list. Maximum time period that can be selected is
-one month.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetAllExternalFeedsRequestSort]`
-
-Sort the results in the ascending/descending order of record creation.
-Default order is **descending** if `sort` is not passed.
-
-
-
-
-
--
-
-**auth_type:** `typing.Optional[GetAllExternalFeedsRequestAuthType]` β Filter the records by `authType` of the feed.
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page.
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.external_feeds.create_external_feed(...) -> AsyncHttpResponse[CreateExternalFeedResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new external feed for dynamic content in email campaigns.
-
-**Use this to:**
-- Set up external data sources for dynamic content
-- Configure authentication for protected feeds
-- Enable real-time content updates in campaigns
-- Establish connections to product catalogs, blogs, or APIs
-
-**Key information returned:**
-- Created feed UUID for reference in campaigns
-- Success confirmation
-
-**Important considerations:**
-- Feed URL must be accessible from Brevo infrastructure
-- Authentication credentials are securely encrypted
-- Test feed accessibility before campaign use
-- Consider feed response time for campaign performance
-- Monitor feed reliability and uptime
-- Use caching for frequently accessed feeds
-- Maximum 5 retry attempts allowed for failed requests
-- Custom headers support for API integration requirements
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.external_feeds.create_external_feed(
- name="Internal Blog Feed",
- url="https://blog.example.com/api/posts",
- auth_type="noAuth",
- max_retries=3,
- cache=True,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Name of the feed
-
-
-
-
-
--
-
-**url:** `str` β URL of the external data source
-
-
-
-
-
--
-
-**auth_type:** `typing.Optional[CreateExternalFeedRequestAuthType]` β Authentication type for accessing the feed
-
-
-
-
-
--
-
-**username:** `typing.Optional[str]` β Username for basic authentication (required if authType is 'basic')
-
-
-
-
-
--
-
-**password:** `typing.Optional[str]` β Password for basic authentication (required if authType is 'basic')
-
-
-
-
-
--
-
-**token:** `typing.Optional[str]` β Token for token-based authentication (required if authType is 'token')
-
-
-
-
-
--
-
-**max_retries:** `typing.Optional[int]` β Maximum number of retry attempts for failed requests
-
-
-
-
-
--
-
-**cache:** `typing.Optional[bool]` β Whether to cache the feed response
-
-
-
-
-
--
-
-**headers:** `typing.Optional[typing.Sequence[CreateExternalFeedRequestHeadersItem]]` β Custom HTTP headers for the feed request
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.external_feeds.get_external_feed_by_uuid(...) -> AsyncHttpResponse[GetExternalFeedByUuidResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Retrieves details of a specific external feed by its UUID.
-
-**Use this to:**
-- Get complete configuration of an external feed
-- Check feed authentication settings
-- Review feed personalization options
-- Verify feed URL and parameters
-- Monitor feed modification history
-
-**Key information returned:**
-- Complete feed configuration and settings
-- Authentication credentials and headers
-- Personalization and fallback settings
-- Creation and modification timestamps
-- Cache and retry configurations
-
-**Important considerations:**
-- UUID must exist in your account
-- Provides complete feed information for troubleshooting
-- Essential before making modifications
-- Shows current feed health status
-- Useful for debugging feed issues
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.external_feeds.get_external_feed_by_uuid(
- uuid_="b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**uuid_:** `str` β UUID of the feed to fetch
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.external_feeds.update_external_feed(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates configuration of an existing external feed.
-
-**Use this to:**
-- Update feed URLs when data sources change
-- Modify authentication credentials
-- Change cache and retry settings
-- Update custom headers
-- Rename feeds for better organization
-
-**Key information returned:**
-- Success confirmation message
-
-**Important considerations:**
-- Only provided fields will be updated
-- Feed UUID must exist in your account
-- Authentication changes require verification
-- URL changes should be tested before campaign use
-- Monitor campaigns using this feed after updates
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.external_feeds import UpdateExternalFeedRequestHeadersItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.external_feeds.update_external_feed(
- uuid_="b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6",
- name="Enterprise Product Feed",
- url="https://enterprise-api.company.com/catalog",
- auth_type="token",
- token="enterprise789token123",
- headers=[
- UpdateExternalFeedRequestHeadersItem(
- name="Authorization",
- value="Bearer enterprise789token123",
- ),
- UpdateExternalFeedRequestHeadersItem(
- name="Accept",
- value="application/json",
- ),
- ],
- max_retries=3,
- cache=True,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**uuid_:** `str` β UUID of the feed to update
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the feed
-
-
-
-
-
--
-
-**url:** `typing.Optional[str]` β URL of the external data source
-
-
-
-
-
--
-
-**auth_type:** `typing.Optional[UpdateExternalFeedRequestAuthType]` β Authentication type for accessing the feed
-
-
-
-
-
--
-
-**username:** `typing.Optional[str]` β Username for basic authentication
-
-
-
-
-
--
-
-**password:** `typing.Optional[str]` β Password for basic authentication
-
-
-
-
-
--
-
-**token:** `typing.Optional[str]` β Token for token-based authentication
-
-
-
-
-
--
-
-**headers:** `typing.Optional[typing.Sequence[UpdateExternalFeedRequestHeadersItem]]` β Custom HTTP headers for the feed request
-
-
-
-
-
--
-
-**max_retries:** `typing.Optional[int]` β Maximum number of retry attempts for failed requests
-
-
-
-
-
--
-
-**cache:** `typing.Optional[bool]` β Whether to cache the feed response
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.external_feeds.delete_external_feed(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes an external feed from your Brevo account.
-
-**Use this to:**
-- Remove external feeds that are no longer needed
-- Clean up unused data sources
-- Remove test or outdated feeds
-- Maintain organized feed library
-
-**Key information returned:**
-- Success confirmation message
-
-**Important considerations:**
-- This action is PERMANENT and cannot be undone
-- Feed configuration and history will be lost
-- Check if feed is used in active campaigns before deletion
-- Remove feed references from email templates
-- Consider deactivating instead of deleting if unsure
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.external_feeds.delete_external_feed(
- uuid_="b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**uuid_:** `str` β UUID of the feed to delete
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## CustomObjects
-client.custom_objects.upsertrecords(...) -> AsyncHttpResponse[UpsertrecordsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Custom objects are only available to Enterprise plans.
-
-This feature is in beta. These are subject to change.
-
-
-This API allows bulk upsert of object records in a single request. Each object record may include
- - Attributes
- - Identifiers
- - Associations
-**Response:**
- The API processes the request asynchronously and returns a processId that you can use to track the background process status.
-**API and Schema Limitation:**
- - Size:
- - Max 1000 objects records per request
- - Max request body size: 1 MB
- - Max 500 attributes defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 500 attributes.
- - Worth noting: Nothing happens If an attribute is mentioned in the request, but was not previously defined for the object schema (no error, no attribute creation)
- - Max 10 associations defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 10 associations with other objects. and each object record can be linked to max 10 other records.
-**Errors:**
- - Make sure both object records exist before associating them, else the API will return an error.
- - This route does not create objects. The object where the object records are upserted by this API must be created already else the API will return an error "invalid object type".
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.custom_objects import UpsertrecordsRequestRecordsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.custom_objects.upsertrecords(
- object_type="vehicle",
- records=[UpsertrecordsRequestRecordsItem()],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**object_type:** `str` β object type for the attribute
-
-
-
-
-
--
-
-**records:** `typing.Sequence[UpsertrecordsRequestRecordsItem]` β List of object records to be upsert. Each record can have attributes, identifiers, and associations.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.custom_objects.getrecords(...) -> AsyncHttpResponse[GetrecordsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Custom objects are only available to Enterprise plans.
-
-This feature is in beta. These are subject to change.
-
-
-This API retrieves a list of object records along with their associated records and provides the total count of records for the specified object. **Note**: Contact as object type is not supported in this endpoint.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.custom_objects.getrecords(
- object_type="vehicle",
- limit=1000000,
- page_num=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**object_type:** `str` β object type for the attribute
-
-
-
-
-
--
-
-**limit:** `int` β Number of records returned per page
-
-
-
-
-
--
-
-**page_num:** `int` β Page number for pagination. It's used to fetch the object records on a provided page number. Must be a valid positive integer.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetrecordsRequestSort]` β Sort order, must be 'asc' or 'desc'. Default to 'desc' if not provided.
-
-
-
-
-
--
-
-**association:** `typing.Optional[GetrecordsRequestAssociation]` β Whether to include associations, must be 'true' or 'false'. Default to 'false' if not provided.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.custom_objects.batch_delete_object_records(...) -> AsyncHttpResponse[BatchDeleteObjectRecordsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Use this endpoint to delete multiple object records of the same object-type in one request.
-The request is accepted and processed asynchronously. You can track the status of the deletion process using the returned **processId**.
-**API and Schema Limitations:** - Each request can contain up to **1000** object record identifiers - If more records must be deleted β send multiple batch requests
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.custom_objects import (
- BatchDeleteObjectRecordsRequestIdentifiersExtIds,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.custom_objects.batch_delete_object_records(
- object_type="vehicle",
- identifiers=BatchDeleteObjectRecordsRequestIdentifiersExtIds(
- ext_ids=["ext-001", "ext-002"],
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**object_type:** `str` β Object type for the records to delete
-
-
-
-
-
--
-
-**identifiers:** `typing.Optional[BatchDeleteObjectRecordsRequestIdentifiers]` β One of the below must be provided
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Contacts
-client.contacts.get_contacts(...) -> AsyncHttpResponse[GetContacts]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Accepted Number Formats
-
-91xxxxxxxxxx
-+91xxxxxxxxxx
-0091xxxxxxxxxx
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_contacts()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetContactsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**segment_id:** `typing.Optional[int]` β Id of the segment. **Either listIds or segmentId can be passed.**
-
-
-
-
-
--
-
-**list_ids:** `typing.Optional[typing.Union[int, typing.Sequence[int]]]` β Ids of the list. **Either listIds or segmentId can be passed.**
-
-
-
-
-
--
-
-**filter:** `typing.Optional[str]` β Filter the contacts on the basis of attributes. **Allowed operator: equals. For multiple-choice options, the filter will apply an AND condition between the options. For category attributes, the filter will work with both id and value. (e.g. filter=equals(FIRSTNAME,"Antoine"), filter=equals(B1, true), filter=equals(DOB, "1989-11-23"), filter=equals(GENDER, "1"), filter=equals(GENDER, "MALE"), filter=equals(COUNTRY,"USA, INDIA")**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.create_contact(...) -> AsyncHttpResponse[CreateContactResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates new contacts on Brevo. Contacts can be created by passing either -
1. email address of the contact (email_id),
2. phone number of the contact (to be passed as "SMS" field in "attributes" along with proper country code), For example- {"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}
3. ext_id
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.create_contact()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, CreateContactRequestAttributesValue]]` β Pass the set of attributes and their values. The attribute's parameter should be passed in capital letter while creating a contact. Values that don't match the attribute type (e.g. text or string in a date attribute) will be ignored. **These attributes must be present in your Brevo account**. For eg: **{"FNAME":"Elly", "LNAME":"Roger", "COUNTRIES": ["India","China"]}**
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β Email address of the user. **Mandatory if "ext_id" & "SMS" field is not passed.**
-
-
-
-
-
--
-
-**email_blacklisted:** `typing.Optional[bool]` β Set this field to blacklist the contact for emails (emailBlacklisted = true)
-
-
-
-
-
--
-
-**ext_id:** `typing.Optional[str]` β Pass your own Id to create a contact.
-
-
-
-
-
--
-
-**list_ids:** `typing.Optional[typing.Sequence[int]]` β Ids of the lists to add the contact to
-
-
-
-
-
--
-
-**sms_blacklisted:** `typing.Optional[bool]` β Set this field to blacklist the contact for SMS (smsBlacklisted = true)
-
-
-
-
-
--
-
-**smtp_blacklist_sender:** `typing.Optional[typing.Sequence[str]]` β transactional email forbidden sender for contact. Use only for email Contact ( only available if updateEnabled = true )
-
-
-
-
-
--
-
-**update_enabled:** `typing.Optional[bool]` β Facilitate to update the existing contact in the same request (updateEnabled = true)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_attributes() -> AsyncHttpResponse[GetAttributesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_attributes()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.create_attribute(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.create_attribute(
- attribute_category="normal",
- attribute_name="attributeName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attribute_category:** `CreateAttributeRequestAttributeCategory` β Category of the attribute
-
-
-
-
-
--
-
-**attribute_name:** `str` β Name of the attribute
-
-
-
-
-
--
-
-**enumeration:** `typing.Optional[typing.Sequence[CreateAttributeRequestEnumerationItem]]` β List of values and labels that the attribute can take. **Use only if the attribute's category is "category"**. None of the category options can exceed max 200 characters. For example: **[{"value":1, "label":"male"}, {"value":2, "label":"female"}]**
-
-
-
-
-
--
-
-**is_recurring:** `typing.Optional[bool]` β Type of the attribute. **Use only if the attribute's category is 'calculated' or 'global'**
-
-
-
-
-
--
-
-**multi_category_options:** `typing.Optional[typing.Sequence[str]]` β List of options you want to add for multiple-choice attribute. **Use only if the attribute's category is "normal" and attribute's type is "multiple-choice". None of the multicategory options can exceed max 200 characters.** For example: **["USA","INDIA"]**
-
-
-
-
-
--
-
-**type:** `typing.Optional[CreateAttributeRequestType]` β Type of the attribute. **Use only if the attribute's category is 'normal', 'category' or 'transactional'** Type **user and multiple-choice** is only available if the category is **normal** attribute Type **id** is only available if the category is **transactional** attribute Type **category** is only available if the category is **category** attribute
-
-
-
-
-
--
-
-**value:** `typing.Optional[str]` β Value of the attribute. **Use only if the attribute's category is 'calculated' or 'global'**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.update_attribute(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.update_attribute(
- attribute_category="category",
- attribute_name="attributeName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attribute_category:** `UpdateAttributeRequestAttributeCategory` β Category of the attribute
-
-
-
-
-
--
-
-**attribute_name:** `str` β Name of the existing attribute
-
-
-
-
-
--
-
-**enumeration:** `typing.Optional[typing.Sequence[UpdateAttributeRequestEnumerationItem]]` β List of the values and labels that the attribute can take. **Use only if the attribute's category is "category"** None of the category options can exceed max 200 characters. For example, **[{"value":1, "label":"male"}, {"value":2, "label":"female"}]**
-
-
-
-
-
--
-
-**multi_category_options:** `typing.Optional[typing.Sequence[str]]` β Use this option to add multiple-choice attributes options only if the attribute's category is "normal". **This option is specifically designed for updating multiple-choice attributes. None of the multicategory options can exceed max 200 characters.**. For example: **["USA","INDIA"]**
-
-
-
-
-
--
-
-**value:** `typing.Optional[str]` β Value of the attribute to update. **Use only if the attribute's category is 'calculated' or 'global'**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.delete_attribute(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.delete_attribute(
- attribute_category="normal",
- attribute_name="attributeName",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attribute_category:** `DeleteAttributeRequestAttributeCategory` β Category of the attribute
-
-
-
-
-
--
-
-**attribute_name:** `str` β Name of the existing attribute
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.delete_multi_attribute_options(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.delete_multi_attribute_options(
- multiple_choice_attribute="multipleChoiceAttribute",
- multiple_choice_attribute_option="multipleChoiceAttributeOption",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**multiple_choice_attribute:** `str` β Name of the existing multiple-choice attribute
-
-
-
-
-
--
-
-**multiple_choice_attribute_option:** `str` β Name of the existing multiple-choice attribute option that you want to delete
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.update_batch_contacts(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.update_batch_contacts()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**contacts:** `typing.Optional[typing.Sequence[UpdateBatchContactsRequestContactsItem]]` β List of contacts to be updated
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.create_doi_contact(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.create_doi_contact(
- email="elly@example.com",
- include_list_ids=[36],
- redirection_url="http://requestb.in/173lyyx1",
- template_id=2,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β Email address where the confirmation email will be sent. This email address will be the identifier for all other contact attributes.
-
-
-
-
-
--
-
-**include_list_ids:** `typing.Sequence[int]` β Lists under user account where contact should be added
-
-
-
-
-
--
-
-**redirection_url:** `str` β URL of the web page that user will be redirected to after clicking on the double opt in URL. When editing your DOI template you can reference this URL by using the tag **{{ params.DOIurl }}**.
-
-
-
-
-
--
-
-**template_id:** `int` β Id of the Double opt-in (DOI) template
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, CreateDoiContactRequestAttributesValue]]` β Pass the set of attributes and their values. **These attributes must be present in your Brevo account**. For eg. **{'FNAME':'Elly', 'LNAME':'Roger', 'COUNTRIES': ['India','China']}**
-
-
-
-
-
--
-
-**exclude_list_ids:** `typing.Optional[typing.Sequence[int]]` β Lists under user account where contact should not be added
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.request_contact_export(...) -> AsyncHttpResponse[RequestContactExportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-It returns the background process ID which on completion calls the notify URL that you have set in the input. File will be available in csv.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.contacts import RequestContactExportRequestCustomContactFilter
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.request_contact_export(
- custom_contact_filter=RequestContactExportRequestCustomContactFilter(),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**custom_contact_filter:** `RequestContactExportRequestCustomContactFilter` β Set the filter for the contacts to be exported.
-
-
-
-
-
--
-
-**disable_notification:** `typing.Optional[bool]` β To avoid generating the email notification upon contact export, pass **true**
-
-
-
-
-
--
-
-**export_attributes:** `typing.Optional[typing.Sequence[str]]` β List of all the attributes that you want to export. **These attributes must be present in your contact database. It is required if exportMandatoryAttributes is set false. ** For example: **['fname', 'lname', 'email']**
-
-
-
-
-
--
-
-**export_mandatory_attributes:** `typing.Optional[bool]` β To export mandatory attributes like EMAIL, ADDED_TIME, MODIFIED_TIME
-
-
-
-
-
--
-
-**export_metadata:** `typing.Optional[typing.Sequence[str]]` β Export metadata of contacts such as _listIds, ADDED_TIME, MODIFIED_TIME.
-
-
-
-
-
--
-
-**export_date_in_utc:** `typing.Optional[bool]` β Specifies whether the date fields createdAt, modifiedAt in the exported data should be returned in UTC format.
-
-
-
-
-
--
-
-**export_subscription_status:** `typing.Optional[typing.Sequence[str]]` β Export subscription status of contacts for email & sms marketting. Pass email_marketing to obtain the marketing email subscription status & sms_marketing to retrieve the marketing SMS status of the contact.
-
-
-
-
-
--
-
-**notify_url:** `typing.Optional[str]` β Webhook that will be called once the export process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_folders(...) -> AsyncHttpResponse[GetFoldersResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Ongoing changes for this endpoint
-
-We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
-These are non breaking changes.
-
-The default value for the attributes will be 0.
-
-The uniqueSubscribers field is deprecated
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_folders()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetFoldersRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.create_folder(...) -> AsyncHttpResponse[CreateFolderResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.create_folder()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the folder
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_folder(...) -> AsyncHttpResponse[GetFolder]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Ongoing changes for this endpoint.
-
-We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
-These are non breaking changes. The default value for the attributes will be 0.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_folder(
- folder_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**folder_id:** `int` β id of the folder
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.update_folder(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.update_folder(
- folder_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**folder_id:** `int` β Id of the folder
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the folder
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.delete_folder(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.delete_folder(
- folder_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**folder_id:** `int` β Id of the folder
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_folder_lists(...) -> AsyncHttpResponse[GetFolderListsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Ongoing changes for this endpoint.
-
-We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
-These are non breaking changes. The default value for the attributes will be 0.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_folder_lists(
- folder_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**folder_id:** `int` β Id of the folder
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetFolderListsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.import_contacts(...) -> AsyncHttpResponse[ImportContactsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-It returns the background process ID which on completion calls the notify URL that you have set in the input. **Note**: - Any contact attribute that doesn't exist in your account will be ignored at import end.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.import_contacts()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**disable_notification:** `typing.Optional[bool]` β To disable email notification
-
-
-
-
-
--
-
-**email_blacklist:** `typing.Optional[bool]` β To blacklist all the contacts for email
-
-
-
-
-
--
-
-**empty_contacts_attributes:** `typing.Optional[bool]` β To facilitate the choice to erase any attribute of the existing contacts with empty value. emptyContactsAttributes = true means the empty fields in your import will erase any attribute that currently contain data in Brevo, & emptyContactsAttributes = false means the empty fields will not affect your existing data ( **only available if `updateExistingContacts` set to true **)
-
-
-
-
-
--
-
-**file_body:** `typing.Optional[str]` β **Mandatory if fileUrl and jsonBody is not defined.** CSV content to be imported. Use semicolon to separate multiple attributes. **Maximum allowed file body size is 10MB** . However we recommend a safe limit of around 8 MB to avoid the issues caused due to increase of file body size while parsing. Please use fileUrl instead to import bigger files.
-
-
-
-
-
--
-
-**file_url:** `typing.Optional[str]` β **Mandatory if fileBody and jsonBody is not defined.** URL of the file to be imported (**no local file**). Possible file formats: #### .txt, .csv, .json
-
-
-
-
-
--
-
-**json_body:** `typing.Optional[typing.Sequence[ImportContactsRequestJsonBodyItem]]` β **Mandatory if fileUrl and fileBody is not defined.** JSON content to be imported. **Maximum allowed json body size is 10MB** . However we recommend a safe limit of around 8 MB to avoid the issues caused due to increase of json body size while parsing. Please use fileUrl instead to import bigger files.
-
-
-
-
-
--
-
-**list_ids:** `typing.Optional[typing.Sequence[int]]` β **Mandatory if newList is not defined.** Ids of the lists in which the contacts shall be imported. For example, **[2, 4, 7]**.
-
-
-
-
-
--
-
-**new_list:** `typing.Optional[ImportContactsRequestNewList]` β To create a new list and import the contacts into it, pass the listName and an optional folderId.
-
-
-
-
-
--
-
-**notify_url:** `typing.Optional[str]` β URL that will be called once the import process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479
-
-
-
-
-
--
-
-**sms_blacklist:** `typing.Optional[bool]` β To blacklist all the contacts for sms
-
-
-
-
-
--
-
-**update_existing_contacts:** `typing.Optional[bool]` β To facilitate the choice to update the existing contacts
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_lists(...) -> AsyncHttpResponse[GetListsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Ongoing changes for this endpoint.
-
-We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
-These are non breaking changes. The default value for the attributes will be 0.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_lists()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetListsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.create_list(...) -> AsyncHttpResponse[CreateListResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.create_list(
- folder_id=2,
- name="Magento Customer - ES",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**folder_id:** `int` β Id of the parent folder in which this list is to be created
-
-
-
-
-
--
-
-**name:** `str` β Name of the list
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_list(...) -> AsyncHttpResponse[GetListResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_list(
- list_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used**. Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to aggregate the sent email campaigns for a specific list id. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used**. Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to aggregate the sent email campaigns for a specific list id. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.update_list(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.update_list(
- list_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**folder_id:** `typing.Optional[int]` β Id of the folder in which the list is to be moved. Either of the two parameters (name, folderId) can be updated at a time.
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the list. Either of the two parameters (name, folderId) can be updated at a time.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.delete_list(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.delete_list(
- list_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_contacts_from_list(...) -> AsyncHttpResponse[GetContacts]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_contacts_from_list(
- list_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetContactsFromListRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.add_contact_to_list(...) -> AsyncHttpResponse[PostContactInfo]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.contacts import AddContactToListRequestBodyEmails
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.add_contact_to_list(
- list_id=1000000,
- request=AddContactToListRequestBodyEmails(
- emails=["jeff32@example.com", "jim56@example.com"],
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**request:** `AddContactToListRequestBody`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.remove_contact_from_list(...) -> AsyncHttpResponse[PostContactInfo]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.contacts import RemoveContactFromListRequestBodyAll
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.remove_contact_from_list(
- list_id=1000000,
- request=RemoveContactFromListRequestBodyAll(
- all_=True,
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**list_id:** `int` β Id of the list
-
-
-
-
-
--
-
-**request:** `RemoveContactFromListRequestBody`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_segments(...) -> AsyncHttpResponse[GetSegmentsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_segments()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSegmentsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_contact_info(...) -> AsyncHttpResponse[GetContactInfoResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-Accepted Number Formats
-
-91xxxxxxxxxx
-+91xxxxxxxxxx
-0091xxxxxxxxxx
-
-
-There are 2 ways to get a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL), phone_id (for SMS) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL, SMS and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
Along with the contact details, this endpoint will show the statistics of contact for the recent 90 days by default. To fetch the earlier statistics, please use Get contact campaign stats ``https://developers.brevo.com/reference/contacts-7#getcontactstats`` endpoint with the appropriate date ranges.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_contact_info(
- identifier="identifier",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `GetContactInfoRequestIdentifier` β Email (urlencoded) OR ID of the contact OR its SMS attribute value OR EXT_ID attribute (urlencoded)
-
-
-
-
-
--
-
-**identifier_type:** `typing.Optional[GetContactInfoRequestIdentifierType]` β email_id for Email, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be lower than equal to endDate
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be greater than equal to startDate.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.update_contact(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.update_contact(
- identifier="identifier",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `UpdateContactRequestIdentifier` β Email (urlencoded) OR ID of the contact OR EXT_ID attribute (urlencoded) OR its SMS attribute value OR its WHATSAPP attribute value OR its LANDLINE attribute value
-
-
-
-
-
--
-
-**identifier_type:** `typing.Optional[UpdateContactRequestIdentifierType]` β email_id for Email, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, UpdateContactRequestAttributesValue]]` β Pass the set of attributes to be updated. **These attributes must be present in your account**. To update existing email address of a contact with the new one please pass EMAIL in attributes. For example, **{ "EMAIL":"newemail@domain.com", "FNAME":"Ellie", "LNAME":"Roger", "COUNTRIES":["India","China"]}**. The attribute's parameter should be passed in capital letter while updating a contact. Values that don't match the attribute type (e.g. text or string in a date attribute) will be ignored .Keep in mind transactional attributes can be updated the same way as normal attributes. Mobile Number in **SMS** field should be passed with proper country code. For example: **{"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}**
-
-
-
-
-
--
-
-**email_blacklisted:** `typing.Optional[bool]` β Set/unset this field to blacklist/allow the contact for emails (emailBlacklisted = true)
-
-
-
-
-
--
-
-**ext_id:** `typing.Optional[str]` β Pass your own Id to update ext_id of a contact.
-
-
-
-
-
--
-
-**list_ids:** `typing.Optional[typing.Sequence[int]]` β Ids of the lists to add the contact to
-
-
-
-
-
--
-
-**sms_blacklisted:** `typing.Optional[bool]` β Set/unset this field to blacklist/allow the contact for SMS (smsBlacklisted = true)
-
-
-
-
-
--
-
-**smtp_blacklist_sender:** `typing.Optional[typing.Sequence[str]]` β transactional email forbidden sender for contact. Use only for email Contact
-
-
-
-
-
--
-
-**unlink_list_ids:** `typing.Optional[typing.Sequence[int]]` β Ids of the lists to remove the contact from
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.delete_contact(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-There are 2 ways to delete a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.delete_contact(
- identifier="identifier",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `DeleteContactRequestIdentifier` β Email (urlencoded) OR ID of the contact OR EXT_ID attribute (urlencoded)
-
-
-
-
-
--
-
-**identifier_type:** `typing.Optional[DeleteContactRequestIdentifierType]` β email_id for Email, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.contacts.get_contact_stats(...) -> AsyncHttpResponse[GetContactStatsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.contacts.get_contact_stats(
- identifier="identifier",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `GetContactStatsRequestIdentifier` β Email (urlencoded) OR ID of the contact
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be lower than equal to endDate
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be greater than equal to startDate. Maximum difference between startDate and endDate should not be greater than 90 days
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Conversations
-client.conversations.sets_agents_status_to_online_for23minutes(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-We recommend pinging this endpoint every minute for as long as the agent has to be considered online.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.sets_agents_status_to_online_for23minutes(
- agent_email="liz@getwear.com",
- agent_name="Liz",
- received_from="SuperAwesomeHelpdesk",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**agent_email:** `typing.Optional[typing.Any]` β agent email. When sending online pings from a standalone system, itβs hard to maintain a 1-to-1 relationship between the users of both systems. In this case, an agent can be specified by their email address. If thereβs no agent with the specified email address in your Brevo organization, a dummy agent will be created automatically.
-
-
-
-
-
--
-
-**agent_id:** `typing.Optional[typing.Any]` β agent ID. It can be found on agentβs page or received from a webhook. Alternatively, you can use `agentEmail` + `agentName` + `receivedFrom` instead (all 3 fields required).
-
-
-
-
-
--
-
-**agent_name:** `typing.Optional[typing.Any]` β agent name
-
-
-
-
-
--
-
-**received_from:** `typing.Optional[typing.Any]` β mark your messages to distinguish messages created by you from the others.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.send_a_message_as_an_agent(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.send_a_message_as_an_agent(
- agent_id="d9nKoegKSjmCtyK78",
- received_from="SuperAwesomeHelpdesk",
- text="Hello! How can I help you?",
- visitor_id="kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**text:** `typing.Any`
-
-
-
-
-
--
-
-**visitor_id:** `typing.Any`
-
-
-
-
-
--
-
-**agent_email:** `typing.Optional[typing.Any]` β agent email. When sending messages from a standalone system, itβs hard to maintain a 1-to-1 relationship between the users of both systems. In this case, an agent can be specified by their email address.
-
-
-
-
-
--
-
-**agent_id:** `typing.Optional[typing.Any]` β agent ID. It can be found on agentβs page or received from a webhook. Alternatively, you can use `agentEmail` + `agentName` + `receivedFrom` instead (all 3 fields required).
-
-
-
-
-
--
-
-**agent_name:** `typing.Optional[typing.Any]` β agent name
-
-
-
-
-
--
-
-**received_from:** `typing.Optional[typing.Any]` β mark your messages to distinguish messages created by you from the others.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.get_a_message(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.get_a_message(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.update_a_message_sent_by_an_agent(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Only agentsβ messages can be edited.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.update_a_message_sent_by_an_agent(
- id="id",
- text="Good morning! How can I help you?",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message
-
-
-
-
-
--
-
-**text:** `str` β edited message text
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.delete_a_message_sent_by_an_agent(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Only agentsβ messages can be deleted.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.delete_a_message_sent_by_an_agent(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.send_an_automated_message_to_a_visitor(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Example of automated messages: order status, announce new features in your web app, etc.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.send_an_automated_message_to_a_visitor(
- agent_id="d9nKoegKSjmCtyK78",
- text="Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88",
- visitor_id="kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**text:** `typing.Any`
-
-
-
-
-
--
-
-**visitor_id:** `typing.Any`
-
-
-
-
-
--
-
-**agent_id:** `typing.Optional[typing.Any]` β agent ID. It can be found on agentβs page or received from a webhook.
-
-
-
-
-
--
-
-**group_id:** `typing.Optional[typing.Any]` β group ID. It can be found on groupβs page.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.get_an_automated_message(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.get_an_automated_message(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message sent previously
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.update_an_automated_message(...) -> AsyncHttpResponse[ConversationsMessage]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.update_an_automated_message(
- id="id",
- text="Your order has shipped! Hereβs your tracking number: 9114 5847 4668 7775 9233 54",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message
-
-
-
-
-
--
-
-**text:** `str` β edited message text
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.delete_an_automated_message(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.delete_an_automated_message(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the message
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.conversations.set_visitor_group_assignment(...) -> AsyncHttpResponse[PutConversationsVisitorGroupResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Assigns a visitor to a specific agent group or removes them from their current group.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.conversations.set_visitor_group_assignment(
- group_id="PjRBMhWGen6aRHjif",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**group_id:** `typing.Any`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Ecommerce
-client.ecommerce.get_categories(...) -> AsyncHttpResponse[GetCategoriesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_categories()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCategoriesRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β Filter by category ids
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Filter by category name
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the categories modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the categories created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**is_deleted:** `typing.Optional[str]` β Filter categories by their deletion status. If `false` is passed, only categories that are not deleted will be returned.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_update_category(...) -> AsyncHttpResponse[CreateUpdateCategoryResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_update_category(
- id="CAT123",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Unique Category ID as saved in the shop
-
-
-
-
-
--
-
-**deleted_at:** `typing.Optional[str]` β UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) of the category deleted from the shop's database
-
-
-
-
-
--
-
-**is_deleted:** `typing.Optional[bool]` β category deleted from the shop's database
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β **Mandatory in case of creation**. Name of the Category, as displayed in the shop
-
-
-
-
-
--
-
-**update_enabled:** `typing.Optional[bool]` β Facilitate to update the existing category in the same request (updateEnabled = true)
-
-
-
-
-
--
-
-**url:** `typing.Optional[str]` β URL to the category
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_update_batch_category(...) -> AsyncHttpResponse[CreateUpdateBatchCategoryResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.ecommerce import CreateUpdateBatchCategoryRequestCategoriesItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_update_batch_category(
- categories=[
- CreateUpdateBatchCategoryRequestCategoriesItem(
- id="CAT123",
- )
- ],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**categories:** `typing.Sequence[CreateUpdateBatchCategoryRequestCategoriesItem]` β array of categories objects
-
-
-
-
-
--
-
-**update_enabled:** `typing.Optional[bool]` β Facilitate to update the existing categories in the same request (updateEnabled = true)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_category_info(...) -> AsyncHttpResponse[GetCategoryDetails]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_category_info(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Category ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.activate_the_e_commerce_app() -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Getting access to Brevo eCommerce.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.activate_the_e_commerce_app()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_attribution_metrics_for_one_or_more_brevo_campaigns_or_workflows(...) -> AsyncHttpResponse[GetEcommerceAttributionMetricsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-import datetime
-
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_attribution_metrics_for_one_or_more_brevo_campaigns_or_workflows(
- period_from=datetime.datetime.fromisoformat(
- "2022-01-02 00:00:00+00:00",
- ),
- period_to=datetime.datetime.fromisoformat(
- "2022-01-03 00:00:00+00:00",
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**period_from:** `typing.Optional[dt.datetime]` β When getting metrics for a specific period, define the starting datetime in RFC3339 format
-
-
-
-
-
--
-
-**period_to:** `typing.Optional[dt.datetime]` β When getting metrics for a specific period, define the end datetime in RFC3339 format
-
-
-
-
-
--
-
-**email_campaign_id_array:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β The email campaign ID(s) to get metrics for
-
-
-
-
-
--
-
-**sms_campaign_id_array:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β The SMS campaign ID(s) to get metrics for
-
-
-
-
-
--
-
-**automation_workflow_email_id_array:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β The automation workflow ID(s) to get email attribution metrics for
-
-
-
-
-
--
-
-**automation_workflow_sms_id_array:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β The automation workflow ID(s) to get SMS attribution metrics for
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_detailed_attribution_metrics_for_a_single_brevo_campaign_or_workflow(...) -> AsyncHttpResponse[
- GetEcommerceAttributionMetricsConversionSourceConversionSourceIdResponse
-]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_detailed_attribution_metrics_for_a_single_brevo_campaign_or_workflow(
- conversion_source="email_campaign",
- conversion_source_id="sale",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**conversion_source:** `GetEcommerceAttributionMetricsConversionSourceConversionSourceIdRequestConversionSource` β The Brevo campaign type or workflow type for which data will be retrieved
-
-
-
-
-
--
-
-**conversion_source_id:** `str` β The Brevo campaign or automation workflow id for which data will be retrieved
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_attributed_product_sales_for_a_single_brevo_campaign_or_workflow(...) -> AsyncHttpResponse[
- GetEcommerceAttributionProductsConversionSourceConversionSourceIdResponse
-]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_attributed_product_sales_for_a_single_brevo_campaign_or_workflow(
- conversion_source="email_campaign",
- conversion_source_id="sale",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**conversion_source:** `GetEcommerceAttributionProductsConversionSourceConversionSourceIdRequestConversionSource` β The Brevo campaign or automation workflow type for which data will be retrieved
-
-
-
-
-
--
-
-**conversion_source_id:** `str` β The Brevo campaign or automation workflow id for which data will be retrieved
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_the_iso4217compliant_display_currency_code_for_your_brevo_account() -> AsyncHttpResponse[GetEcommerceConfigDisplayCurrencyResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_the_iso4217compliant_display_currency_code_for_your_brevo_account()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.set_config_display_currency(...) -> AsyncHttpResponse[SetConfigDisplayCurrencyResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.set_config_display_currency(
- code="EUR",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**code:** `str` β ISO 4217 compliant display currency code
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_orders(...) -> AsyncHttpResponse[typing.Any]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get all the orders
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_orders()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetOrdersRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the orders modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the orders created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_order(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Manages the transactional status of the order
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, OrderProductsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_order(
- amount=308.42,
- created_at="2021-07-29T20:59:23.383Z",
- id="14",
- products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
- )
- ],
- status="completed",
- updated_at="2021-07-30T10:59:23.383Z",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**amount:** `float` β Total amount of the order, including all shipping expenses, tax and the price of items.
-
-
-
-
-
--
-
-**created_at:** `str` β Event occurrence UTC date-time (YYYY-MM-DDTHH:mm:ssZ), when order is actually created.
-
-
-
-
-
--
-
-**id:** `str` β Unique ID of the order.
-
-
-
-
-
--
-
-**products:** `typing.Sequence[OrderProductsItem]`
-
-
-
-
-
--
-
-**status:** `str` β State of the order.
-
-
-
-
-
--
-
-**updated_at:** `str` β Event updated UTC date-time (YYYY-MM-DDTHH:mm:ssZ), when the status of the order is actually changed/updated.
-
-
-
-
-
--
-
-**billing:** `typing.Optional[OrderBilling]` β Billing details of an order.
-
-
-
-
-
--
-
-**coupons:** `typing.Optional[typing.Sequence[str]]` β Coupons applied to the order. Stored case insensitive.
-
-
-
-
-
--
-
-**identifiers:** `typing.Optional[OrderIdentifiers]` β Identifies the contact associated with the order.
-
-
-
-
-
--
-
-**meta_info:** `typing.Optional[typing.Dict[str, OrderMetaInfoValue]]` β Meta data of order to store additional detal such as custom message, customer type, source.
-
-
-
-
-
--
-
-**store_id:** `typing.Optional[str]` β ID of store where the order is placed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_batch_order(...) -> AsyncHttpResponse[CreateBatchOrderResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Create multiple orders at one time instead of one order at a time
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, Order, OrderProductsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_batch_order(
- orders=[
- Order(
- amount=308.42,
- created_at="2021-07-29T20:59:23.383Z",
- id="14",
- products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
- )
- ],
- status="completed",
- updated_at="2021-07-30T10:59:23.383Z",
- )
- ],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**orders:** `typing.Sequence[Order]` β array of order objects
-
-
-
-
-
--
-
-**historical:** `typing.Optional[bool]` β Defines wether you want your orders to be considered as live data or as historical data (import of past data, synchronising data). True: orders will not trigger any automation workflows. False: orders will trigger workflows as usual.
-
-
-
-
-
--
-
-**notify_url:** `typing.Optional[str]` β Notify Url provided by client_dev to get the status of batch request
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_products(...) -> AsyncHttpResponse[GetProductsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_products()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetProductsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β Filter by product ids
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Filter by product name, minimum 3 characters should be present for search.
-
-
-
-
-
--
-
-**price_lte:** `typing.Optional[float]` β Price filter for products less than and equals to particular amount
-
-
-
-
-
--
-
-**price_gte:** `typing.Optional[float]` β Price filter for products greater than and equals to particular amount
-
-
-
-
-
--
-
-**price_lt:** `typing.Optional[float]` β Price filter for products less than particular amount
-
-
-
-
-
--
-
-**price_gt:** `typing.Optional[float]` β Price filter for products greater than particular amount
-
-
-
-
-
--
-
-**price_eq:** `typing.Optional[float]` β Price filter for products equals to particular amount
-
-
-
-
-
--
-
-**price_ne:** `typing.Optional[float]` β Price filter for products not equals to particular amount
-
-
-
-
-
--
-
-**categories:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β Filter by categories ids
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the orders modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the orders created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**is_deleted:** `typing.Optional[str]` β Filter products by their deletion status. If `false` is passed, only products that are not deleted will be returned.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_update_product(...) -> AsyncHttpResponse[CreateUpdateProductResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_update_product(
- id="P11",
- name="Iphone 11",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Product ID for which you requested the details
-
-
-
-
-
--
-
-**name:** `str` β Mandatory in case of creation**. Name of the product for which you requested the details
-
-
-
-
-
--
-
-**categories:** `typing.Optional[typing.Sequence[str]]` β Category ID-s of the product
-
-
-
-
-
--
-
-**deleted_at:** `typing.Optional[str]` β UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) of the product deleted from the shop's database
-
-
-
-
-
--
-
-**image_url:** `typing.Optional[str]` β Absolute URL to the cover image of the product
-
-
-
-
-
--
-
-**is_deleted:** `typing.Optional[bool]` β product deleted from the shop's database
-
-
-
-
-
--
-
-**meta_info:** `typing.Optional[typing.Dict[str, CreateUpdateProductRequestMetaInfoValue]]` β Meta data of product such as description, vendor, producer, stock level. The size of cumulative metaInfo shall not exceed **1000 KB**. Maximum length of metaInfo object can be 20.
-
-
-
-
-
--
-
-**parent_id:** `typing.Optional[str]` β Parent product id of the product
-
-
-
-
-
--
-
-**price:** `typing.Optional[float]` β Price of the product
-
-
-
-
-
--
-
-**sku:** `typing.Optional[str]` β Product identifier from the shop
-
-
-
-
-
--
-
-**stock:** `typing.Optional[float]` β Current stock value of the product from the shop's database
-
-
-
-
-
--
-
-**update_enabled:** `typing.Optional[bool]` β Facilitate to update the existing category in the same request (updateEnabled = true)
-
-
-
-
-
--
-
-**url:** `typing.Optional[str]` β URL to the product
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_update_batch_products(...) -> AsyncHttpResponse[CreateUpdateBatchProductsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.ecommerce import CreateUpdateBatchProductsRequestProductsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_update_batch_products(
- products=[
- CreateUpdateBatchProductsRequestProductsItem(
- id="P11",
- name="Iphone 11",
- )
- ],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**products:** `typing.Sequence[CreateUpdateBatchProductsRequestProductsItem]` β array of products objects
-
-
-
-
-
--
-
-**update_enabled:** `typing.Optional[bool]` β Facilitate to update the existing categories in the same request (updateEnabled = true)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.get_product_info(...) -> AsyncHttpResponse[GetProductDetails]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.get_product_info(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Product ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.ecommerce.create_product_alert(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.ecommerce.create_product_alert(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Product ID
-
-
-
-
-
--
-
-**contact_identifiers:** `typing.Optional[CreateProductAlertRequestContactIdentifiers]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Coupons
-client.coupons.get_coupon_collections(...) -> AsyncHttpResponse[GetCouponCollection]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.coupons.get_coupon_collections()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCouponCollectionsRequestSort]` β Sort the results by creation time in ascending/descending order
-
-
-
-
-
--
-
-**sort_by:** `typing.Optional[GetCouponCollectionsRequestSortBy]` β The field used to sort coupon collections
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.coupons.create_coupon_collection(...) -> AsyncHttpResponse[CreateCouponCollectionResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.coupons.create_coupon_collection(
- default_coupon="Winter",
- name="10%OFF",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**default_coupon:** `str` β Default coupons collection name
-
-
-
-
-
--
-
-**name:** `str` β Name of the coupons collection
-
-
-
-
-
--
-
-**expiration_date:** `typing.Optional[dt.datetime]` β Specify an expiration date for the coupon collection in RFC3339 format. Use null to remove the expiration date.
-
-
-
-
-
--
-
-**remaining_coupons_alert:** `typing.Optional[int]` β Send a notification alert (email) when the remaining coupons count is equal or fall bellow this number. Use null to disable alerts.
-
-
-
-
-
--
-
-**remaining_days_alert:** `typing.Optional[int]` β Send a notification alert (email) when the remaining days until the expiration date are equal or fall bellow this number. Use null to disable alerts.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.coupons.get_coupon_collection(...) -> AsyncHttpResponse[GetCouponCollection]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.coupons.get_coupon_collection(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the collection to return
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.coupons.update_coupon_collection(...) -> AsyncHttpResponse[UpdateCouponCollectionResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.coupons.update_coupon_collection(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the collection to update
-
-
-
-
-
--
-
-**default_coupon:** `typing.Optional[str]` β A default coupon to be used in case there are no coupons left
-
-
-
-
-
--
-
-**expiration_date:** `typing.Optional[dt.datetime]` β Specify an expiration date for the coupon collection in RFC3339 format. Use null to remove the expiration date.
-
-
-
-
-
--
-
-**remaining_coupons_alert:** `typing.Optional[int]` β Send a notification alert (email) when the remaining coupons count is equal or fall bellow this number. Use null to disable alerts.
-
-
-
-
-
--
-
-**remaining_days_alert:** `typing.Optional[int]` β Send a notification alert (email) when the remaining days until the expiration date are equal or fall bellow this number. Use null to disable alerts.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.coupons.create_coupons(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.coupons.create_coupons(
- collection_id="23befbae-1505-47a8-bd27-e30ef739f32c",
- coupons=["Uf12AF"],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**collection_id:** `str` β The id of the coupon collection for which the coupons will be created
-
-
-
-
-
--
-
-**coupons:** `typing.Sequence[str]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Payments
-client.payments.create_payment_request(...) -> AsyncHttpResponse[CreatePaymentRequestResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, Cart
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.payments.create_payment_request(
- cart=Cart(
- specific_amount=1200,
- ),
- contact_id=43,
- reference="Invoice #INV0001",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**cart:** `Cart`
-
-
-
-
-
--
-
-**contact_id:** `int` β Brevo ID of the contact requested to pay.
-
-
-
-
-
--
-
-**reference:** `str` β Reference of the payment request, it will appear on the payment page.
-
-
-
-
-
--
-
-**configuration:** `typing.Optional[Configuration]`
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Description of payment request.
-
-
-
-
-
--
-
-**notification:** `typing.Optional[Notification]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.payments.get_payment_request(...) -> AsyncHttpResponse[GetPaymentRequestResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.payments.get_payment_request(
- id="050db7b0-9bb7-4c1e-9c68-5a8dace8c1dc",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Id of the payment Request
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.payments.delete_payment_request(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.payments.delete_payment_request(
- id="9ae7d68a-565c-4695-9381-d8fb3e3a14cc",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β ID of the payment request.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Event
-client.event.create_event(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Create an event to track a contact's interaction.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.event import CreateEventRequestIdentifiers
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.event.create_event(
- event_name="video_played",
- identifiers=CreateEventRequestIdentifiers(),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**event_name:** `str` β The name of the event that occurred. This is how you will find your event in Brevo. Limited to 255 characters, alphanumerical characters and - _ only.
-
-
-
-
-
--
-
-**identifiers:** `CreateEventRequestIdentifiers` β Identifies the contact associated with the event. At least one identifier is required.
-
-
-
-
-
--
-
-**contact_properties:** `typing.Optional[typing.Dict[str, CreateEventRequestContactPropertiesValue]]` β Properties defining the state of the contact associated to this event. Useful to update contact attributes defined in your contacts database while passing the event. For example: **"FIRSTNAME": "Jane" , "AGE": 37**
-
-
-
-
-
--
-
-**event_date:** `typing.Optional[str]` β Timestamp of when the event occurred (e.g. "2024-01-24T17:39:57+01:00"). If no value is passed, the timestamp of the event creation is used.
-
-
-
-
-
--
-
-**event_properties:** `typing.Optional[typing.Dict[str, CreateEventRequestEventPropertiesValue]]` β Properties of the event. Top level properties and nested properties can be used to better segment contacts and personalise workflow conditions. The following field type are supported: string, number, boolean (true/false), date (Timestamp e.g. "2024-01-24T17:39:57+01:00"). Keys are limited to 255 characters, alphanumerical characters and - _ only. Size is limited to 50Kb.
-
-
-
-
-
--
-
-**object:** `typing.Optional[CreateEventRequestObject]` β Identifiers of the object record associated with this event. Ignored if the object type or identifier for this record does not exist on the account.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## InboundParsing
-client.inbound_parsing.get_inbound_email_events(...) -> AsyncHttpResponse[GetInboundEmailEventsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the list of all the events for the received emails.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.inbound_parsing.get_inbound_email_events()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender:** `typing.Optional[str]` β Email address of the sender.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β Mandatory if endDate is used. Starting date (YYYY-MM-DD or YYYY-MM-DDTHH:mm:ss.SSSZ) from which you want to fetch the list. Maximum time period that can be selected is one month.
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β Mandatory if startDate is used. Ending date (YYYY-MM-DD or YYYY-MM-DDTHH:mm:ss.SSSZ) till which you want to fetch the list. Maximum time period that can be selected is one month.
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetInboundEmailEventsRequestSort]` β Sort the results in the ascending/descending order of record creation
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.inbound_parsing.get_inbound_email_events_by_uuid(...) -> AsyncHttpResponse[GetInboundEmailEventsByUuidResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the list of all events history for one particular received email.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.inbound_parsing.get_inbound_email_events_by_uuid(
- uuid_="uuid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**uuid_:** `str` β UUID to fetch events specific to received email
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.inbound_parsing.get_inbound_email_attachment(...) -> typing.AsyncIterator[AsyncHttpResponse[typing.AsyncIterator[bytes]]]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will retrieve inbound attachment with download token.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.inbound_parsing.get_inbound_email_attachment(
- download_token="downloadToken",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**download_token:** `str` β Token to fetch a particular attachment
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration. You can pass in configuration such as `chunk_size`, and more to customize the request and response.
-
-
-
-
-
-
-
-
-
-
-
-## Balance
-client.balance.get_active_balances_api(...) -> AsyncHttpResponse[BalanceLimit]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns Active Balances
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_active_balances_api(
- pid="pid",
- contact_id=1,
- balance_definition_id="balance_definition_id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**contact_id:** `int` β Contact ID
-
-
-
-
-
--
-
-**balance_definition_id:** `str` β Balance Definition ID
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Limit
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Offset
-
-
-
-
-
--
-
-**sort_field:** `typing.Optional[str]` β Sort Field
-
-
-
-
-
--
-
-**sort:** `typing.Optional[str]` β Sort Order
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_balance_definition_list(...) -> AsyncHttpResponse[GetBalanceDefinitionListResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns balance definition page
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_balance_definition_list(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Limit the number of records returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Offset to paginate records
-
-
-
-
-
--
-
-**sort_field:** `typing.Optional[GetBalanceDefinitionListRequestSortField]` β Field to sort by
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetBalanceDefinitionListRequestSort]` β Sort direction
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetBalanceDefinitionListRequestVersion]` β Version
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.create_balance_definition(...) -> AsyncHttpResponse[BalanceDefinition]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates balance definition and returns information
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.create_balance_definition(
- pid="pid",
- name="name",
- unit="POINTS",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**name:** `str` β Name of the balance definition.
-
-
-
-
-
--
-
-**unit:** `PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestUnit` β Unit of balance measurement.
-
-
-
-
-
--
-
-**balance_availability_duration_modifier:** `typing.Optional[
- PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestBalanceAvailabilityDurationModifier
-]` β Defines when the balance expires within the selected duration.
-
-
-
-
-
--
-
-**balance_availability_duration_unit:** `typing.Optional[
- PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestBalanceAvailabilityDurationUnit
-]` β Unit of time for balance validity.
-
-
-
-
-
--
-
-**balance_availability_duration_value:** `typing.Optional[int]` β Number of time units before the balance expires.
-
-
-
-
-
--
-
-**balance_expiration_date:** `typing.Optional[dt.date]` β Fixed expiration date (`dd/mm` format) as an alternative to duration-based expiry.
-
-
-
-
-
--
-
-**balance_option_amount_overtaking_strategy:** `typing.Optional[
- PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestBalanceOptionAmountOvertakingStrategy
-]` β Defines whether partial credit is allowed when reaching max balance.
-
-
-
-
-
--
-
-**balance_option_credit_rounding:** `typing.Optional[
- PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestBalanceOptionCreditRounding
-]` β Defines rounding strategy for credit transactions.
-
-
-
-
-
--
-
-**balance_option_debit_rounding:** `typing.Optional[
- PostLoyaltyBalanceProgramsPidBalanceDefinitionsRequestBalanceOptionDebitRounding
-]` β Defines rounding strategy for debit transactions.
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Short description of the balance definition.
-
-
-
-
-
--
-
-**image_ref:** `typing.Optional[str]` β URL of an optional image reference.
-
-
-
-
-
--
-
-**max_amount:** `typing.Optional[float]` β Maximum allowable balance amount.
-
-
-
-
-
--
-
-**max_credit_amount_limit:** `typing.Optional[float]` β Maximum credit allowed per operation.
-
-
-
-
-
--
-
-**max_debit_amount_limit:** `typing.Optional[float]` β Maximum debit allowed per operation.
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Additional metadata for the balance definition.
-
-
-
-
-
--
-
-**min_amount:** `typing.Optional[float]` β Minimum allowable balance amount.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_balance_definition(...) -> AsyncHttpResponse[BalanceDefinition]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns balance definition
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_balance_definition(
- pid="pid",
- bdid="bdid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetBalanceDefinitionRequestVersion]` β Version
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.update_balance_definition(...) -> AsyncHttpResponse[BalanceDefinition]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates Balance definition
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.update_balance_definition(
- pid="pid",
- bdid="bdid",
- name="name",
- unit="POINTS",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**name:** `str` β Name of the balance definition.
-
-
-
-
-
--
-
-**unit:** `UpdateBalanceDefinitionRequestUnit` β Unit of balance measurement.
-
-
-
-
-
--
-
-**balance_availability_duration_modifier:** `typing.Optional[
- UpdateBalanceDefinitionRequestBalanceAvailabilityDurationModifier
-]` β Defines when the balance expires within the selected duration.
-
-
-
-
-
--
-
-**balance_availability_duration_unit:** `typing.Optional[UpdateBalanceDefinitionRequestBalanceAvailabilityDurationUnit]` β Unit of time for balance validity.
-
-
-
-
-
--
-
-**balance_availability_duration_value:** `typing.Optional[int]` β Number of time units before the balance expires.
-
-
-
-
-
--
-
-**balance_expiration_date:** `typing.Optional[str]` β Expiration date (`dd/mm` format) or empty if not applicable.
-
-
-
-
-
--
-
-**balance_option_amount_overtaking_strategy:** `typing.Optional[
- UpdateBalanceDefinitionRequestBalanceOptionAmountOvertakingStrategy
-]` β Defines whether partial credit is allowed when reaching max balance.
-
-
-
-
-
--
-
-**balance_option_credit_rounding:** `typing.Optional[UpdateBalanceDefinitionRequestBalanceOptionCreditRounding]` β Rounding strategy for credit transactions.
-
-
-
-
-
--
-
-**balance_option_debit_rounding:** `typing.Optional[UpdateBalanceDefinitionRequestBalanceOptionDebitRounding]` β Rounding strategy for debit transactions.
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Short description of the balance definition.
-
-
-
-
-
--
-
-**image_ref:** `typing.Optional[str]` β URL of an optional image reference.
-
-
-
-
-
--
-
-**max_amount:** `typing.Optional[float]` β Maximum allowable balance amount.
-
-
-
-
-
--
-
-**max_credit_amount_limit:** `typing.Optional[float]` β Maximum credit allowed per operation.
-
-
-
-
-
--
-
-**max_debit_amount_limit:** `typing.Optional[float]` β Maximum debit allowed per operation.
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Optional metadata for the balance definition.
-
-
-
-
-
--
-
-**min_amount:** `typing.Optional[float]` β Minimum allowable balance amount.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.delete_balance_definition(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Delete Balance definition
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.delete_balance_definition(
- pid="pid",
- bdid="bdid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.create_balance_limit(...) -> AsyncHttpResponse[BalanceLimit]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates balance limit and sends the created UUID along with the data
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.create_balance_limit(
- pid="pid",
- bdid="bdid",
- constraint_type="transaction",
- duration_unit="day",
- duration_value=1,
- transaction_type="credit",
- value=1,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**constraint_type:** `CreateBalanceLimitRequestConstraintType` β Defines whether the limit applies to transaction count or amount.
-
-
-
-
-
--
-
-**duration_unit:** `CreateBalanceLimitRequestDurationUnit` β Unit of time for which the limit is applicable.
-
-
-
-
-
--
-
-**duration_value:** `int` β Number of time units for the balance limit.
-
-
-
-
-
--
-
-**transaction_type:** `CreateBalanceLimitRequestTransactionType` β Specifies whether the limit applies to credit or debit transactions.
-
-
-
-
-
--
-
-**value:** `int` β Maximum allowed value for the specified constraint type.
-
-
-
-
-
--
-
-**sliding_schedule:** `typing.Optional[bool]` β Determines if the limit resets on a rolling schedule.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_balance_limit(...) -> AsyncHttpResponse[BalanceLimit]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Fetches balance limits and send the created UUID along with the data
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_balance_limit(
- pid="pid",
- bdid="bdid",
- blid="blid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**blid:** `str` β Balance Limit Id
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetBalanceLimitRequestVersion]` β Version
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.update_balance_limit(...) -> AsyncHttpResponse[BalanceLimit]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates balance limit
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.update_balance_limit(
- pid="pid",
- bdid="bdid",
- blid="blid",
- constraint_type="transaction",
- duration_unit="day",
- duration_value=1,
- transaction_type="credit",
- value=1,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**blid:** `str` β Balance Limit Id
-
-
-
-
-
--
-
-**constraint_type:** `UpdateBalanceLimitRequestConstraintType` β Defines whether the limit applies to transaction count or amount.
-
-
-
-
-
--
-
-**duration_unit:** `UpdateBalanceLimitRequestDurationUnit` β Unit of time for which the limit is applicable.
-
-
-
-
-
--
-
-**duration_value:** `int` β Number of time units for the balance limit.
-
-
-
-
-
--
-
-**transaction_type:** `UpdateBalanceLimitRequestTransactionType` β Specifies whether the limit applies to credit or debit transactions.
-
-
-
-
-
--
-
-**value:** `int` β Maximum allowed value for the specified constraint type.
-
-
-
-
-
--
-
-**sliding_schedule:** `typing.Optional[bool]` β Determines if the limit resets on a rolling schedule.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.delete_balance_limit(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Delete balance limit
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.delete_balance_limit(
- pid="pid",
- bdid="bdid",
- blid="blid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**bdid:** `str` β Balance Definition Id
-
-
-
-
-
--
-
-**blid:** `str` β Balance Limit Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_contact_balances(...) -> AsyncHttpResponse[GetContactBalancesResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns balance list
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_contact_balances(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.create_balance_order(...) -> AsyncHttpResponse[CreateBalanceOrderResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns created order
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.create_balance_order(
- pid="pid",
- amount=1.1,
- balance_definition_id="balanceDefinitionId",
- contact_id=1,
- due_at="dueAt",
- source="source",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**amount:** `float` β Order amount (must be non-zero).
-
-
-
-
-
--
-
-**balance_definition_id:** `str` β Unique identifier (UUID) of the associated balance definition.
-
-
-
-
-
--
-
-**contact_id:** `int` β Unique identifier of the contact placing the order (must be β₯ 1).
-
-
-
-
-
--
-
-**due_at:** `str` β RFC3339 timestamp specifying when the order is due.
-
-
-
-
-
--
-
-**source:** `str` β Specifies the origin of the order (`engine` or `user`).
-
-
-
-
-
--
-
-**expires_at:** `typing.Optional[str]` β Optional RFC3339 timestamp defining order expiration.
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Optional metadata associated with the order.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_subscription_balances(...) -> AsyncHttpResponse[GetSubscriptionBalancesResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns subscription balances
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_subscription_balances(
- pid="pid",
- cid="cid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**cid:** `str` β Contact Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.create_subscription_balances(...) -> AsyncHttpResponse[PostLoyaltyBalanceProgramsPidSubscriptionsCidBalancesResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a balance for a contact
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.create_subscription_balances(
- pid="pid",
- cid="cid",
- balance_definition_id="balanceDefinitionId",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**cid:** `str` β Contact Id
-
-
-
-
-
--
-
-**balance_definition_id:** `str` β Unique identifier (UUID) of the balance definition associated with the new balance.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.get_transaction_history_api(...) -> AsyncHttpResponse[GetLoyaltyBalanceProgramsPidTransactionHistoryResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns transaction history
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.get_transaction_history_api(
- pid="pid",
- contact_id=1,
- balance_definition_id="balance_definition_id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**contact_id:** `int` β Contact ID
-
-
-
-
-
--
-
-**balance_definition_id:** `str` β Balance Definition ID
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Limit the number of records returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Skip a number of records
-
-
-
-
-
--
-
-**sort_field:** `typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField]` β Field to sort by
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort]` β Sort order, either asc or desc
-
-
-
-
-
--
-
-**filters:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β Filters to apply
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.begin_transaction(...) -> AsyncHttpResponse[Transaction]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates new transaction and returns information
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.begin_transaction(
- pid="pid",
- amount=1.1,
- balance_definition_id="balanceDefinitionId",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**amount:** `float` β Transaction amount (must be provided).
-
-
-
-
-
--
-
-**balance_definition_id:** `str` β Unique identifier (UUID) of the associated balance definition.
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β Unique identifier for the loyalty subscription (required unless `contactId` is provided).
-
-
-
-
-
--
-
-**auto_complete:** `typing.Optional[bool]` β Whether the transaction should be automatically completed.
-
-
-
-
-
--
-
-**balance_expiry_in_minutes:** `typing.Optional[int]` β Optional expiry time for the balance in minutes (must be greater than 0 if provided).
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]` β Unique identifier of the contact involved in the transaction (required unless `LoyaltySubscriptionId` is provided).
-
-
-
-
-
--
-
-**event_time:** `typing.Optional[str]` β Optional timestamp specifying when the transaction occurred.
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Optional metadata associated with the transaction.
-
-
-
-
-
--
-
-**ttl:** `typing.Optional[int]` β Optional time-to-live for the transaction (must be greater than 0 if provided).
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.cancel_transaction(...) -> AsyncHttpResponse[Transaction]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Cancels transaction
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.cancel_transaction(
- pid="pid",
- tid="tid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**tid:** `str` β Transaction Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.balance.complete_transaction(...) -> AsyncHttpResponse[Transaction]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Completes transaction
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.balance.complete_transaction(
- pid="pid",
- tid="tid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program Id
-
-
-
-
-
--
-
-**tid:** `str` β Transaction Id
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Program
-client.program.get_lp_list(...) -> AsyncHttpResponse[GetLpListResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns list of loyalty programs
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.get_lp_list()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort_field:** `typing.Optional[GetLpListRequestSortField]` β Sort documents by field
-
-
-
-
-
--
-
-**sort:** `typing.Optional[str]` β Sort documents by field
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.create_new_lp(...) -> AsyncHttpResponse[LoyaltyProgram]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.create_new_lp(
- name="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Required name of the loyalty program (max 128 chars).
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Optional description of the loyalty program (max 256 chars).
-
-
-
-
-
--
-
-**document_id:** `typing.Optional[str]` β Optional unique document ID.
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Optional metadata related to the loyalty program.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.get_loyalty_program_info(...) -> AsyncHttpResponse[LoyaltyProgram]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.get_loyalty_program_info(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.update_loyalty_program(...) -> AsyncHttpResponse[LoyaltyProgram]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.update_loyalty_program(
- pid="pid",
- name="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**name:** `str` β Loyalty Program name
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Loyalty Program description
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Loyalty Program meta data
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.delete_loyalty_program(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes Loyalty Program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.delete_loyalty_program(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.partially_update_loyalty_program(...) -> AsyncHttpResponse[LoyaltyProgram]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Partially updates loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.partially_update_loyalty_program(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β Loyalty Program description
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Loyalty Program meta data
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Loyalty Program name
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.get_parameter_subscription_info(...) -> AsyncHttpResponse[GetParameterSubscriptionInfoResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get Information of balances, tiers, rewards and subscription members for a subscription
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.get_parameter_subscription_info(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[str]` β The contact ID to filter by.
-
-
-
-
-
--
-
-**params:** `typing.Optional[str]` β A list of filter parameters for querying the subscription info.
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β The loyalty subscription ID to filter by.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.publish_loyalty_program(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Publishes loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.publish_loyalty_program(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.subscribe_member_to_a_subscription(...) -> AsyncHttpResponse[SubscribeMemberToASubscriptionResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Add member to a subscription
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.subscribe_member_to_a_subscription(
- pid="pid",
- member_contact_ids=[1],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**member_contact_ids:** `typing.Sequence[int]` β Required, each item must be greater than or equal to 1
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]` β Required if LoyaltySubscriptionId is not provided, must be greater than 0
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β Required if ContactId is not provided, max length 64
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.delete_contact_members(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes member from a subscription
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.delete_contact_members(
- pid="pid",
- member_contact_ids="memberContactIds",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**member_contact_ids:** `str` β Comma-separated list of member contact IDs to delete from the subscription.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.program.subscribe_to_loyalty_program(...) -> AsyncHttpResponse[SubscribeToLoyaltyProgramResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Subscribes to a loyalty program
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.program.subscribe_to_loyalty_program(
- pid="pid",
- contact_id=1,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID. A unique identifier for the loyalty program.
-
-
-
-
-
--
-
-**contact_id:** `int` β Required contact ID; must be greater than 0.
-
-
-
-
-
--
-
-**creation_date:** `typing.Optional[str]` β Optional custom date-time format.
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β Optional subscription ID (max length 64).
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Reward
-client.reward.get_code_count(...) -> AsyncHttpResponse[GetCodeCountResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get code count
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.get_code_count(
- pid="pid",
- cpid="cpid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**cpid:** `str` β Code Pool ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.get_reward_page_api(...) -> AsyncHttpResponse[GetLoyaltyOfferProgramsPidOffersResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns a reward page
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.get_reward_page_api(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Page size
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Pagination offset
-
-
-
-
-
--
-
-**state:** `typing.Optional[str]` β State of the reward
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetLoyaltyOfferProgramsPidOffersRequestVersion]` β Version
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.create_reward(...) -> AsyncHttpResponse[CreateRewardResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new reward in the loyalty program.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.create_reward(
- pid="pid",
- name="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**name:** `str` β Internal name of the reward
-
-
-
-
-
--
-
-**public_description:** `typing.Optional[str]` β Public facing description of the reward
-
-
-
-
-
--
-
-**public_image:** `typing.Optional[str]` β URL of the public image for the reward
-
-
-
-
-
--
-
-**public_name:** `typing.Optional[str]` β Public facing name of the reward
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.create_voucher(...) -> AsyncHttpResponse[CreateVoucherResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Create a voucher and attribute it to a specific membership.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.create_voucher(
- pid="pid",
- reward_id="rewardId",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**reward_id:** `str` β Reward id
-
-
-
-
-
--
-
-**code:** `typing.Optional[str]` β Code generated to attribute reward to a contact
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]` β Contact to attribute the reward
-
-
-
-
-
--
-
-**expiration_date:** `typing.Optional[str]` β Reward expiration date
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β One of contactId or loyaltySubscriptionId is required
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Offer meta information (key/value object)
-
-
-
-
-
--
-
-**value:** `typing.Optional[float]` β Value of the selected reward config
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.redeem_voucher(...) -> AsyncHttpResponse[Redeem]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a request to redeem a voucher.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.redeem_voucher(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**attributed_reward_id:** `typing.Optional[str]` β Unique identifier for the attributed reward
-
-
-
-
-
--
-
-**code:** `typing.Optional[str]` β Redemption code for the reward
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]` β Unique identifier for the contact
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β Identifier for the loyalty subscription
-
-
-
-
-
--
-
-**meta:** `typing.Optional[typing.Dict[str, typing.Any]]` β Additional metadata associated with the redeem request
-
-
-
-
-
--
-
-**order:** `typing.Optional[RedeemVoucherRequestOrder]` β Order details for the redemption
-
-
-
-
-
--
-
-**reward_id:** `typing.Optional[str]` β Unique identifier for the reward
-
-
-
-
-
--
-
-**ttl:** `typing.Optional[int]` β Time to live in seconds for the redemption request
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.complete_redeem_transaction(...) -> AsyncHttpResponse[Redeem]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Completes voucher redeem request.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.complete_redeem_transaction(
- pid="pid",
- tid="tid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**tid:** `str` β Redeem transaction ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.revoke_vouchers(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Revoke attributed vouchers.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.revoke_vouchers(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**attributed_reward_ids:** `typing.Optional[str]` β Reward Attribution IDs (comma seperated)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.validate_reward(...) -> AsyncHttpResponse[ValidateRewardResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Validates a reward.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.validate_reward(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**attributed_reward_id:** `typing.Optional[str]` β Unique identifier for the attributed reward
-
-
-
-
-
--
-
-**code:** `typing.Optional[str]` β Validation code for the reward
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]` β Unique identifier for the contact
-
-
-
-
-
--
-
-**loyalty_subscription_id:** `typing.Optional[str]` β Identifier for the loyalty subscription
-
-
-
-
-
--
-
-**point_of_sell_id:** `typing.Optional[str]` β Identifier for the point of sale
-
-
-
-
-
--
-
-**reward_id:** `typing.Optional[str]` β Unique identifier for the reward
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.get_reward_information(...) -> AsyncHttpResponse[GetLoyaltyOfferProgramsPidRewardsRidResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns reward information.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.get_reward_information(
- pid="pid",
- rid="rid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**rid:** `str` β Reward ID
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetLoyaltyOfferProgramsPidRewardsRidRequestVersion]` β Version
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.reward.get_voucher_for_a_contact(...) -> AsyncHttpResponse[GetLoyaltyOfferProgramsPidVouchersResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get voucher for a contact
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.reward.get_voucher_for_a_contact(
- pid="pid",
- contact_id=1,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**contact_id:** `int` β Contact ID
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Page size
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Pagination offset
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetLoyaltyOfferProgramsPidVouchersRequestSort]` β Sort order
-
-
-
-
-
--
-
-**sort_field:** `typing.Optional[GetLoyaltyOfferProgramsPidVouchersRequestSortField]` β Sort field
-
-
-
-
-
--
-
-**metadata_key_value:** `typing.Optional[str]` β Metadata value for a Key filter
-
-
-
-
-
--
-
-**reward_id:** `typing.Optional[str]` β Reward ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Tier
-client.tier.add_subscription_to_tier(...) -> AsyncHttpResponse[AddSubscriptionToTierResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Manually assigns a tier to a specific membership.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.add_subscription_to_tier(
- pid="pid",
- cid="cid",
- tid="tid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**cid:** `str` β Contact ID
-
-
-
-
-
--
-
-**tid:** `str` β Tier ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.get_list_of_tier_groups(...) -> AsyncHttpResponse[GetListOfTierGroupsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns the list of tier groups defined within the loyalty program.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.get_list_of_tier_groups(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetListOfTierGroupsRequestVersion]` β Select 'active' to retrieve list of all tier groups which are live for clients. Select draft to retrieve list of all non deleted tier groups.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.create_tier_group(...) -> AsyncHttpResponse[TierGroup]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new tier group in a loyalty program. *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.create_tier_group(
- pid="pid",
- name="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**name:** `str` β Name of the tier group
-
-
-
-
-
--
-
-**downgrade_strategy:** `typing.Optional[CreateTierGroupRequestDowngradeStrategy]` β Select real_time to downgrade tier on real time balance updates. Select membership_anniversary to downgrade tier on subscription anniversary. Select tier_anniversary to downgrade tier on tier anniversary.
-
-
-
-
-
--
-
-**tier_order:** `typing.Optional[typing.Sequence[str]]` β Order of the tiers in the group in ascending order
-
-
-
-
-
--
-
-**upgrade_strategy:** `typing.Optional[CreateTierGroupRequestUpgradeStrategy]` β Select real_time to upgrade tier on real time balance updates. Select membership_anniversary to upgrade tier on subscription anniversary. Select tier_anniversary to upgrade tier on tier anniversary.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.get_tier_group(...) -> AsyncHttpResponse[TierGroup]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns tier group information.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.get_tier_group(
- pid="pid",
- gid="gid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**gid:** `str` β Tier group ID
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetTierGroupRequestVersion]` β Select active to retrieve active version of tier group. Select draft to retrieve latest changes in tier group.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.update_tier_group(...) -> AsyncHttpResponse[TierGroup]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Updates a tier group from a loyalty program. *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.update_tier_group(
- pid="pid",
- gid="gid",
- downgrade_strategy="real_time",
- name="name",
- tier_order=["tierOrder"],
- upgrade_strategy="real_time",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**gid:** `str` β Tier group ID
-
-
-
-
-
--
-
-**downgrade_strategy:** `UpdateTierGroupRequestDowngradeStrategy` β Select real_time to downgrade tier on real time balance updates. Select membership_anniversary to downgrade tier on subscription anniversary. Select tier_anniversary to downgrade tier on tier anniversary.
-
-
-
-
-
--
-
-**name:** `str` β Name of the tier group
-
-
-
-
-
--
-
-**tier_order:** `typing.Sequence[str]` β Order of the tiers in the group in ascending order
-
-
-
-
-
--
-
-**upgrade_strategy:** `UpdateTierGroupRequestUpgradeStrategy` β Select real_time to upgrade tier on real time balance updates. Select membership_anniversary to upgrade tier on subscription anniversary. Select tier_anniversary to upgrade tier on tier anniversary.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.delete_tier_group(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes a tier group from a loyalty program. *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.delete_tier_group(
- pid="pid",
- gid="gid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**gid:** `str` β Tier group ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.create_tier_for_tier_group(...) -> AsyncHttpResponse[Tier]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Creates a new tier in a loyalty program tier group. *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.tier import CreateTierForTierGroupRequestAccessConditionsItem
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.create_tier_for_tier_group(
- pid="pid",
- gid="gid",
- access_conditions=[CreateTierForTierGroupRequestAccessConditionsItem()],
- name="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**gid:** `str` β Tier group ID
-
-
-
-
-
--
-
-**access_conditions:** `typing.Sequence[CreateTierForTierGroupRequestAccessConditionsItem]`
-
-
-
-
-
--
-
-**name:** `str` β Name of the tier to be created
-
-
-
-
-
--
-
-**image_ref:** `typing.Optional[str]` β Image of the tier
-
-
-
-
-
--
-
-**tier_rewards:** `typing.Optional[typing.Sequence[CreateTierForTierGroupRequestTierRewardsItem]]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.get_loyalty_program_tier(...) -> AsyncHttpResponse[GetLoyaltyProgramTierResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Returns the list of tiers defined within the loyalty program.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.get_loyalty_program_tier(
- pid="pid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**version:** `typing.Optional[GetLoyaltyProgramTierRequestVersion]` β Select 'active' to retrieve list of all tiers which are live for clients. Select draft to retrieve list of all non deleted tiers.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.update_tier(...) -> AsyncHttpResponse[Tier]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Modifies an existing tier for the specified tier group *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.tier import (
- UpdateTierRequestAccessConditionsItem,
- UpdateTierRequestTierRewardsItem,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.update_tier(
- pid="pid",
- tid="tid",
- access_conditions=[UpdateTierRequestAccessConditionsItem()],
- name="name",
- tier_rewards=[UpdateTierRequestTierRewardsItem()],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**tid:** `str` β Tier ID
-
-
-
-
-
--
-
-**access_conditions:** `typing.Sequence[UpdateTierRequestAccessConditionsItem]`
-
-
-
-
-
--
-
-**name:** `str` β Name of the tier to be created
-
-
-
-
-
--
-
-**tier_rewards:** `typing.Sequence[UpdateTierRequestTierRewardsItem]`
-
-
-
-
-
--
-
-**image_ref:** `typing.Optional[str]` β Image of the tier
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tier.delete_tier(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Deletes a tier from a loyalty program tier group. *(The changes will take effect with the next publication of the loyalty program)*
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tier.delete_tier(
- pid="pid",
- tid="tid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pid:** `str` β Loyalty Program ID
-
-
-
-
-
--
-
-**tid:** `str` β Tier ID
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## EmailCampaigns
-client.email_campaigns.get_email_campaigns(...) -> AsyncHttpResponse[GetEmailCampaignsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-The response payload for this endpoint has changed
-
-You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.get_email_campaigns()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**type:** `typing.Optional[GetEmailCampaignsRequestType]` β Filter on the type of the campaigns
-
-
-
-
-
--
-
-**status:** `typing.Optional[GetEmailCampaignsRequestStatus]` β Filter on the status of the campaign
-
-
-
-
-
--
-
-**statistics:** `typing.Optional[GetEmailCampaignsRequestStatistics]` β Filter on type of the statistics required. Example **globalStats** value will only fetch globalStats info of the campaign in returned response.This option only returns data for events occurred in the last 6 months.For older campaigns, itβs advisable to use the **Get Campaign Report** endpoint.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used**. Starting (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the sent email campaigns. **Prefer to pass your timezone in date-time format for accurate result** ( only available if either 'status' not passed and if passed is set to 'sent' )
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used**. Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the sent email campaigns. **Prefer to pass your timezone in date-time format for accurate result** ( only available if either 'status' not passed and if passed is set to 'sent' )
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetEmailCampaignsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**exclude_html_content:** `typing.Optional[bool]` β Use this flag to exclude htmlContent from the response body. If set to **true**, htmlContent field will be returned as empty string in the response body
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.create_email_campaign(...) -> AsyncHttpResponse[CreateEmailCampaignResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.email_campaigns import CreateEmailCampaignRequestSender
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.create_email_campaign(
- name="Newsletter - May 2017",
- sender=CreateEmailCampaignRequestSender(),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Name of the campaign
-
-
-
-
-
--
-
-**sender:** `CreateEmailCampaignRequestSender` β Sender details including id or email and name (_optional_). Only one of either Sender's email or Sender's ID shall be passed in one request at a time. For example: **{"name":"xyz", "email":"example@abc.com"}** **{"name":"xyz", "id":123}**
-
-
-
-
-
--
-
-**ab_testing:** `typing.Optional[bool]` β Status of A/B Test. abTesting = false means it is disabled & abTesting = true means it is enabled. **subjectA, subjectB, splitRule, winnerCriteria & winnerDelay** will be considered when abTesting is set to true. subjectA & subjectB are mandatory together & subject if passed is ignored. **Can be set to true only if sendAtBestTime is false**. You will be able to set up two subject lines for your campaign and send them to a random sample of your total recipients. Half of the test group will receive version A, and the other half will receive version B
-
-
-
-
-
--
-
-**attachment_url:** `typing.Optional[str]` β Absolute url of the attachment (no local file). Extension allowed: #### xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub and eps
-
-
-
-
-
--
-
-**email_expiration_date:** `typing.Optional[CreateEmailCampaignRequestEmailExpirationDate]` β To reduce your carbon footprint, set an expiration date for your email. If supported, it will be automatically deleted from the recipientβs inbox, saving storage space and energy. Learn more about setting an email expiration date. For reference , ``https://help.brevo.com/hc/en-us/articles/4413566705298-Create-an-email-campaign``
-
-
-
-
-
--
-
-**footer:** `typing.Optional[str]` β Footer of the email campaign
-
-
-
-
-
--
-
-**header:** `typing.Optional[str]` β Header of the email campaign
-
-
-
-
-
--
-
-**html_content:** `typing.Optional[str]` β Mandatory if htmlUrl and templateId are empty. Body of the message (HTML).
-
-
-
-
-
--
-
-**html_url:** `typing.Optional[str]` β **Mandatory if htmlContent and templateId are empty**. Url to the message (HTML). For example: **https://html.domain.com**
-
-
-
-
-
--
-
-**increase_rate:** `typing.Optional[int]` β **Mandatory if ipWarmupEnable is set to true**. Set a percentage increase rate for warming up your ip. We recommend you set the increase rate to 30% per day. If you want to send the same number of emails every day, set the daily increase value to 0%.
-
-
-
-
-
--
-
-**initial_quota:** `typing.Optional[int]` β **Mandatory if ipWarmupEnable is set to true**. Set an initial quota greater than 1 for warming up your ip. We recommend you set a value of 3000.
-
-
-
-
-
--
-
-**inline_image_activation:** `typing.Optional[bool]` β Use true to embedded the images in your email. Final size of the email should be less than **4MB**. Campaigns with embedded images can _not be sent to more than 5000 contacts_
-
-
-
-
-
--
-
-**ip_warmup_enable:** `typing.Optional[bool]` β **Available for dedicated ip clients**. Set this to true if you wish to warm up your ip.
-
-
-
-
-
--
-
-**mirror_active:** `typing.Optional[bool]` β Use true to enable the mirror link
-
-
-
-
-
--
-
-**params:** `typing.Optional[typing.Dict[str, typing.Any]]` β Pass the set of attributes to customize the type classic campaign. For example: **{"FNAME":"Joe", "LNAME":"Doe"}**. Only available if **type** is **classic**. It's considered only if campaign is in _New Template Language format_. The New Template Language is dependent on the values of **subject, htmlContent/htmlUrl, sender.name & toField**
-
-
-
-
-
--
-
-**preview_text:** `typing.Optional[str]` β Preview text or preheader of the email campaign
-
-
-
-
-
--
-
-**recipients:** `typing.Optional[CreateEmailCampaignRequestRecipients]` β Segment ids and List ids to include/exclude from campaign
-
-
-
-
-
--
-
-**reply_to:** `typing.Optional[str]` β Email on which the campaign recipients will be able to reply to
-
-
-
-
-
--
-
-**scheduled_at:** `typing.Optional[str]` β Sending UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result**. If sendAtBestTime is set to true, your campaign will be sent according to the date passed (ignoring the time part). For example: **2017-06-01T12:30:00+02:00**
-
-
-
-
-
--
-
-**send_at_best_time:** `typing.Optional[bool]` β Set this to true if you want to send your campaign at best time.
-
-
-
-
-
--
-
-**split_rule:** `typing.Optional[int]` β Add the size of your test groups. **Mandatory if abTesting = true & 'recipients' is passed**. We'll send version A and B to a random sample of recipients, and then the winning version to everyone else
-
-
-
-
-
--
-
-**subject:** `typing.Optional[str]` β Subject of the campaign. **Mandatory if abTesting is false**. Ignored if abTesting is true.
-
-
-
-
-
--
-
-**subject_a:** `typing.Optional[str]` β Subject A of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value
-
-
-
-
-
--
-
-**subject_b:** `typing.Optional[str]` β Subject B of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the campaign
-
-
-
-
-
--
-
-**template_id:** `typing.Optional[int]` β **Mandatory if htmlContent and htmlUrl are empty**. Id of the transactional email template with status _active_. Used to copy only its content fetched from htmlContent/htmlUrl to an email campaign for RSS feature.
-
-
-
-
-
--
-
-**to_field:** `typing.Optional[str]` β To personalize the **To** Field. If you want to include the first name and last name of your recipient, add **{FNAME} {LNAME}**. These contact attributes must already exist in your Brevo account. If input parameter **params** used please use **{{contact.FNAME}} {{contact.LNAME}}** for personalization
-
-
-
-
-
--
-
-**unsubscription_page_id:** `typing.Optional[str]` β Enter an unsubscription page id. The page id is a 24 digit alphanumeric id that can be found in the URL when editing the page. If not entered, then the default unsubscription page will be used.
-
-
-
-
-
--
-
-**update_form_id:** `typing.Optional[str]` β **Mandatory if templateId is used containing the {{ update_profile }} tag**. Enter an update profile form id. The form id is a 24 digit alphanumeric id that can be found in the URL when editing the form. If not entered, then the default update profile form will be used.
-
-
-
-
-
--
-
-**utm_campaign:** `typing.Optional[str]` β Customize the utm_campaign value. If this field is empty, the campaign name will be used. Only alphanumeric characters and spaces are allowed
-
-
-
-
-
--
-
-**winner_criteria:** `typing.Optional[CreateEmailCampaignRequestWinnerCriteria]` β Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed
-
-
-
-
-
--
-
-**winner_delay:** `typing.Optional[int]` β Choose the duration of the test in hours. Maximum is 7 days, pass 24*7 = 168 hours. The winning version will be sent at the end of the test. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerDelay` is ignored if passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.upload_image_to_gallery(...) -> AsyncHttpResponse[UploadImageToGalleryResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.upload_image_to_gallery(
- image_url="https://somedomain.com/image1.jpg",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**image_url:** `str` β The absolute url of the image (**no local file**). Maximum allowed size for image is **2MB**. Allowed extensions for images are: #### jpeg, jpg, png, bmp, gif.
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the image.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.get_email_campaign(...) -> AsyncHttpResponse[GetEmailCampaignResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.get_email_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**statistics:** `typing.Optional[GetEmailCampaignRequestStatistics]` β Filter on type of the statistics required. Example **globalStats** value will only fetch globalStats info of the campaign in returned response.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.update_email_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.update_email_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**ab_testing:** `typing.Optional[bool]` β Status of A/B Test. abTesting = false means it is disabled & abTesting = true means it is enabled. **subjectA, subjectB, splitRule, winnerCriteria & winnerDelay** will be considered when abTesting is set to true. subjectA & subjectB are mandatory together & subject if passed is ignored. **Can be set to true only if sendAtBestTime is false**. You will be able to set up two subject lines for your campaign and send them to a random sample of your total recipients. Half of the test group will receive version A, and the other half will receive version B
-
-
-
-
-
--
-
-**attachment_url:** `typing.Optional[str]` β Absolute url of the attachment (no local file). Extension allowed: #### xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub and eps'
-
-
-
-
-
--
-
-**email_expiration_date:** `typing.Optional[UpdateEmailCampaignRequestEmailExpirationDate]` β To reduce your carbon footprint, set an expiration date for your email. If supported, it will be automatically deleted from the recipientβs inbox, saving storage space and energy.
-
-
-
-
-
--
-
-**footer:** `typing.Optional[str]` β Footer of the email campaign
-
-
-
-
-
--
-
-**header:** `typing.Optional[str]` β Header of the email campaign
-
-
-
-
-
--
-
-**html_content:** `typing.Optional[str]` β Body of the message (HTML version). If the campaign is designed using Drag & Drop editor via HTML content, then the design page will not have Drag & Drop editor access for that campaign. **REQUIRED if htmlUrl is empty**
-
-
-
-
-
--
-
-**html_url:** `typing.Optional[str]` β Url which contents the body of the email message. **REQUIRED if htmlContent is empty**
-
-
-
-
-
--
-
-**increase_rate:** `typing.Optional[int]` β Set a percentage increase rate for warming up your ip. We recommend you set the increase rate to 30% per day. If you want to send the same number of emails every day, set the daily increase value to 0%.
-
-
-
-
-
--
-
-**initial_quota:** `typing.Optional[int]` β Set an initial quota greater than 1 for warming up your ip. We recommend you set a value of 3000.
-
-
-
-
-
--
-
-**inline_image_activation:** `typing.Optional[bool]` β Status of inline image. inlineImageActivation = false means image canβt be embedded, & inlineImageActivation = true means image can be embedded, in the email. You cannot send a campaign of more than **4MB** with images embedded in the email. Campaigns with the images embedded in the email _must be sent to less than 5000 contacts_.
-
-
-
-
-
--
-
-**ip_warmup_enable:** `typing.Optional[bool]` β **Available for dedicated ip clients**. Set this to true if you wish to warm up your ip.
-
-
-
-
-
--
-
-**mirror_active:** `typing.Optional[bool]` β Status of mirror links in campaign. mirrorActive = false means mirror links are deactivated, & mirrorActive = true means mirror links are activated, in the campaign
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the campaign
-
-
-
-
-
--
-
-**params:** `typing.Optional[typing.Dict[str, typing.Any]]` β Pass the set of attributes to customize the type classic campaign. For example: **{"FNAME":"Joe", "LNAME":"Doe"}**. Only available if **type** is **classic**. It's considered only if campaign is in _New Template Language format_. The New Template Language is dependent on the values of **subject, htmlContent/htmlUrl, sender.name & toField**
-
-
-
-
-
--
-
-**preview_text:** `typing.Optional[str]` β Preview text or preheader of the email campaign
-
-
-
-
-
--
-
-**recipients:** `typing.Optional[UpdateEmailCampaignRequestRecipients]` β Segment ids and List ids to include/exclude from campaign
-
-
-
-
-
--
-
-**recurring:** `typing.Optional[bool]` β **FOR TRIGGER ONLY !** Type of trigger campaign.recurring = false means contact can receive the same Trigger campaign only once, & recurring = true means contact can receive the same Trigger campaign several times
-
-
-
-
-
--
-
-**reply_to:** `typing.Optional[str]` β Email on which campaign recipients will be able to reply to
-
-
-
-
-
--
-
-**scheduled_at:** `typing.Optional[str]` β UTC date-time on which the campaign has to run (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.** If sendAtBestTime is set to true, your campaign will be sent according to the date passed (ignoring the time part).
-
-
-
-
-
--
-
-**send_at_best_time:** `typing.Optional[bool]` β Set this to true if you want to send your campaign at best time. Note:- **if true, warmup ip will be disabled.**
-
-
-
-
-
--
-
-**sender:** `typing.Optional[UpdateEmailCampaignRequestSender]` β Sender details including id or email and name (optional). Only one of either Sender's email or Sender's ID shall be passed in one request at a time. For example: **{"name":"xyz", "email":"example@abc.com"}** **{"name":"xyz", "id":123}**
-
-
-
-
-
--
-
-**split_rule:** `typing.Optional[int]` β Add the size of your test groups. **Mandatory if abTesting = true & 'recipients' is passed**. We'll send version A and B to a random sample of recipients, and then the winning version to everyone else
-
-
-
-
-
--
-
-**subject:** `typing.Optional[str]` β Subject of the campaign
-
-
-
-
-
--
-
-**subject_a:** `typing.Optional[str]` β Subject A of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value
-
-
-
-
-
--
-
-**subject_b:** `typing.Optional[str]` β Subject B of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the campaign
-
-
-
-
-
--
-
-**to_field:** `typing.Optional[str]` β To personalize the **To** Field. If you want to include the first name and last name of your recipient, add **{FNAME} {LNAME}**. These contact attributes must already exist in your Brevo account. If input parameter **params** used please use **{{contact.FNAME}} {{contact.LNAME}}** for personalization
-
-
-
-
-
--
-
-**unsubscription_page_id:** `typing.Optional[str]` β Enter an unsubscription page id. The page id is a 24 digit alphanumeric id that can be found in the URL when editing the page.
-
-
-
-
-
--
-
-**update_form_id:** `typing.Optional[str]` β **Mandatory if templateId is used containing the {{ update_profile }} tag**. Enter an update profile form id. The form id is a 24 digit alphanumeric id that can be found in the URL when editing the form.
-
-
-
-
-
--
-
-**utm_campaign:** `typing.Optional[str]` β Customize the utm_campaign value. If this field is empty, the campaign name will be used. Only alphanumeric characters and spaces are allowed
-
-
-
-
-
--
-
-**winner_criteria:** `typing.Optional[UpdateEmailCampaignRequestWinnerCriteria]` β Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed
-
-
-
-
-
--
-
-**winner_delay:** `typing.Optional[int]` β Choose the duration of the test in hours. Maximum is 7 days, pass 24*7 = 168 hours. The winning version will be sent at the end of the test. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerDelay` is ignored if passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.delete_email_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.delete_email_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.get_ab_test_campaign_result(...) -> AsyncHttpResponse[GetAbTestCampaignResultResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Obtain winning version of an A/B test email campaign
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.get_ab_test_campaign_result(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the A/B test campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.email_export_recipients(...) -> AsyncHttpResponse[EmailExportRecipientsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.email_export_recipients(
- campaign_id=1000000,
- recipients_type="all",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**recipients_type:** `EmailExportRecipientsRequestRecipientsType` β Type of recipients to export for a campaign
-
-
-
-
-
--
-
-**notify_url:** `typing.Optional[str]` β Webhook called once the export process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.send_email_campaign_now(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.send_email_campaign_now(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.send_report(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-A PDF will be sent to the specified email addresses
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, SendReportEmail
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.send_report(
- campaign_id=1000000,
- email=SendReportEmail(
- body="Please find attached the report of our last email campaign.",
- to=["jim.suehan@example.com"],
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**email:** `SendReportEmail` β Custom attributes for the report email.
-
-
-
-
-
--
-
-**language:** `typing.Optional[SendReportLanguage]` β Language of email content for campaign report sending.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.send_test_email(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.send_test_email(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**email_to:** `typing.Optional[typing.Sequence[str]]` β List of the email addresses of the recipients whom you wish to send the test mail. _If left empty, the test mail will be sent to your entire test list. You can not send more than 50 test emails per day_.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.get_shared_template_url(...) -> AsyncHttpResponse[GetSharedTemplateUrlResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get a unique URL to share & import an email template from one Brevo account to another.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.get_shared_template_url(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign or template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.email_campaigns.update_campaign_status(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.email_campaigns.update_campaign_status(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**status:** `typing.Optional[UpdateCampaignStatusStatus]` β Note:- **replicateTemplate** status will be available **only for template type campaigns.**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## SmsCampaigns
-client.sms_campaigns.get_sms_campaigns(...) -> AsyncHttpResponse[GetSmsCampaignsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.get_sms_campaigns()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**status:** `typing.Optional[GetSmsCampaignsRequestStatus]` β Status of campaign.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the sent sms campaigns. **Prefer to pass your timezone in date-time format for accurate result** ( only available if either 'status' not passed and if passed is set to 'sent' )
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the sent sms campaigns. **Prefer to pass your timezone in date-time format for accurate result** ( only available if either 'status' not passed and if passed is set to 'sent' )
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number limitation for the result returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Beginning point in the list to retrieve from.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSmsCampaignsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.create_sms_campaign(...) -> AsyncHttpResponse[CreateSmsCampaignResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.create_sms_campaign(
- content="Get a discount by visiting our NY store and saying : Happy Spring!",
- name="Spring Promo Code",
- sender="MyShop",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**content:** `str` β Content of the message. The **maximum characters used per SMS is 160**, if used more than that, it will be counted as more than one SMS.
-
-
-
-
-
--
-
-**name:** `str` β Name of the campaign
-
-
-
-
-
--
-
-**sender:** `str` β Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**
-
-
-
-
-
--
-
-**organisation_prefix:** `typing.Optional[str]` β A recognizable prefix will ensure your audience knows who you are. Recommended by U.S. carriers. This will be added as your Brand Name before the message content. **Prefer verifying maximum length of 160 characters including this prefix in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**recipients:** `typing.Optional[CreateSmsCampaignRequestRecipients]`
-
-
-
-
-
--
-
-**scheduled_at:** `typing.Optional[str]` β UTC date-time on which the campaign has to run (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**unicode_enabled:** `typing.Optional[bool]` β Format of the message. It indicates whether the content should be treated as unicode or not.
-
-
-
-
-
--
-
-**unsubscribe_instruction:** `typing.Optional[str]` β Instructions to unsubscribe from future communications. Recommended by U.S. carriers. Must include **STOP** keyword. This will be added as instructions after the end of message content. **Prefer verifying maximum length of 160 characters including this instructions in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.get_sms_campaign(...) -> AsyncHttpResponse[GetSmsCampaignResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.get_sms_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the SMS campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.update_sms_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.update_sms_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the SMS campaign
-
-
-
-
-
--
-
-**content:** `typing.Optional[str]` β Content of the message. The **maximum characters used per SMS is 160**, if used more than that, it will be counted as more than one SMS
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of the campaign
-
-
-
-
-
--
-
-**organisation_prefix:** `typing.Optional[str]` β A recognizable prefix will ensure your audience knows who you are. Recommended by U.S. carriers. This will be added as your Brand Name before the message content. **Prefer verifying maximum length of 160 characters including this prefix in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**recipients:** `typing.Optional[UpdateSmsCampaignRequestRecipients]`
-
-
-
-
-
--
-
-**scheduled_at:** `typing.Optional[str]` β UTC date-time on which the campaign has to run (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.**
-
-
-
-
-
--
-
-**sender:** `typing.Optional[str]` β Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**
-
-
-
-
-
--
-
-**unicode_enabled:** `typing.Optional[bool]` β Format of the message. It indicates whether the content should be treated as unicode or not.
-
-
-
-
-
--
-
-**unsubscribe_instruction:** `typing.Optional[str]` β Instructions to unsubscribe from future communications. Recommended by U.S. carriers. Must include **STOP** keyword. This will be added as instructions after the end of message content. **Prefer verifying maximum length of 160 characters including this instructions in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.delete_sms_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.delete_sms_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the SMS campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.request_sms_recipient_export(...) -> AsyncHttpResponse[RequestSmsRecipientExportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-It returns the background process ID which on completion calls the notify URL that you have set in the input.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.request_sms_recipient_export(
- campaign_id=1000000,
- recipients_type="all",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**recipients_type:** `RequestSmsRecipientExportRequestRecipientsType` β Filter the recipients based on how they interacted with the campaign
-
-
-
-
-
--
-
-**notify_url:** `typing.Optional[str]` β URL that will be called once the export process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.send_sms_campaign_now(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.send_sms_campaign_now(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.send_sms_report(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Send report of Sent and Archived campaign, to the specified email addresses, with respective data and a pdf attachment in detail.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo, SendReportEmail
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.send_sms_report(
- campaign_id=1000000,
- email=SendReportEmail(
- body="Please find attached the report of our last email campaign.",
- to=["jim.suehan@example.com"],
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**email:** `SendReportEmail` β Custom attributes for the report email.
-
-
-
-
-
--
-
-**language:** `typing.Optional[SendReportLanguage]` β Language of email content for campaign report sending.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.send_test_sms(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.send_test_sms(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the SMS campaign
-
-
-
-
-
--
-
-**phone_number:** `typing.Optional[str]` β Mobile number of the recipient with the country code. This number **must belong to one of your contacts in Brevo account and must not be blacklisted**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.sms_campaigns.update_sms_campaign_status(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_campaigns.update_sms_campaign_status(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**status:** `typing.Optional[UpdateCampaignStatusStatus]` β Note:- **replicateTemplate** status will be available **only for template type campaigns.**
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## WhatsAppCampaigns
-client.whats_app_campaigns.get_whats_app_campaigns(...) -> AsyncHttpResponse[GetWhatsAppCampaignsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.get_whats_app_campaigns()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used**. Starting (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the WhatsApp campaigns created. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used**. Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the WhatsApp campaigns created. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetWhatsAppCampaignsRequestSort]` β Sort the results in the ascending/descending order of record modification. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.create_whats_app_campaign(...) -> AsyncHttpResponse[CreateWhatsAppCampaignResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
-[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
-[Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.whats_app_campaigns import CreateWhatsAppCampaignRequestRecipients
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.create_whats_app_campaign(
- name="Test Campaign",
- recipients=CreateWhatsAppCampaignRequestRecipients(),
- scheduled_at="2017-06-01T12:30:00+02:00",
- template_id=19,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Name of the WhatsApp campaign creation
-
-
-
-
-
--
-
-**recipients:** `CreateWhatsAppCampaignRequestRecipients` β Segment ids and List ids to include/exclude from campaign
-
-
-
-
-
--
-
-**scheduled_at:** `str` β Sending UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). **Prefer to pass your timezone in date-time format for accurate result.For example: **2017-06-01T12:30:00+02:00**
-
-
-
-
-
--
-
-**template_id:** `int` β Id of the WhatsApp template in **approved** state
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.get_whats_app_config() -> AsyncHttpResponse[GetWhatsAppConfigResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.get_whats_app_config()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.create_whats_app_template(...) -> AsyncHttpResponse[CreateWhatsAppTemplateResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.create_whats_app_template(
- body_text="making it look like readable English",
- category="MARKETING",
- language="en",
- name="Test template",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**body_text:** `str` β Body of the template. **Maximum allowed characters are 1024**
-
-
-
-
-
--
-
-**category:** `CreateWhatsAppTemplateRequestCategory` β Category of the template
-
-
-
-
-
--
-
-**language:** `str`
-
-Language of the template. For Example :
-**en** for English
-
-
-
-
-
--
-
-**name:** `str` β Name of the template
-
-
-
-
-
--
-
-**header_text:** `typing.Optional[str]` β Text content of the header in the template. **Maximum allowed characters are 45** **Use this field to add text content in template header and if mediaUrl is empty**
-
-
-
-
-
--
-
-**media_url:** `typing.Optional[str]` β Absolute url of the media file **(no local file)** for the header. **Use this field in you want to add media in Template header and headerText is empty** Allowed extensions for media files are: #### jpeg | png | mp4 | pdf
-
-
-
-
-
--
-
-**source:** `typing.Optional[CreateWhatsAppTemplateRequestSource]` β source of the template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.get_whats_app_templates(...) -> AsyncHttpResponse[GetWhatsAppTemplatesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.get_whats_app_templates()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used**. Starting (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the templates created. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used**. Ending (urlencoded) UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) to filter the templates created. **Prefer to pass your timezone in date-time format for accurate result**
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetWhatsAppTemplatesRequestSort]` β Sort the results in the ascending/descending order of record modification. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**source:** `typing.Optional[GetWhatsAppTemplatesRequestSource]` β source of the template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.send_whats_app_template_approval(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.send_whats_app_template_approval(
- template_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_id:** `int` β id of the template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.get_whats_app_campaign(...) -> AsyncHttpResponse[GetWhatsAppCampaignResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.get_whats_app_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β Id of the campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.update_whats_app_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
-[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
-This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
-[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
-[Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.update_whats_app_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**campaign_name:** `typing.Optional[str]` β Name of the campaign
-
-
-
-
-
--
-
-**campaign_status:** `typing.Optional[UpdateWhatsAppCampaignRequestCampaignStatus]` β Status of the campaign
-
-
-
-
-
--
-
-**recipients:** `typing.Optional[UpdateWhatsAppCampaignRequestRecipients]` β Segment ids and List ids to include/exclude from campaign
-
-
-
-
-
--
-
-**reschedule_for:** `typing.Optional[str]` β Reschedule the sending UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ) of campaign. **Prefer to pass your timezone in date-time format for accurate result.For example: **2017-06-01T12:30:00+02:00** Use this field to update the scheduledAt of any existing draft or scheduled WhatsApp campaign.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.whats_app_campaigns.delete_whats_app_campaign(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.whats_app_campaigns.delete_whats_app_campaign(
- campaign_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**campaign_id:** `int` β id of the campaign
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Companies
-client.companies.get_all_companies(...) -> AsyncHttpResponse[GetCompaniesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.get_all_companies()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**filters:** `typing.Optional[str]` β Filter by attrbutes. If you have filter for owner on your side please send it as {"attributes.owner":"6299dcf3874a14eacbc65c46"}
-
-
-
-
-
--
-
-**linked_contacts_ids:** `typing.Optional[int]` β Filter by linked contacts ids
-
-
-
-
-
--
-
-**linked_deals_ids:** `typing.Optional[str]` β Filter by linked Deals ids
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). Prefer to pass your timezone in date-time format for accurate result.
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). Prefer to pass your timezone in date-time format for accurate result.
-
-
-
-
-
--
-
-**page:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCompaniesRequestSort]` β Sort the results in the ascending/descending order. Default order is **descending** by creation if `sort` is not passed
-
-
-
-
-
--
-
-**sort_by:** `typing.Optional[str]` β The field used to sort field names.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.create_a_company(...) -> AsyncHttpResponse[PostCompaniesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.create_a_company(
- name="company",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Name of company
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, typing.Any]]` β Attributes for company creation
-
-
-
-
-
--
-
-**country_code:** `typing.Optional[int]` β Country code if phone_number is passed in attributes.
-
-
-
-
-
--
-
-**linked_contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids to be linked with company
-
-
-
-
-
--
-
-**linked_deals_ids:** `typing.Optional[typing.Sequence[str]]` β Deal ids to be linked with company
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.import_companies_creation_and_updation(...) -> AsyncHttpResponse[PostCompaniesImportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Import companies from a CSV file with mapping options.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.import_companies_creation_and_updation()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**file:** `from __future__ import annotations
-
-typing.Optional[core.File]` β See core.File for more documentation
-
-
-
-
-
--
-
-**mapping:** `typing.Optional[typing.Dict[str, typing.Any]]`
-
-The mapping options in JSON format. Here is an example of the JSON structure: ```json {
- "link_entities": true, // Determines whether to link related entities during the import process
- "unlink_entities": false, // Determines whether to unlink related entities during the import process
- "update_existing_records": true, // Determines whether to update based on company ID or treat every row as create
- "unset_empty_attributes": false // Determines whether to unset a specific attribute during update if the values input is blank
-} ```
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.link_and_unlink_company_with_contact_and_deal(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.link_and_unlink_company_with_contact_and_deal(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**link_contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts to be linked with company
-
-
-
-
-
--
-
-**link_deals_ids:** `typing.Optional[typing.Sequence[str]]` β Deal ids for deals to be linked with company
-
-
-
-
-
--
-
-**unlink_contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts to be unlinked from company
-
-
-
-
-
--
-
-**unlink_deals_ids:** `typing.Optional[typing.Sequence[str]]` β Deal ids for deals to be unlinked from company
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.get_a_company(...) -> AsyncHttpResponse[Company]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.get_a_company(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Get Company Details
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.delete_a_company(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.delete_a_company(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Company ID to delete
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.update_a_company(...) -> AsyncHttpResponse[Company]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.update_a_company(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, typing.Any]]` β Attributes for company update
-
-
-
-
-
--
-
-**country_code:** `typing.Optional[int]` β Country code if phone_number is passed in attributes.
-
-
-
-
-
--
-
-**linked_contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Warning - Using PATCH on linkedContactIds replaces the list of linked contacts. Omitted IDs will be removed.
-
-
-
-
-
--
-
-**linked_deals_ids:** `typing.Optional[typing.Sequence[str]]` β Warning - Using PATCH on linkedDealsIds replaces the list of linked contacts. Omitted IDs will be removed.
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of company
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.create_a_company_deal_attribute(...) -> AsyncHttpResponse[PostCrmAttributesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.create_a_company_deal_attribute(
- attribute_type="text",
- label="Attribute Label",
- object_type="companies",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attribute_type:** `PostCrmAttributesRequestAttributeType` β The type of attribute (must be one of the defined enums)
-
-
-
-
-
--
-
-**label:** `str` β The label for the attribute (max 50 characters, cannot be empty)
-
-
-
-
-
--
-
-**object_type:** `PostCrmAttributesRequestObjectType` β The type of object the attribute belongs to (prefilled with `companies`, mandatory)
-
-
-
-
-
--
-
-**description:** `typing.Optional[str]` β A description of the attribute
-
-
-
-
-
--
-
-**options_labels:** `typing.Optional[typing.Sequence[str]]` β Options for multi-choice or single-select attributes
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.companies.get_company_attributes() -> AsyncHttpResponse[typing.List[GetCrmAttributesCompaniesResponseItem]]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.companies.get_company_attributes()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Deals
-client.deals.get_deal_attributes() -> AsyncHttpResponse[typing.List[GetCrmAttributesDealsResponseItem]]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_deal_attributes()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.get_all_deals(...) -> AsyncHttpResponse[GetCrmDealsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_all_deals()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**filters_attributes_deal_name:** `typing.Optional[str]` β Filter by attributes. If you have a filter for the owner on your end, please send it as filters[attributes.deal_owner] and utilize the account email for the filtering.
-
-
-
-
-
--
-
-**filters_linked_companies_ids:** `typing.Optional[str]` β Filter by linked companies ids
-
-
-
-
-
--
-
-**filters_linked_contacts_ids:** `typing.Optional[str]` β Filter by linked companies ids
-
-
-
-
-
--
-
-**modified_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts modified after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). Prefer to pass your timezone in date-time format for accurate result.
-
-
-
-
-
--
-
-**created_since:** `typing.Optional[str]` β Filter (urlencoded) the contacts created after a given UTC date-time (YYYY-MM-DDTHH:mm:ss.SSSZ). Prefer to pass your timezone in date-time format for accurate result.
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCrmDealsRequestSort]` β Sort the results in the ascending/descending order. Default order is **descending** by creation if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.create_a_deal(...) -> AsyncHttpResponse[PostCrmDealsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.create_a_deal(
- name="Deal: Connect with company",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**name:** `str` β Name of deal
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, typing.Any]]` β Attributes for deal creation To assign owner of a Deal you can send attributes.deal_owner and utilize the account email or ID. If you want to create a deal on a specific pipeline and stage you can use the following attributes `pipeline` and `deal_stage`. Pipeline and deal_stage are ids you can fetch using this endpoint `/crm/pipeline/details/{pipelineID}`
-
-
-
-
-
--
-
-**linked_companies_ids:** `typing.Optional[typing.Sequence[str]]` β Company ids to be linked with deal
-
-
-
-
-
--
-
-**linked_contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids to be linked with deal
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.import_deals_creation_and_updation(...) -> AsyncHttpResponse[PostCrmDealsImportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Import deals from a CSV file with mapping options.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.import_deals_creation_and_updation()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**file:** `from __future__ import annotations
-
-typing.Optional[core.File]` β See core.File for more documentation
-
-
-
-
-
--
-
-**mapping:** `typing.Optional[typing.Dict[str, typing.Any]]`
-
-The mapping options in JSON format. Here is an example of the JSON structure: ```json {
- "link_entities": true, // Determines whether to link related entities during the import process
- "unlink_entities": false, // Determines whether to unlink related entities during the import process
- "update_existing_records": true, // Determines whether to update based on company ID or treat every row as create
- "unset_empty_attributes": false // Determines whether to unset a specific attribute during update if the values input is blank
-} ```
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.link_and_unlink_a_deal_with_contacts_and_companies(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.link_and_unlink_a_deal_with_contacts_and_companies(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**link_company_ids:** `typing.Optional[typing.Sequence[str]]` β Company ids to be linked with deal
-
-
-
-
-
--
-
-**link_contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts to be linked with deal
-
-
-
-
-
--
-
-**unlink_company_ids:** `typing.Optional[typing.Sequence[str]]` β Company ids to be unlinked from deal
-
-
-
-
-
--
-
-**unlink_contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts to be unlinked from deal
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.get_a_deal(...) -> AsyncHttpResponse[Deal]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_a_deal(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.delete_a_deal(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.delete_a_deal(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.update_a_deal(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.update_a_deal(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**attributes:** `typing.Optional[typing.Dict[str, typing.Any]]` β Attributes for deal update To assign owner of a Deal you can send attributes.deal_owner and utilize the account email or ID. If you wish to update the pipeline of a deal you need to provide the `pipeline` and the `deal_stage` Pipeline and deal_stage are ids you can fetch using this endpoint `/crm/pipeline/details/{pipelineID}`
-
-
-
-
-
--
-
-**linked_companies_ids:** `typing.Optional[typing.Sequence[str]]` β Warning - Using PATCH on linkedCompaniesIds replaces the list of linked contacts. Omitted IDs will be removed.
-
-
-
-
-
--
-
-**linked_contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Warning - Using PATCH on linkedContactIds replaces the list of linked contacts. Omitted IDs will be removed.
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of deal
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.get_pipeline_stages() -> AsyncHttpResponse[Pipeline]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint is deprecated. Prefer /crm/pipeline/details/{pipelineID} instead.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_pipeline_stages()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.get_all_pipelines() -> AsyncHttpResponse[Pipelines]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_all_pipelines()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.deals.get_a_pipeline(...) -> AsyncHttpResponse[Pipelines]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.deals.get_a_pipeline(
- pipeline_id="pipelineID",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**pipeline_id:** `str`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Files
-client.files.get_all_files(...) -> AsyncHttpResponse[typing.List[FileData]]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.files.get_all_files()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**entity:** `typing.Optional[GetCrmFilesRequestEntity]` β Filter by file entity type
-
-
-
-
-
--
-
-**entity_ids:** `typing.Optional[str]` β Filter by file entity IDs
-
-
-
-
-
--
-
-**date_from:** `typing.Optional[int]` β dateFrom to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**date_to:** `typing.Optional[int]` β dateTo to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCrmFilesRequestSort]` β Sort the results in the ascending/descending order. Default order is **descending** by creation if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.files.upload_a_file(...) -> AsyncHttpResponse[FileData]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.files.upload_a_file()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**file:** `from __future__ import annotations
-
-core.File` β See core.File for more documentation
-
-
-
-
-
--
-
-**company_id:** `typing.Optional[str]`
-
-
-
-
-
--
-
-**contact_id:** `typing.Optional[int]`
-
-
-
-
-
--
-
-**deal_id:** `typing.Optional[str]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.files.download_a_file(...) -> AsyncHttpResponse[GetCrmFilesIdResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.files.download_a_file(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β File id to download.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.files.delete_a_file(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.files.delete_a_file(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β File id to delete.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.files.get_file_details(...) -> AsyncHttpResponse[FileData]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.files.get_file_details(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β File id to get file data.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Notes
-client.notes.get_all_notes(...) -> AsyncHttpResponse[typing.List[Note]]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.notes.get_all_notes()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**entity:** `typing.Optional[GetCrmNotesRequestEntity]` β Filter by note entity type
-
-
-
-
-
--
-
-**entity_ids:** `typing.Optional[str]` β Filter by note entity IDs
-
-
-
-
-
--
-
-**date_from:** `typing.Optional[int]` β dateFrom to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**date_to:** `typing.Optional[int]` β dateTo to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCrmNotesRequestSort]` β Sort the results in the ascending/descending order. Default order is **descending** by creation if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.notes.create_a_note(...) -> AsyncHttpResponse[PostCrmNotesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.notes.create_a_note(
- text="In communication with client_dev for resolution of queries.",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**text:** `str` β Text content of a note
-
-
-
-
-
--
-
-**company_ids:** `typing.Optional[typing.Sequence[str]]` β Company Ids linked to a note
-
-
-
-
-
--
-
-**contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact Ids linked to a note
-
-
-
-
-
--
-
-**deal_ids:** `typing.Optional[typing.Sequence[str]]` β Deal Ids linked to a note
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.notes.get_a_note(...) -> AsyncHttpResponse[Note]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.notes.get_a_note(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Note ID to get
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.notes.delete_a_note(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.notes.delete_a_note(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Note ID to delete
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.notes.update_a_note(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.notes.update_a_note(
- id="id",
- text="In communication with client_dev for resolution of queries.",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str` β Note ID to update
-
-
-
-
-
--
-
-**text:** `str` β Text content of a note
-
-
-
-
-
--
-
-**company_ids:** `typing.Optional[typing.Sequence[str]]` β Company Ids linked to a note
-
-
-
-
-
--
-
-**contact_ids:** `typing.Optional[typing.Sequence[int]]` β Contact Ids linked to a note
-
-
-
-
-
--
-
-**deal_ids:** `typing.Optional[typing.Sequence[str]]` β Deal Ids linked to a note
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## Tasks
-client.tasks.get_all_tasks(...) -> AsyncHttpResponse[GetCrmTasksResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.get_all_tasks(
- sort_by="name",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**filter_type:** `typing.Optional[str]` β Filter by task type (ID)
-
-
-
-
-
--
-
-**filter_status:** `typing.Optional[GetCrmTasksRequestFilterStatus]` β Filter by task status
-
-
-
-
-
--
-
-**filter_date:** `typing.Optional[GetCrmTasksRequestFilterDate]` β Filter by date
-
-
-
-
-
--
-
-**filter_assign_to:** `typing.Optional[str]` β Filter by the "assignTo" ID. You can utilize account emails for the "assignTo" attribute.
-
-
-
-
-
--
-
-**filter_contacts:** `typing.Optional[str]` β Filter by contact ids
-
-
-
-
-
--
-
-**filter_deals:** `typing.Optional[str]` β Filter by deals ids
-
-
-
-
-
--
-
-**filter_companies:** `typing.Optional[str]` β Filter by companies ids
-
-
-
-
-
--
-
-**date_from:** `typing.Optional[int]` β dateFrom to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**date_to:** `typing.Optional[int]` β dateTo to date range filter type (timestamp in milliseconds)
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetCrmTasksRequestSort]` β Sort the results in the ascending/descending order. Default order is **descending** by creation if `sort` is not passed
-
-
-
-
-
--
-
-**sort_by:** `typing.Optional[str]` β The field used to sort field names.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tasks.create_a_task(...) -> AsyncHttpResponse[PostCrmTasksResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-import datetime
-
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.create_a_task(
- date=datetime.datetime.fromisoformat(
- "2021-11-01 17:44:54+00:00",
- ),
- name="Task: Connect with client_dev",
- task_type_id="61a5cd07ca1347c82306ad09",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**date:** `dt.datetime` β Task due date and time
-
-
-
-
-
--
-
-**name:** `str` β Name of task
-
-
-
-
-
--
-
-**task_type_id:** `str` β Id for type of task e.g Call / Email / Meeting etc.
-
-
-
-
-
--
-
-**assign_to_id:** `typing.Optional[str]` β To assign a task to a user you can use either the account email or ID.
-
-
-
-
-
--
-
-**companies_ids:** `typing.Optional[typing.Sequence[str]]` β Companies ids for companies a task is linked to
-
-
-
-
-
--
-
-**contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts linked to this task
-
-
-
-
-
--
-
-**deals_ids:** `typing.Optional[typing.Sequence[str]]` β Deal ids for deals a task is linked to
-
-
-
-
-
--
-
-**done:** `typing.Optional[bool]` β Task marked as done
-
-
-
-
-
--
-
-**duration:** `typing.Optional[int]` β Duration of task in milliseconds [1 minute = 60000 ms]
-
-
-
-
-
--
-
-**notes:** `typing.Optional[str]` β Notes added to a task
-
-
-
-
-
--
-
-**reminder:** `typing.Optional[TaskReminder]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tasks.get_a_task(...) -> AsyncHttpResponse[Task]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.get_a_task(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tasks.delete_a_task(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.delete_a_task(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tasks.update_a_task(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.update_a_task(
- id="id",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**id:** `str`
-
-
-
-
-
--
-
-**assign_to_id:** `typing.Optional[str]` β To assign a task to a user you can use either the account email or ID.
-
-
-
-
-
--
-
-**companies_ids:** `typing.Optional[typing.Sequence[str]]` β Companies ids for companies a task is linked to
-
-
-
-
-
--
-
-**contacts_ids:** `typing.Optional[typing.Sequence[int]]` β Contact ids for contacts linked to this task
-
-
-
-
-
--
-
-**date:** `typing.Optional[dt.datetime]` β Task date/time
-
-
-
-
-
--
-
-**deals_ids:** `typing.Optional[typing.Sequence[str]]` β Deal ids for deals a task is linked to
-
-
-
-
-
--
-
-**done:** `typing.Optional[bool]` β Task marked as done
-
-
-
-
-
--
-
-**duration:** `typing.Optional[int]` β Duration of task in milliseconds [1 minute = 60000 ms]
-
-
-
-
-
--
-
-**name:** `typing.Optional[str]` β Name of task
-
-
-
-
-
--
-
-**notes:** `typing.Optional[str]` β Notes added to a task
-
-
-
-
-
--
-
-**reminder:** `typing.Optional[TaskReminder]`
-
-
-
-
-
--
-
-**task_type_id:** `typing.Optional[str]` β Id for type of task e.g Call / Email / Meeting etc.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.tasks.get_all_task_types() -> AsyncHttpResponse[GetCrmTasktypesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.tasks.get_all_task_types()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## TransactionalWhatsApp
-client.transactional_whats_app.send_whatsapp_message(...) -> AsyncHttpResponse[SendWhatsappMessageResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below. [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-This endpoint is used to send a WhatsApp message.
(**The first message you send using the API must contain a Template ID. You must create a template on WhatsApp on the Brevo platform to fetch the Template ID.**)
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.transactional_whats_app import SendWhatsappMessageRequestParams
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_whats_app.send_whatsapp_message(
- request=SendWhatsappMessageRequestParams(
- contact_numbers=["contactNumbers"],
- sender_number="senderNumber",
- template_id=123,
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request:** `SendWhatsappMessageRequest`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_whats_app.get_whatsapp_event_report(...) -> AsyncHttpResponse[GetWhatsappEventReportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the unaggregated statistics for WhatsApp activity (30 days by default if `startDate` and `endDate` or `days` is not passed. The date range can not exceed 90 days)
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_whats_app.get_whatsapp_event_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number limitation for the result returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Beginning point in the list to retrieve from
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date of the report (YYYY-MM-DD). Must be lower than equal to endDate
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date of the report (YYYY-MM-DD). Must be greater than equal to startDate
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). _Not compatible with 'startDate' and 'endDate'_
-
-
-
-
-
--
-
-**contact_number:** `typing.Optional[str]` β Filter results for specific contact (WhatsApp Number with country code. Example, 85264318721)
-
-
-
-
-
--
-
-**event:** `typing.Optional[GetWhatsappEventReportRequestEvent]` β Filter the report for a specific event type
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetWhatsappEventReportRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## TransactionalEmails
-client.transactional_emails.get_transac_blocked_contacts(...) -> AsyncHttpResponse[GetTransacBlockedContactsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_transac_blocked_contacts()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) from which you want to fetch the blocked or unsubscribed contacts
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) till which you want to fetch the blocked or unsubscribed contacts
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page
-
-
-
-
-
--
-
-**senders:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` β Comma separated list of emails of the senders from which contacts are blocked or unsubscribed
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetTransacBlockedContactsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.unblock_or_resubscribe_a_transactional_contact(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.unblock_or_resubscribe_a_transactional_contact(
- email="email",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `str` β contact email (urlencoded) to unblock.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_blocked_domains() -> AsyncHttpResponse[GetBlockedDomainsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Get the list of blocked domains
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_blocked_domains()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.block_new_domain(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Blocks a new domain in order to avoid messages being sent to the same
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.block_new_domain(
- domain="example.com",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**domain:** `str` β name of the domain to be blocked
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.delete_blocked_domain(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Unblocks an existing domain from the list of blocked domains
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.delete_blocked_domain(
- domain="domain",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**domain:** `str` β The name of the domain to be deleted
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.delete_hardbounces(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Delete hardbounces. To use carefully (e.g. in case of temporary ISP failures)
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.delete_hardbounces()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**contact_email:** `typing.Optional[str]` β Target a specific email address
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β Ending date (YYYY-MM-DD) of the time period for deletion. The hardbounces until this date will be deleted. Must be greater than or equal to the startDate
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β Starting date (YYYY-MM-DD) of the time period for deletion. The hardbounces occurred after this date will be deleted. Must be less than or equal to the endDate
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.send_transac_email(...) -> AsyncHttpResponse[SendTransacEmailResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.transactional_emails import (
- SendTransacEmailRequestSender,
- SendTransacEmailRequestToItem,
-)
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.send_transac_email(
- html_content="Your delivery is expected {{params.estimatedArrival}}.Your tracking code: {{params.trackingCode}}
",
- params={
- "trackingCode": "JD01460000300002350000",
- "estimatedArrival": "Tomorrow",
- },
- sender=SendTransacEmailRequestSender(
- email="hello@brevo.com",
- name="Alex from Brevo",
- ),
- subject="Hello from Brevo!",
- to=[
- SendTransacEmailRequestToItem(
- email="johndoe@example.com",
- name="John Doe",
- )
- ],
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**attachment:** `typing.Optional[typing.Sequence[SendTransacEmailRequestAttachmentItem]]` β Array of attachment objects. Each attachment must include either an absolute URL (no local file paths) or base64-encoded content, along with the attachment filename. The `name` field is required when `content` is provided. Supported file extensions: xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub, eps, odt, mp3, m4a, m4v, wma, ogg, flac, wav, aif, aifc, aiff, mp4, mov, avi, mkv, mpeg, mpg, wmv, pkpass, xlsm. When `templateId` is specified: if the template uses the New Template Language format, both `url` and `content` attachment types are supported; if the template uses the Old Template Language format, the `attachment` parameter is ignored.
-
-
-
-
-
--
-
-**batch_id:** `typing.Optional[str]` β UUIDv4 identifier for the scheduled batch of transactional emails. If omitted, a valid UUIDv4 batch identifier is automatically generated.
-
-
-
-
-
--
-
-**bcc:** `typing.Optional[typing.Sequence[SendTransacEmailRequestBccItem]]` β Array of BCC recipient objects. Each object contains an email address and an optional name.
-
-
-
-
-
--
-
-**cc:** `typing.Optional[typing.Sequence[SendTransacEmailRequestCcItem]]` β Array of CC recipient objects. Each object contains an email address and an optional name.
-
-
-
-
-
--
-
-**headers:** `typing.Optional[typing.Dict[str, typing.Any]]` β Custom email headers (non-standard headers) to include in the email. The `sender.ip` header can be set to specify the IP address used for sending transactional emails (dedicated IP users only). Header names must use Title-Case-Format (words separated by hyphens with the first letter of each word capitalized). Headers not in this format are automatically converted. Standard email headers are not supported. Example: `{"sender.ip":"1.2.3.4", "X-Mailin-custom":"some_custom_value", "Idempotency-Key":"abc-123"}`
-
-
-
-
-
--
-
-**html_content:** `typing.Optional[str]` β HTML body content of the email. Required when `templateId` is not provided. Ignored when `templateId` is provided.
-
-
-
-
-
--
-
-**message_versions:** `typing.Optional[typing.Sequence[SendTransacEmailRequestMessageVersionsItem]]` β Array of message version objects for sending customized email variants. The `templateId` can be customized per version only if a global `templateId` is provided. The `htmlContent` and `textContent` can be customized per version only if at least one of these is present in the global parameters. Global parameters such as `to` (required), `bcc`, `cc`, `replyTo`, and `subject` can be customized per version. Maximum total recipients per API request is 2000. Maximum recipients per message version is 99. Individual `params` objects must not exceed 100 KB. Cumulative `params` across all versions must not exceed 1000 KB. See https://developers.brevo.com/docs/batch-send-transactional-emails for detailed usage instructions.
-
-
-
-
-
--
-
-**params:** `typing.Optional[typing.Dict[str, typing.Any]]` β Key-value pairs for template variable substitution. Only applicable when the template uses the New Template Language format.
-
-
-
-
-
--
-
-**reply_to:** `typing.Optional[SendTransacEmailRequestReplyTo]` β Reply-to email address (required) and optional display name. Recipients will use this address when replying to the email.
-
-
-
-
-
--
-
-**scheduled_at:** `typing.Optional[dt.datetime]` β UTC date-time when the email should be sent (format: YYYY-MM-DDTHH:mm:ss.SSSZ). Include timezone information in the date-time value. Scheduled emails may be delayed by up to 5 minutes.
-
-
-
-
-
--
-
-**sender:** `typing.Optional[SendTransacEmailRequestSender]` β Sender information. Required when `templateId` is not provided. Specify either an email address (with optional name) or a sender ID. The `name` field is ignored when `id` is provided.
-
-
-
-
-
--
-
-**subject:** `typing.Optional[str]` β Email subject line. Required when `templateId` is not provided.
-
-
-
-
-
--
-
-**tags:** `typing.Optional[typing.Sequence[str]]` β Array of tags for categorizing and filtering emails
-
-
-
-
-
--
-
-**template_id:** `typing.Optional[int]` β Template identifier
-
-
-
-
-
--
-
-**text_content:** `typing.Optional[str]` β Plain text body content of the email. Ignored when `templateId` is provided.
-
-
-
-
-
--
-
-**to:** `typing.Optional[typing.Sequence[SendTransacEmailRequestToItem]]` β Array of recipient objects. Each object contains an email address and an optional display name. Required when `messageVersions` is not provided. Ignored when `messageVersions` is provided. Example: `[{"name":"Jimmy", "email":"jimmy@example.com"}, {"name":"Joe", "email":"joe@example.com"}]`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.delete_scheduled_email_by_id(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Delete scheduled batch of emails by batchId or single scheduled email by messageId
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.delete_scheduled_email_by_id(
- identifier="4320f270-a4e3-4a2e-b591-edfe30a5e627",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `str` β The `batchId` of scheduled emails batch (Should be a valid UUIDv4) or the `messageId` of scheduled email.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_scheduled_email_by_id(...) -> AsyncHttpResponse[GetScheduledEmailByIdResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-Fetch scheduled batch of emails by batchId or single scheduled email by messageId (Can retrieve data upto 30 days old)
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-import datetime
-
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_scheduled_email_by_id(
- identifier="4320f270-a4e3-4a2e-b591-edfe30a5e627",
- start_date=datetime.date.fromisoformat(
- "2022-02-02",
- ),
- end_date=datetime.date.fromisoformat(
- "2022-03-02",
- ),
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `str` β The `batchId` of scheduled emails batch (Should be a valid UUIDv4) or the `messageId` of scheduled email.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[dt.date]` β Mandatory if `endDate` is used. Starting date (YYYY-MM-DD) from which you want to fetch the list. Can be maximum 30 days older tha current date.
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[dt.date]` β Mandatory if `startDate` is used. Ending date (YYYY-MM-DD) till which you want to fetch the list. Maximum time period that can be selected is one month.
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetScheduledEmailByIdRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed. Not valid when identifier is `messageId`.
-
-
-
-
-
--
-
-**status:** `typing.Optional[GetScheduledEmailByIdRequestStatus]` β Filter the records by `status` of the scheduled email batch or message. Not valid when identifier is `messageId`.
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page. Not valid when identifier is `messageId`.
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page. Not valid when identifier is `messageId`.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_transac_emails_list(...) -> AsyncHttpResponse[GetTransacEmailsListResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the list of emails for past 30 days by default. To retrieve emails before that time, please pass startDate and endDate in query filters.
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_transac_emails_list()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**email:** `typing.Optional[str]` β **Mandatory if templateId and messageId are not passed in query filters.** Email address to which transactional email has been sent.
-
-
-
-
-
--
-
-**template_id:** `typing.Optional[int]` β **Mandatory if email and messageId are not passed in query filters.** Id of the template that was used to compose transactional email.
-
-
-
-
-
--
-
-**message_id:** `typing.Optional[str]` β **Mandatory if templateId and email are not passed in query filters.** Message ID of the transactional email sent.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) from which you want to fetch the list. **Maximum time period that can be selected is one month**.
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) till which you want to fetch the list. **Maximum time period that can be selected is one month.**
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetTransacEmailsListRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_transac_email_content(...) -> AsyncHttpResponse[GetTransacEmailContentResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-You can get the uuid using either of the following methods:
-
-Send a GET request to https://api.brevo.com/v3/smtp/emails and pass the message_id in the url. Use your api-key to authenticate the request and you will get your uuid as a response.
-
-The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_transac_email_content(
- uuid_="uuid",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**uuid_:** `str` β Unique id of the transactional email that has been sent to a particular contact
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.delete_an_smtp_transactional_log(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.delete_an_smtp_transactional_log(
- identifier="identifier",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**identifier:** `str` β MessageId of the transactional log(s) to delete
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_aggregated_smtp_report(...) -> AsyncHttpResponse[GetAggregatedSmtpReportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the aggregated stats for past 90 days by default if `startDate` and `endDate` OR `days` is not passed. The date range can not exceed 90 days
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_aggregated_smtp_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date of the report (YYYY-MM-DD). Must be lower than equal to endDate
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date of the report (YYYY-MM-DD). Must be greater than equal to startDate
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). _Not compatible with 'startDate' and 'endDate'_
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the emails
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_email_event_report(...) -> AsyncHttpResponse[GetEmailEventReportResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-This endpoint will show the aggregated stats for past 30 days by default if `startDate` and `endDate` OR `days` is not passed. The date range can not exceed 90 days
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_email_event_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number limitation for the result returned
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Beginning point in the list to retrieve from.
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date of the report (YYYY-MM-DD). Must be lower than equal to endDate
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date of the report (YYYY-MM-DD). Must be greater than equal to startDate
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). _Not compatible with 'startDate' and 'endDate'_
-
-
-
-
-
--
-
-**email:** `typing.Optional[str]` β Filter the report for a specific email addresses
-
-
-
-
-
--
-
-**event:** `typing.Optional[GetEmailEventReportRequestEvent]` β Filter the report for a specific event type
-
-
-
-
-
--
-
-**tags:** `typing.Optional[str]` β Filter the report for tags (serialized and urlencoded array)
-
-
-
-
-
--
-
-**message_id:** `typing.Optional[str]` β Filter on a specific message id
-
-
-
-
-
--
-
-**template_id:** `typing.Optional[int]` β Filter on a specific template id
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetEmailEventReportRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_smtp_report(...) -> AsyncHttpResponse[GetSmtpReportResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_smtp_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document on the page
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date of the report (YYYY-MM-DD)
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date of the report (YYYY-MM-DD)
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). _Not compatible with 'startDate' and 'endDate'_
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the emails
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSmtpReportRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.post_preview_smtp_email_templates(...) -> AsyncHttpResponse[PostPreviewSmtpEmailTemplatesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.post_preview_smtp_email_templates(
- request={"key": "value"},
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**request:** `typing.Any`
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_smtp_templates(...) -> AsyncHttpResponse[GetSmtpTemplatesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_smtp_templates()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_status:** `typing.Optional[bool]` β Filter on the status of the template. Active = true, inactive = false
-
-
-
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSmtpTemplatesRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.create_smtp_template(...) -> AsyncHttpResponse[CreateSmtpTemplateResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-from brevo.transactional_emails import CreateSmtpTemplateRequestSender
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.create_smtp_template(
- sender=CreateSmtpTemplateRequestSender(),
- subject="Thanks for your purchase !",
- template_name="Order Confirmation - EN",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**sender:** `CreateSmtpTemplateRequestSender` β Sender details including id or email and name (_optional_). Only one of either Sender's email or Sender's ID shall be passed in one request at a time. For example: **{"name":"xyz", "email":"example@abc.com"}** **{"name":"xyz", "id":123}**
-
-
-
-
-
--
-
-**subject:** `str` β Subject of the template
-
-
-
-
-
--
-
-**template_name:** `str` β Name of the template
-
-
-
-
-
--
-
-**attachment_url:** `typing.Optional[str]` β Absolute url of the attachment (**no local file**). Extension allowed: #### xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub and eps'
-
-
-
-
-
--
-
-**html_content:** `typing.Optional[str]` β Body of the message (HTML version). The field must have more than 10 characters. **REQUIRED if htmlUrl is empty**
-
-
-
-
-
--
-
-**html_url:** `typing.Optional[str]` β Url which contents the body of the email message. REQUIRED if htmlContent is empty
-
-
-
-
-
--
-
-**is_active:** `typing.Optional[bool]` β Status of template. isActive = true means template is active and isActive = false means template is inactive
-
-
-
-
-
--
-
-**reply_to:** `typing.Optional[str]` β Email on which campaign recipients will be able to reply to
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the template
-
-
-
-
-
--
-
-**to_field:** `typing.Optional[str]` β To personalize the **To** Field. If you want to include the first name and last name of your recipient, add **{FNAME} {LNAME}**. These contact attributes must already exist in your Brevo account. If input parameter **params** used please use **{{contact.FNAME}} {{contact.LNAME}}** for personalization
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.get_smtp_template(...) -> AsyncHttpResponse[GetSmtpTemplateOverview]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.get_smtp_template(
- template_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_id:** `int` β id of the template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.update_smtp_template(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.update_smtp_template(
- template_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_id:** `int` β id of the template
-
-
-
-
-
--
-
-**attachment_url:** `typing.Optional[str]` β Absolute url of the attachment (**no local file**). Extensions allowed: #### xlsx, xls, ods, docx, docm, doc, csv, pdf, txt, gif, jpg, jpeg, png, tif, tiff, rtf, bmp, cgm, css, shtml, html, htm, zip, xml, ppt, pptx, tar, ez, ics, mobi, msg, pub and eps
-
-
-
-
-
--
-
-**html_content:** `typing.Optional[str]` β **Required if htmlUrl is empty**. If the template is designed using Drag & Drop editor via HTML content, then the design page will not have Drag & Drop editor access for that template. Body of the message (HTML must have more than 10 characters)
-
-
-
-
-
--
-
-**html_url:** `typing.Optional[str]` β **Required if htmlContent is empty**. URL to the body of the email (HTML)
-
-
-
-
-
--
-
-**is_active:** `typing.Optional[bool]` β Status of the template. isActive = false means template is inactive, isActive = true means template is active
-
-
-
-
-
--
-
-**reply_to:** `typing.Optional[str]` β Email on which campaign recipients will be able to reply to
-
-
-
-
-
--
-
-**sender:** `typing.Optional[UpdateSmtpTemplateRequestSender]` β Sender details including id or email and name (_optional_). Only one of either Sender's email or Sender's ID shall be passed in one request at a time. For example: **{"name":"xyz", "email":"example@abc.com"}** **{"name":"xyz", "id":123}**
-
-
-
-
-
--
-
-**subject:** `typing.Optional[str]` β Subject of the email
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Tag of the template
-
-
-
-
-
--
-
-**template_name:** `typing.Optional[str]` β Name of the template
-
-
-
-
-
--
-
-**to_field:** `typing.Optional[str]` β To personalize the **To** Field. If you want to include the first name and last name of your recipient, add **{FNAME} {LNAME}**. These contact attributes must already exist in your Brevo account. If input parameter **params** used please use **{{contact.FNAME}} {{contact.LNAME}}** for personalization
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.delete_smtp_template(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.delete_smtp_template(
- template_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_id:** `int` β id of the template
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_emails.send_test_template(...) -> AsyncHttpResponse[None]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_emails.send_test_template(
- template_id=1000000,
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**template_id:** `int` β Id of the template
-
-
-
-
-
--
-
-**email_to:** `typing.Optional[typing.Sequence[str]]` β List of the email addresses of the recipients whom you wish to send the test mail. _If left empty, the test mail will be sent to your entire test list. You can not send more than 50 test emails per day_.
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## TransactionalSms
-client.transactional_sms.send_async_transactional_sms(...) -> AsyncHttpResponse[SendAsyncTransactionalSmsResponse]
-
--
-
-#### π Description
-
-
--
-
-
--
-
-
-If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
-
-Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
-
-
-
-Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
-
-
-
-
-
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_sms.send_async_transactional_sms(
- recipient="33689965433",
- sender="MyShop",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**recipient:** `str` β Mobile number to send SMS with the country code
-
-
-
-
-
--
-
-**sender:** `str` β Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**
-
-
-
-
-
--
-
-**organisation_prefix:** `typing.Optional[str]` β A recognizable prefix will ensure your audience knows who you are. Recommended by U.S. carriers. This will be added as your Brand Name before the message content. **Prefer verifying maximum length of 160 characters including this prefix in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**tag:** `typing.Optional[SendTransacSmsTag]` β Tag of the message
-
-
-
-
-
--
-
-**type:** `typing.Optional[SendTransacSmsType]` β Type of the SMS. Marketing SMS messages are those sent typically with marketing content. Transactional SMS messages are sent to individuals and are triggered in response to some action, such as a sign-up, purchase, etc.
-
-
-
-
-
--
-
-**unicode_enabled:** `typing.Optional[bool]` β Format of the message. It indicates whether the content should be treated as unicode or not.
-
-
-
-
-
--
-
-**web_url:** `typing.Optional[str]` β Webhook to call for each event triggered by the message (delivered etc.)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_sms.send_transac_sms(...) -> AsyncHttpResponse[SendTransacSmsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_sms.send_transac_sms(
- recipient="33689965433",
- sender="MyShop",
-)
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**recipient:** `str` β Mobile number to send SMS with the country code
-
-
-
-
-
--
-
-**sender:** `str` β Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**
-
-
-
-
-
--
-
-**organisation_prefix:** `typing.Optional[str]` β A recognizable prefix will ensure your audience knows who you are. Recommended by U.S. carriers. This will be added as your Brand Name before the message content. **Prefer verifying maximum length of 160 characters including this prefix in message content to avoid multiple sending of same sms.**
-
-
-
-
-
--
-
-**tag:** `typing.Optional[SendTransacSmsTag]` β Tag of the message
-
-
-
-
-
--
-
-**type:** `typing.Optional[SendTransacSmsType]` β Type of the SMS. Marketing SMS messages are those sent typically with marketing content. Transactional SMS messages are sent to individuals and are triggered in response to some action, such as a sign-up, purchase, etc.
-
-
-
-
-
--
-
-**unicode_enabled:** `typing.Optional[bool]` β Format of the message. It indicates whether the content should be treated as unicode or not.
-
-
-
-
-
--
-
-**web_url:** `typing.Optional[str]` β Webhook to call for each event triggered by the message (delivered etc.)
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_sms.get_transac_aggregated_sms_report(...) -> AsyncHttpResponse[GetTransacAggregatedSmsReportResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_sms.get_transac_aggregated_sms_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). **Not compatible with startDate and endDate**
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Filter on a tag
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_sms.get_sms_events(...) -> AsyncHttpResponse[GetSmsEventsResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_sms.get_sms_events()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents per page
-
-
-
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document of the page
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). **Not compatible with 'startDate' and 'endDate'**
-
-
-
-
-
--
-
-**phone_number:** `typing.Optional[str]` β Filter the report for a specific phone number
-
-
-
-
-
--
-
-**event:** `typing.Optional[GetSmsEventsRequestEvent]` β Filter the report for specific events
-
-
-
-
-
--
-
-**tags:** `typing.Optional[str]` β Filter the report for specific tags passed as a serialized urlencoded array
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSmsEventsRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-client.transactional_sms.get_transac_sms_report(...) -> AsyncHttpResponse[GetTransacSmsReportResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.transactional_sms.get_transac_sms_report()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**start_date:** `typing.Optional[str]` β **Mandatory if endDate is used.** Starting date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**end_date:** `typing.Optional[str]` β **Mandatory if startDate is used.** Ending date (YYYY-MM-DD) of the report
-
-
-
-
-
--
-
-**days:** `typing.Optional[int]` β Number of days in the past including today (positive integer). **Not compatible with 'startDate' and 'endDate'**
-
-
-
-
-
--
-
-**tag:** `typing.Optional[str]` β Filter on a tag
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetTransacSmsReportRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
-## SmsTemplates
-client.sms_templates.get_sms_templates(...) -> AsyncHttpResponse[GetSmsTemplatesResponse]
-
--
-
-#### π Usage
-
-
--
-
-
--
-
-```python
-from brevo import Brevo
-
-client = Brevo(
- api_key="YOUR_API_KEY",
-)
-client.sms_templates.get_sms_templates()
-
-```
-
-
-
-
-
-#### βοΈ Parameters
-
-
--
-
-
--
-
-**limit:** `typing.Optional[int]` β Number of documents returned per page
-
-
-
-
-
--
-
-**offset:** `typing.Optional[int]` β Index of the first document in the page
-
-
-
-
-
--
-
-**sort:** `typing.Optional[GetSmsTemplatesRequestSort]` β Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed
-
-
-
-
-
--
-
-**request_options:** `typing.Optional[RequestOptions]` β Request-specific configuration.
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/brevo/__init__.py b/src/brevo/__init__.py
index 91df4ce..d77e511 100644
--- a/src/brevo/__init__.py
+++ b/src/brevo/__init__.py
@@ -84,6 +84,8 @@
OrderIdentifiers,
OrderMetaInfoValue,
OrderProductsItem,
+ OrderProductsItemQuantity,
+ OrderProductsItemQuantityFloat,
Pipeline,
PipelineStagesItem,
Pipelines,
@@ -202,7 +204,6 @@
GetContactBalancesResponse,
GetContactBalancesResponseBalancesItem,
GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort,
- GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField,
GetLoyaltyBalanceProgramsPidTransactionHistoryResponse,
GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem,
GetSubscriptionBalancesResponse,
@@ -229,6 +230,8 @@
GetCompaniesRequestSort,
GetCompaniesResponse,
GetCrmAttributesCompaniesResponseItem,
+ PatchCrmAttributesIdRequestObjectType,
+ PatchCrmAttributesIdRequestOptionsLabelsItem,
PostCompaniesImportResponse,
PostCompaniesResponse,
PostCrmAttributesRequestAttributeType,
@@ -1121,7 +1124,6 @@
"GetListsResponse": ".contacts",
"GetListsResponseListsItem": ".contacts",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort": ".balance",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField": ".balance",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse": ".balance",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem": ".balance",
"GetLoyaltyOfferProgramsPidOffersRequestVersion": ".reward",
@@ -1307,6 +1309,10 @@
"OrderIdentifiers": ".types",
"OrderMetaInfoValue": ".types",
"OrderProductsItem": ".types",
+ "OrderProductsItemQuantity": ".types",
+ "OrderProductsItemQuantityFloat": ".types",
+ "PatchCrmAttributesIdRequestObjectType": ".companies",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem": ".companies",
"PaymentRequiredError": ".errors",
"Pipeline": ".types",
"PipelineStagesItem": ".types",
@@ -1867,7 +1873,6 @@ def __dir__():
"GetListsResponse",
"GetListsResponseListsItem",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem",
"GetLoyaltyOfferProgramsPidOffersRequestVersion",
@@ -2053,6 +2058,10 @@ def __dir__():
"OrderIdentifiers",
"OrderMetaInfoValue",
"OrderProductsItem",
+ "OrderProductsItemQuantity",
+ "OrderProductsItemQuantityFloat",
+ "PatchCrmAttributesIdRequestObjectType",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem",
"PaymentRequiredError",
"Pipeline",
"PipelineStagesItem",
diff --git a/src/brevo/balance/__init__.py b/src/brevo/balance/__init__.py
index 80bcb3f..93300fe 100644
--- a/src/brevo/balance/__init__.py
+++ b/src/brevo/balance/__init__.py
@@ -20,7 +20,6 @@
GetContactBalancesResponse,
GetContactBalancesResponseBalancesItem,
GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort,
- GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField,
GetLoyaltyBalanceProgramsPidTransactionHistoryResponse,
GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem,
GetSubscriptionBalancesResponse,
@@ -56,7 +55,6 @@
"GetContactBalancesResponse": ".types",
"GetContactBalancesResponseBalancesItem": ".types",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort": ".types",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField": ".types",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse": ".types",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem": ".types",
"GetSubscriptionBalancesResponse": ".types",
@@ -115,7 +113,6 @@ def __dir__():
"GetContactBalancesResponse",
"GetContactBalancesResponseBalancesItem",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem",
"GetSubscriptionBalancesResponse",
diff --git a/src/brevo/balance/client.py b/src/brevo/balance/client.py
index e63fb77..602c061 100644
--- a/src/brevo/balance/client.py
+++ b/src/brevo/balance/client.py
@@ -23,9 +23,6 @@
from .types.get_loyalty_balance_programs_pid_transaction_history_request_sort import (
GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort,
)
-from .types.get_loyalty_balance_programs_pid_transaction_history_request_sort_field import (
- GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField,
-)
from .types.get_loyalty_balance_programs_pid_transaction_history_response import (
GetLoyaltyBalanceProgramsPidTransactionHistoryResponse,
)
@@ -1030,7 +1027,7 @@ def get_transaction_history_api(
balance_definition_id: str,
limit: typing.Optional[int] = None,
offset: typing.Optional[int] = None,
- sort_field: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField] = None,
+ sort_field: typing.Optional[typing.Literal["createdAt"]] = None,
sort: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort] = None,
filters: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
request_options: typing.Optional[RequestOptions] = None,
@@ -1055,7 +1052,7 @@ def get_transaction_history_api(
offset : typing.Optional[int]
Skip a number of records
- sort_field : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField]
+ sort_field : typing.Optional[typing.Literal["createdAt"]]
Field to sort by
sort : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort]
@@ -1082,7 +1079,7 @@ def get_transaction_history_api(
client.balance.get_transaction_history_api(
pid="pid",
contact_id=1,
- balance_definition_id="balance_definition_id",
+ balance_definition_id="balanceDefinitionId",
)
"""
_response = self._raw_client.get_transaction_history_api(
@@ -2328,7 +2325,7 @@ async def get_transaction_history_api(
balance_definition_id: str,
limit: typing.Optional[int] = None,
offset: typing.Optional[int] = None,
- sort_field: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField] = None,
+ sort_field: typing.Optional[typing.Literal["createdAt"]] = None,
sort: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort] = None,
filters: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
request_options: typing.Optional[RequestOptions] = None,
@@ -2353,7 +2350,7 @@ async def get_transaction_history_api(
offset : typing.Optional[int]
Skip a number of records
- sort_field : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField]
+ sort_field : typing.Optional[typing.Literal["createdAt"]]
Field to sort by
sort : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort]
@@ -2385,7 +2382,7 @@ async def main() -> None:
await client.balance.get_transaction_history_api(
pid="pid",
contact_id=1,
- balance_definition_id="balance_definition_id",
+ balance_definition_id="balanceDefinitionId",
)
diff --git a/src/brevo/balance/raw_client.py b/src/brevo/balance/raw_client.py
index 37ff94a..4bb85b8 100644
--- a/src/brevo/balance/raw_client.py
+++ b/src/brevo/balance/raw_client.py
@@ -34,9 +34,6 @@
from .types.get_loyalty_balance_programs_pid_transaction_history_request_sort import (
GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort,
)
-from .types.get_loyalty_balance_programs_pid_transaction_history_request_sort_field import (
- GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField,
-)
from .types.get_loyalty_balance_programs_pid_transaction_history_response import (
GetLoyaltyBalanceProgramsPidTransactionHistoryResponse,
)
@@ -1843,7 +1840,7 @@ def get_transaction_history_api(
balance_definition_id: str,
limit: typing.Optional[int] = None,
offset: typing.Optional[int] = None,
- sort_field: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField] = None,
+ sort_field: typing.Optional[typing.Literal["createdAt"]] = None,
sort: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort] = None,
filters: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
request_options: typing.Optional[RequestOptions] = None,
@@ -1868,7 +1865,7 @@ def get_transaction_history_api(
offset : typing.Optional[int]
Skip a number of records
- sort_field : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField]
+ sort_field : typing.Optional[typing.Literal["createdAt"]]
Field to sort by
sort : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort]
@@ -1891,10 +1888,10 @@ def get_transaction_history_api(
params={
"limit": limit,
"offset": offset,
- "sort_field": sort_field,
+ "sortField": sort_field,
"sort": sort,
- "contact_id": contact_id,
- "balance_definition_id": balance_definition_id,
+ "contactId": contact_id,
+ "balanceDefinitionId": balance_definition_id,
"filters": filters,
},
request_options=request_options,
@@ -4069,7 +4066,7 @@ async def get_transaction_history_api(
balance_definition_id: str,
limit: typing.Optional[int] = None,
offset: typing.Optional[int] = None,
- sort_field: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField] = None,
+ sort_field: typing.Optional[typing.Literal["createdAt"]] = None,
sort: typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort] = None,
filters: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None,
request_options: typing.Optional[RequestOptions] = None,
@@ -4094,7 +4091,7 @@ async def get_transaction_history_api(
offset : typing.Optional[int]
Skip a number of records
- sort_field : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField]
+ sort_field : typing.Optional[typing.Literal["createdAt"]]
Field to sort by
sort : typing.Optional[GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort]
@@ -4117,10 +4114,10 @@ async def get_transaction_history_api(
params={
"limit": limit,
"offset": offset,
- "sort_field": sort_field,
+ "sortField": sort_field,
"sort": sort,
- "contact_id": contact_id,
- "balance_definition_id": balance_definition_id,
+ "contactId": contact_id,
+ "balanceDefinitionId": balance_definition_id,
"filters": filters,
},
request_options=request_options,
diff --git a/src/brevo/balance/types/__init__.py b/src/brevo/balance/types/__init__.py
index ae6894a..bc729fa 100644
--- a/src/brevo/balance/types/__init__.py
+++ b/src/brevo/balance/types/__init__.py
@@ -21,9 +21,6 @@
from .get_loyalty_balance_programs_pid_transaction_history_request_sort import (
GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort,
)
- from .get_loyalty_balance_programs_pid_transaction_history_request_sort_field import (
- GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField,
- )
from .get_loyalty_balance_programs_pid_transaction_history_response import (
GetLoyaltyBalanceProgramsPidTransactionHistoryResponse,
)
@@ -86,7 +83,6 @@
"GetContactBalancesResponse": ".get_contact_balances_response",
"GetContactBalancesResponseBalancesItem": ".get_contact_balances_response_balances_item",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort": ".get_loyalty_balance_programs_pid_transaction_history_request_sort",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField": ".get_loyalty_balance_programs_pid_transaction_history_request_sort_field",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse": ".get_loyalty_balance_programs_pid_transaction_history_response",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem": ".get_loyalty_balance_programs_pid_transaction_history_response_transaction_history_item",
"GetSubscriptionBalancesResponse": ".get_subscription_balances_response",
@@ -145,7 +141,6 @@ def __dir__():
"GetContactBalancesResponse",
"GetContactBalancesResponseBalancesItem",
"GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSort",
- "GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponse",
"GetLoyaltyBalanceProgramsPidTransactionHistoryResponseTransactionHistoryItem",
"GetSubscriptionBalancesResponse",
diff --git a/src/brevo/balance/types/get_loyalty_balance_programs_pid_transaction_history_request_sort_field.py b/src/brevo/balance/types/get_loyalty_balance_programs_pid_transaction_history_request_sort_field.py
deleted file mode 100644
index ce1c1ce..0000000
--- a/src/brevo/balance/types/get_loyalty_balance_programs_pid_transaction_history_request_sort_field.py
+++ /dev/null
@@ -1,7 +0,0 @@
-# This file was auto-generated by Fern from our API Definition.
-
-import typing
-
-GetLoyaltyBalanceProgramsPidTransactionHistoryRequestSortField = typing.Union[
- typing.Literal["name", "created_at", "updated_at"], typing.Any
-]
diff --git a/src/brevo/companies/__init__.py b/src/brevo/companies/__init__.py
index bba31d1..a7e4416 100644
--- a/src/brevo/companies/__init__.py
+++ b/src/brevo/companies/__init__.py
@@ -10,6 +10,8 @@
GetCompaniesRequestSort,
GetCompaniesResponse,
GetCrmAttributesCompaniesResponseItem,
+ PatchCrmAttributesIdRequestObjectType,
+ PatchCrmAttributesIdRequestOptionsLabelsItem,
PostCompaniesImportResponse,
PostCompaniesResponse,
PostCrmAttributesRequestAttributeType,
@@ -20,6 +22,8 @@
"GetCompaniesRequestSort": ".types",
"GetCompaniesResponse": ".types",
"GetCrmAttributesCompaniesResponseItem": ".types",
+ "PatchCrmAttributesIdRequestObjectType": ".types",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem": ".types",
"PostCompaniesImportResponse": ".types",
"PostCompaniesResponse": ".types",
"PostCrmAttributesRequestAttributeType": ".types",
@@ -53,6 +57,8 @@ def __dir__():
"GetCompaniesRequestSort",
"GetCompaniesResponse",
"GetCrmAttributesCompaniesResponseItem",
+ "PatchCrmAttributesIdRequestObjectType",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem",
"PostCompaniesImportResponse",
"PostCompaniesResponse",
"PostCrmAttributesRequestAttributeType",
diff --git a/src/brevo/companies/client.py b/src/brevo/companies/client.py
index fb2d71e..ab09ada 100644
--- a/src/brevo/companies/client.py
+++ b/src/brevo/companies/client.py
@@ -10,6 +10,8 @@
from .types.get_companies_request_sort import GetCompaniesRequestSort
from .types.get_companies_response import GetCompaniesResponse
from .types.get_crm_attributes_companies_response_item import GetCrmAttributesCompaniesResponseItem
+from .types.patch_crm_attributes_id_request_object_type import PatchCrmAttributesIdRequestObjectType
+from .types.patch_crm_attributes_id_request_options_labels_item import PatchCrmAttributesIdRequestOptionsLabelsItem
from .types.post_companies_import_response import PostCompaniesImportResponse
from .types.post_companies_response import PostCompaniesResponse
from .types.post_crm_attributes_request_attribute_type import PostCrmAttributesRequestAttributeType
@@ -444,6 +446,81 @@ def create_a_company_deal_attribute(
)
return _response.data
+ def delete_an_attribute(self, id: str, *, request_options: typing.Optional[RequestOptions] = None) -> None:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ from brevo import Brevo
+
+ client = Brevo(
+ api_key="YOUR_API_KEY",
+ )
+ client.companies.delete_an_attribute(
+ id="id",
+ )
+ """
+ _response = self._raw_client.delete_an_attribute(id, request_options=request_options)
+ return _response.data
+
+ def update_an_attribute(
+ self,
+ id: str,
+ *,
+ label: typing.Optional[str] = OMIT,
+ options_labels: typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]] = OMIT,
+ object_type: typing.Optional[PatchCrmAttributesIdRequestObjectType] = OMIT,
+ request_options: typing.Optional[RequestOptions] = None,
+ ) -> None:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ label : typing.Optional[str]
+ Attribute display label
+
+ options_labels : typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]]
+ Updated labels for selectable options
+
+ object_type : typing.Optional[PatchCrmAttributesIdRequestObjectType]
+ The type of object the attribute belongs to, it cannot be updated after creation
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ from brevo import Brevo
+
+ client = Brevo(
+ api_key="YOUR_API_KEY",
+ )
+ client.companies.update_an_attribute(
+ id="id",
+ )
+ """
+ _response = self._raw_client.update_an_attribute(
+ id, label=label, options_labels=options_labels, object_type=object_type, request_options=request_options
+ )
+ return _response.data
+
def get_company_attributes(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> typing.List[GetCrmAttributesCompaniesResponseItem]:
@@ -959,6 +1036,97 @@ async def main() -> None:
)
return _response.data
+ async def delete_an_attribute(self, id: str, *, request_options: typing.Optional[RequestOptions] = None) -> None:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ import asyncio
+
+ from brevo import AsyncBrevo
+
+ client = AsyncBrevo(
+ api_key="YOUR_API_KEY",
+ )
+
+
+ async def main() -> None:
+ await client.companies.delete_an_attribute(
+ id="id",
+ )
+
+
+ asyncio.run(main())
+ """
+ _response = await self._raw_client.delete_an_attribute(id, request_options=request_options)
+ return _response.data
+
+ async def update_an_attribute(
+ self,
+ id: str,
+ *,
+ label: typing.Optional[str] = OMIT,
+ options_labels: typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]] = OMIT,
+ object_type: typing.Optional[PatchCrmAttributesIdRequestObjectType] = OMIT,
+ request_options: typing.Optional[RequestOptions] = None,
+ ) -> None:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ label : typing.Optional[str]
+ Attribute display label
+
+ options_labels : typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]]
+ Updated labels for selectable options
+
+ object_type : typing.Optional[PatchCrmAttributesIdRequestObjectType]
+ The type of object the attribute belongs to, it cannot be updated after creation
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ import asyncio
+
+ from brevo import AsyncBrevo
+
+ client = AsyncBrevo(
+ api_key="YOUR_API_KEY",
+ )
+
+
+ async def main() -> None:
+ await client.companies.update_an_attribute(
+ id="id",
+ )
+
+
+ asyncio.run(main())
+ """
+ _response = await self._raw_client.update_an_attribute(
+ id, label=label, options_labels=options_labels, object_type=object_type, request_options=request_options
+ )
+ return _response.data
+
async def get_company_attributes(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> typing.List[GetCrmAttributesCompaniesResponseItem]:
diff --git a/src/brevo/companies/raw_client.py b/src/brevo/companies/raw_client.py
index d889cfc..4353d9e 100644
--- a/src/brevo/companies/raw_client.py
+++ b/src/brevo/companies/raw_client.py
@@ -10,6 +10,7 @@
from ..core.http_response import AsyncHttpResponse, HttpResponse
from ..core.jsonable_encoder import jsonable_encoder
from ..core.request_options import RequestOptions
+from ..core.serialization import convert_and_respect_annotation_metadata
from ..core.unchecked_base_model import construct_type
from ..errors.bad_request_error import BadRequestError
from ..errors.not_found_error import NotFoundError
@@ -17,6 +18,8 @@
from .types.get_companies_request_sort import GetCompaniesRequestSort
from .types.get_companies_response import GetCompaniesResponse
from .types.get_crm_attributes_companies_response_item import GetCrmAttributesCompaniesResponseItem
+from .types.patch_crm_attributes_id_request_object_type import PatchCrmAttributesIdRequestObjectType
+from .types.patch_crm_attributes_id_request_options_labels_item import PatchCrmAttributesIdRequestOptionsLabelsItem
from .types.post_companies_import_response import PostCompaniesImportResponse
from .types.post_companies_response import PostCompaniesResponse
from .types.post_crm_attributes_request_attribute_type import PostCrmAttributesRequestAttributeType
@@ -621,6 +624,136 @@ def create_a_company_deal_attribute(
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+ def delete_an_attribute(
+ self, id: str, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> HttpResponse[None]:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ HttpResponse[None]
+ """
+ _response = self._client_wrapper.httpx_client.request(
+ f"crm/attributes/{jsonable_encoder(id)}",
+ method="DELETE",
+ request_options=request_options,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return HttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
+ def update_an_attribute(
+ self,
+ id: str,
+ *,
+ label: typing.Optional[str] = OMIT,
+ options_labels: typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]] = OMIT,
+ object_type: typing.Optional[PatchCrmAttributesIdRequestObjectType] = OMIT,
+ request_options: typing.Optional[RequestOptions] = None,
+ ) -> HttpResponse[None]:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ label : typing.Optional[str]
+ Attribute display label
+
+ options_labels : typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]]
+ Updated labels for selectable options
+
+ object_type : typing.Optional[PatchCrmAttributesIdRequestObjectType]
+ The type of object the attribute belongs to, it cannot be updated after creation
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ HttpResponse[None]
+ """
+ _response = self._client_wrapper.httpx_client.request(
+ f"crm/attributes/{jsonable_encoder(id)}",
+ method="PATCH",
+ json={
+ "label": label,
+ "optionsLabels": convert_and_respect_annotation_metadata(
+ object_=options_labels,
+ annotation=typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem],
+ direction="write",
+ ),
+ "objectType": object_type,
+ },
+ headers={
+ "content-type": "application/json",
+ },
+ request_options=request_options,
+ omit=OMIT,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return HttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
def get_company_attributes(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[typing.List[GetCrmAttributesCompaniesResponseItem]]:
@@ -1250,6 +1383,136 @@ async def create_a_company_deal_attribute(
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+ async def delete_an_attribute(
+ self, id: str, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> AsyncHttpResponse[None]:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ AsyncHttpResponse[None]
+ """
+ _response = await self._client_wrapper.httpx_client.request(
+ f"crm/attributes/{jsonable_encoder(id)}",
+ method="DELETE",
+ request_options=request_options,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return AsyncHttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
+ async def update_an_attribute(
+ self,
+ id: str,
+ *,
+ label: typing.Optional[str] = OMIT,
+ options_labels: typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]] = OMIT,
+ object_type: typing.Optional[PatchCrmAttributesIdRequestObjectType] = OMIT,
+ request_options: typing.Optional[RequestOptions] = None,
+ ) -> AsyncHttpResponse[None]:
+ """
+ Parameters
+ ----------
+ id : str
+ Attribute ID
+
+ label : typing.Optional[str]
+ Attribute display label
+
+ options_labels : typing.Optional[typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem]]
+ Updated labels for selectable options
+
+ object_type : typing.Optional[PatchCrmAttributesIdRequestObjectType]
+ The type of object the attribute belongs to, it cannot be updated after creation
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ AsyncHttpResponse[None]
+ """
+ _response = await self._client_wrapper.httpx_client.request(
+ f"crm/attributes/{jsonable_encoder(id)}",
+ method="PATCH",
+ json={
+ "label": label,
+ "optionsLabels": convert_and_respect_annotation_metadata(
+ object_=options_labels,
+ annotation=typing.Sequence[PatchCrmAttributesIdRequestOptionsLabelsItem],
+ direction="write",
+ ),
+ "objectType": object_type,
+ },
+ headers={
+ "content-type": "application/json",
+ },
+ request_options=request_options,
+ omit=OMIT,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return AsyncHttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
async def get_company_attributes(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[typing.List[GetCrmAttributesCompaniesResponseItem]]:
diff --git a/src/brevo/companies/types/__init__.py b/src/brevo/companies/types/__init__.py
index ebdd47b..3edf93b 100644
--- a/src/brevo/companies/types/__init__.py
+++ b/src/brevo/companies/types/__init__.py
@@ -9,6 +9,8 @@
from .get_companies_request_sort import GetCompaniesRequestSort
from .get_companies_response import GetCompaniesResponse
from .get_crm_attributes_companies_response_item import GetCrmAttributesCompaniesResponseItem
+ from .patch_crm_attributes_id_request_object_type import PatchCrmAttributesIdRequestObjectType
+ from .patch_crm_attributes_id_request_options_labels_item import PatchCrmAttributesIdRequestOptionsLabelsItem
from .post_companies_import_response import PostCompaniesImportResponse
from .post_companies_response import PostCompaniesResponse
from .post_crm_attributes_request_attribute_type import PostCrmAttributesRequestAttributeType
@@ -18,6 +20,8 @@
"GetCompaniesRequestSort": ".get_companies_request_sort",
"GetCompaniesResponse": ".get_companies_response",
"GetCrmAttributesCompaniesResponseItem": ".get_crm_attributes_companies_response_item",
+ "PatchCrmAttributesIdRequestObjectType": ".patch_crm_attributes_id_request_object_type",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem": ".patch_crm_attributes_id_request_options_labels_item",
"PostCompaniesImportResponse": ".post_companies_import_response",
"PostCompaniesResponse": ".post_companies_response",
"PostCrmAttributesRequestAttributeType": ".post_crm_attributes_request_attribute_type",
@@ -51,6 +55,8 @@ def __dir__():
"GetCompaniesRequestSort",
"GetCompaniesResponse",
"GetCrmAttributesCompaniesResponseItem",
+ "PatchCrmAttributesIdRequestObjectType",
+ "PatchCrmAttributesIdRequestOptionsLabelsItem",
"PostCompaniesImportResponse",
"PostCompaniesResponse",
"PostCrmAttributesRequestAttributeType",
diff --git a/src/brevo/companies/types/patch_crm_attributes_id_request_object_type.py b/src/brevo/companies/types/patch_crm_attributes_id_request_object_type.py
new file mode 100644
index 0000000..8fc68d0
--- /dev/null
+++ b/src/brevo/companies/types/patch_crm_attributes_id_request_object_type.py
@@ -0,0 +1,5 @@
+# This file was auto-generated by Fern from our API Definition.
+
+import typing
+
+PatchCrmAttributesIdRequestObjectType = typing.Union[typing.Literal["companies", "deals"], typing.Any]
diff --git a/src/brevo/companies/types/patch_crm_attributes_id_request_options_labels_item.py b/src/brevo/companies/types/patch_crm_attributes_id_request_options_labels_item.py
new file mode 100644
index 0000000..d616945
--- /dev/null
+++ b/src/brevo/companies/types/patch_crm_attributes_id_request_options_labels_item.py
@@ -0,0 +1,28 @@
+# This file was auto-generated by Fern from our API Definition.
+
+import typing
+
+import pydantic
+from ...core.pydantic_utilities import IS_PYDANTIC_V2
+from ...core.unchecked_base_model import UncheckedBaseModel
+
+
+class PatchCrmAttributesIdRequestOptionsLabelsItem(UncheckedBaseModel):
+ key: str = pydantic.Field()
+ """
+ Internal option identifier
+ """
+
+ value: str = pydantic.Field()
+ """
+ Display label for the option
+ """
+
+ if IS_PYDANTIC_V2:
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
+ else:
+
+ class Config:
+ frozen = True
+ smart_union = True
+ extra = pydantic.Extra.allow
diff --git a/src/brevo/contacts/client.py b/src/brevo/contacts/client.py
index d9c635e..192a191 100644
--- a/src/brevo/contacts/client.py
+++ b/src/brevo/contacts/client.py
@@ -83,14 +83,6 @@ def get_contacts(
request_options: typing.Optional[RequestOptions] = None,
) -> GetContacts:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
Parameters
----------
limit : typing.Optional[int]
@@ -161,6 +153,8 @@ def create_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateContactResponse:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
Creates new contacts on Brevo. Contacts can be created by passing either -
1. email address of the contact (email_id),
2. phone number of the contact (to be passed as "SMS" field in "attributes" along with proper country code), For example- {"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}
3. ext_id
Parameters
@@ -490,9 +484,7 @@ def create_doi_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
-
- attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
-
+ attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
Parameters
----------
@@ -630,17 +622,11 @@ def get_folders(
request_options: typing.Optional[RequestOptions] = None,
) -> GetFoldersResponse:
"""
-
- Ongoing changes for this endpoint
-
+ Ongoing changes for this endpoint
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
These are non breaking changes.
-
The default value for the attributes will be 0.
-
- The uniqueSubscribers field is deprecated
-
+ The uniqueSubscribers field is deprecated
Parameters
----------
@@ -704,13 +690,9 @@ def create_folder(
def get_folder(self, folder_id: int, *, request_options: typing.Optional[RequestOptions] = None) -> GetFolder:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -814,13 +796,9 @@ def get_folder_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> GetFolderListsResponse:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -956,13 +934,9 @@ def get_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> GetListsResponse:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -1336,14 +1310,8 @@ def get_contact_info(
request_options: typing.Optional[RequestOptions] = None,
) -> GetContactInfoResponse:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to get a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL), phone_id (for SMS) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL, SMS and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
Along with the contact details, this endpoint will show the statistics of contact for the recent 90 days by default. To fetch the earlier statistics, please use Get contact campaign stats ``https://developers.brevo.com/reference/contacts-7#getcontactstats`` endpoint with the appropriate date ranges.
Parameters
@@ -1403,6 +1371,8 @@ def update_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
Parameters
@@ -1581,14 +1551,6 @@ async def get_contacts(
request_options: typing.Optional[RequestOptions] = None,
) -> GetContacts:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
Parameters
----------
limit : typing.Optional[int]
@@ -1667,6 +1629,8 @@ async def create_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateContactResponse:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
Creates new contacts on Brevo. Contacts can be created by passing either -
1. email address of the contact (email_id),
2. phone number of the contact (to be passed as "SMS" field in "attributes" along with proper country code), For example- {"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}
3. ext_id
Parameters
@@ -2052,9 +2016,7 @@ async def create_doi_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
-
- attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
-
+ attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
Parameters
----------
@@ -2208,17 +2170,11 @@ async def get_folders(
request_options: typing.Optional[RequestOptions] = None,
) -> GetFoldersResponse:
"""
-
- Ongoing changes for this endpoint
-
+ Ongoing changes for this endpoint
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
These are non breaking changes.
-
The default value for the attributes will be 0.
-
- The uniqueSubscribers field is deprecated
-
+ The uniqueSubscribers field is deprecated
Parameters
----------
@@ -2300,13 +2256,9 @@ async def main() -> None:
async def get_folder(self, folder_id: int, *, request_options: typing.Optional[RequestOptions] = None) -> GetFolder:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -2434,13 +2386,9 @@ async def get_folder_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> GetFolderListsResponse:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -2592,13 +2540,9 @@ async def get_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> GetListsResponse:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -3050,14 +2994,8 @@ async def get_contact_info(
request_options: typing.Optional[RequestOptions] = None,
) -> GetContactInfoResponse:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to get a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL), phone_id (for SMS) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL, SMS and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
Along with the contact details, this endpoint will show the statistics of contact for the recent 90 days by default. To fetch the earlier statistics, please use Get contact campaign stats ``https://developers.brevo.com/reference/contacts-7#getcontactstats`` endpoint with the appropriate date ranges.
Parameters
@@ -3125,6 +3063,8 @@ async def update_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
Parameters
diff --git a/src/brevo/contacts/raw_client.py b/src/brevo/contacts/raw_client.py
index 26615a1..3ff6cd0 100644
--- a/src/brevo/contacts/raw_client.py
+++ b/src/brevo/contacts/raw_client.py
@@ -84,14 +84,6 @@ def get_contacts(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetContacts]:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
Parameters
----------
limit : typing.Optional[int]
@@ -192,6 +184,8 @@ def create_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[CreateContactResponse]:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
Creates new contacts on Brevo. Contacts can be created by passing either -
1. email address of the contact (email_id),
2. phone number of the contact (to be passed as "SMS" field in "attributes" along with proper country code), For example- {"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}
3. ext_id
Parameters
@@ -669,9 +663,7 @@ def create_doi_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[None]:
"""
-
- attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
-
+ attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
Parameters
----------
@@ -859,17 +851,11 @@ def get_folders(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetFoldersResponse]:
"""
-
- Ongoing changes for this endpoint
-
+ Ongoing changes for this endpoint
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
These are non breaking changes.
-
The default value for the attributes will be 0.
-
- The uniqueSubscribers field is deprecated
-
+ The uniqueSubscribers field is deprecated
Parameters
----------
@@ -985,13 +971,9 @@ def get_folder(
self, folder_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[GetFolder]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -1174,13 +1156,9 @@ def get_folder_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetFolderListsResponse]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -1374,13 +1352,9 @@ def get_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetListsResponse]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -1993,14 +1967,8 @@ def get_contact_info(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetContactInfoResponse]:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to get a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL), phone_id (for SMS) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL, SMS and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
Along with the contact details, this endpoint will show the statistics of contact for the recent 90 days by default. To fetch the earlier statistics, please use Get contact campaign stats ``https://developers.brevo.com/reference/contacts-7#getcontactstats`` endpoint with the appropriate date ranges.
Parameters
@@ -2087,6 +2055,8 @@ def update_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[None]:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
Parameters
@@ -2358,14 +2328,6 @@ async def get_contacts(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetContacts]:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
Parameters
----------
limit : typing.Optional[int]
@@ -2466,6 +2428,8 @@ async def create_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[CreateContactResponse]:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
Creates new contacts on Brevo. Contacts can be created by passing either -
1. email address of the contact (email_id),
2. phone number of the contact (to be passed as "SMS" field in "attributes" along with proper country code), For example- {"SMS":"+91xxxxxxxxxx"} or {"SMS":"0091xxxxxxxxxx"}
3. ext_id
Parameters
@@ -2943,9 +2907,7 @@ async def create_doi_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[None]:
"""
-
- attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
-
+ attributes param in this endpoint is an object containing key-value pairs where values can be either a string, integer, array, or boolean. You can create key-value pairs with these four datatypes. When a value is an array, it should be an array of strings.
Parameters
----------
@@ -3133,17 +3095,11 @@ async def get_folders(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetFoldersResponse]:
"""
-
- Ongoing changes for this endpoint
-
+ Ongoing changes for this endpoint
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
These are non breaking changes.
-
The default value for the attributes will be 0.
-
- The uniqueSubscribers field is deprecated
-
+ The uniqueSubscribers field is deprecated
Parameters
----------
@@ -3259,13 +3215,9 @@ async def get_folder(
self, folder_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[GetFolder]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -3448,13 +3400,9 @@ async def get_folder_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetFolderListsResponse]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -3648,13 +3596,9 @@ async def get_lists(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetListsResponse]:
"""
-
- Ongoing changes for this endpoint.
-
+ Ongoing changes for this endpoint.
We're dropping support for the response attributes totalSubscribers and totalBlacklisted.
-
- These are non breaking changes. The default value for the attributes will be 0.
-
+ These are non breaking changes. The default value for the attributes will be 0.
Parameters
----------
@@ -4267,14 +4211,8 @@ async def get_contact_info(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetContactInfoResponse]:
"""
-
- Accepted Number Formats
-
- 91xxxxxxxxxx
- +91xxxxxxxxxx
- 0091xxxxxxxxxx
-
-
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to get a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL), phone_id (for SMS) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL, SMS and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, phone_id for SMS attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE_NUMBER attribute
Along with the contact details, this endpoint will show the statistics of contact for the recent 90 days by default. To fetch the earlier statistics, please use Get contact campaign stats ``https://developers.brevo.com/reference/contacts-7#getcontactstats`` endpoint with the appropriate date ranges.
Parameters
@@ -4361,6 +4299,8 @@ async def update_contact(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[None]:
"""
+ Follow this format when passing a "SMS" phone number as an attribute.
+ Accepted Number Formats 91xxxxxxxxxx +91xxxxxxxxxx 0091xxxxxxxxxx
There are 2 ways to update a contact
Option 1- https://api.brevo.com/v3/contacts/{identifier}
Option 2- https://api.brevo.com/v3/contacts/{identifier}?identifierType={}
Option 1 only works if identifierType is email_id (for EMAIL) or contact_id (for ID of the contact),where you can directly pass the value of EMAIL and ID of the contact.
Option 2 works for all identifierType, use email_id for EMAIL attribute, contact_id for ID of the contact, ext_id for EXT_ID attribute, phone_id for SMS attribute, whatsapp_id for WHATSAPP attribute, landline_number_id for LANDLINE attribute
Parameters
diff --git a/src/brevo/core/__init__.py b/src/brevo/core/__init__.py
index 102b846..b91adb6 100644
--- a/src/brevo/core/__init__.py
+++ b/src/brevo/core/__init__.py
@@ -8,7 +8,7 @@
if typing.TYPE_CHECKING:
from .api_error import ApiError
from .client_wrapper import AsyncClientWrapper, BaseClientWrapper, SyncClientWrapper
- from .datetime_utils import serialize_datetime
+ from .datetime_utils import Rfc2822DateTime, parse_rfc2822_datetime, serialize_datetime
from .file import File, convert_file_dict_to_httpx_tuples, with_content_type
from .http_client import AsyncHttpClient, HttpClient
from .http_response import AsyncHttpResponse, HttpResponse
@@ -45,6 +45,7 @@
"LogLevel": ".logging",
"Logger": ".logging",
"RequestOptions": ".request_options",
+ "Rfc2822DateTime": ".datetime_utils",
"SyncClientWrapper": ".client_wrapper",
"UncheckedBaseModel": ".unchecked_base_model",
"UnionMetadata": ".unchecked_base_model",
@@ -57,6 +58,7 @@
"encode_query": ".query_encoder",
"jsonable_encoder": ".jsonable_encoder",
"parse_obj_as": ".pydantic_utilities",
+ "parse_rfc2822_datetime": ".datetime_utils",
"remove_none_from_dict": ".remove_none_from_dict",
"serialize_datetime": ".datetime_utils",
"universal_field_validator": ".pydantic_utilities",
@@ -104,6 +106,7 @@ def __dir__():
"LogLevel",
"Logger",
"RequestOptions",
+ "Rfc2822DateTime",
"SyncClientWrapper",
"UncheckedBaseModel",
"UnionMetadata",
@@ -116,6 +119,7 @@ def __dir__():
"encode_query",
"jsonable_encoder",
"parse_obj_as",
+ "parse_rfc2822_datetime",
"remove_none_from_dict",
"serialize_datetime",
"universal_field_validator",
diff --git a/src/brevo/core/client_wrapper.py b/src/brevo/core/client_wrapper.py
index 9ae490a..8367ed7 100644
--- a/src/brevo/core/client_wrapper.py
+++ b/src/brevo/core/client_wrapper.py
@@ -27,12 +27,12 @@ def get_headers(self) -> typing.Dict[str, str]:
import platform
headers: typing.Dict[str, str] = {
- "User-Agent": "brevo-python/4.0.7",
+ "User-Agent": "brevo-python/4.0.6",
"X-Fern-Language": "Python",
"X-Fern-Runtime": f"python/{platform.python_version()}",
"X-Fern-Platform": f"{platform.system().lower()}/{platform.release()}",
"X-Fern-SDK-Name": "brevo-python",
- "X-Fern-SDK-Version": "4.0.7",
+ "X-Fern-SDK-Version": "4.0.6",
**(self.get_custom_headers() or {}),
}
headers["api-key"] = self.api_key
diff --git a/src/brevo/core/datetime_utils.py b/src/brevo/core/datetime_utils.py
index 7c9864a..a12b2ad 100644
--- a/src/brevo/core/datetime_utils.py
+++ b/src/brevo/core/datetime_utils.py
@@ -1,6 +1,48 @@
# This file was auto-generated by Fern from our API Definition.
import datetime as dt
+from email.utils import parsedate_to_datetime
+from typing import Any
+
+import pydantic
+
+IS_PYDANTIC_V2 = pydantic.VERSION.startswith("2.")
+
+
+def parse_rfc2822_datetime(v: Any) -> dt.datetime:
+ """
+ Parse an RFC 2822 datetime string (e.g., "Wed, 02 Oct 2002 13:00:00 GMT")
+ into a datetime object. If the value is already a datetime, return it as-is.
+ Falls back to ISO 8601 parsing if RFC 2822 parsing fails.
+ """
+ if isinstance(v, dt.datetime):
+ return v
+ if isinstance(v, str):
+ try:
+ return parsedate_to_datetime(v)
+ except Exception:
+ pass
+ # Fallback to ISO 8601 parsing
+ return dt.datetime.fromisoformat(v.replace("Z", "+00:00"))
+ raise ValueError(f"Expected str or datetime, got {type(v)}")
+
+
+class Rfc2822DateTime(dt.datetime):
+ """A datetime subclass that parses RFC 2822 date strings.
+
+ On Pydantic V1, uses __get_validators__ for pre-validation.
+ On Pydantic V2, uses __get_pydantic_core_schema__ for BeforeValidator-style parsing.
+ """
+
+ @classmethod
+ def __get_validators__(cls): # type: ignore[no-untyped-def]
+ yield parse_rfc2822_datetime
+
+ @classmethod
+ def __get_pydantic_core_schema__(cls, _source_type: Any, _handler: Any) -> Any: # type: ignore[override]
+ from pydantic_core import core_schema
+
+ return core_schema.no_info_before_validator_function(parse_rfc2822_datetime, core_schema.datetime_schema())
def serialize_datetime(v: dt.datetime) -> str:
diff --git a/src/brevo/custom_objects/client.py b/src/brevo/custom_objects/client.py
index f7a0cee..e60c8bc 100644
--- a/src/brevo/custom_objects/client.py
+++ b/src/brevo/custom_objects/client.py
@@ -40,12 +40,8 @@ def upsertrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> UpsertrecordsResponse:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API allows bulk upsert of object records in a single request. Each object record may include
- Attributes
- Identifiers
@@ -59,8 +55,8 @@ def upsertrecords(
- Max 500 attributes defined per object record upsert request
- This is coherent with schema limitation: an object cannot have more than 500 attributes.
- Worth noting: Nothing happens If an attribute is mentioned in the request, but was not previously defined for the object schema (no error, no attribute creation)
- - Max 10 associations defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 10 associations with other objects. and each object record can be linked to max 10 other records.
+ - Max 10 associations defined per associated object type, in each record of the request
+ - This is not a schema limitation. You can associate an object record to an unlimited number of other object records by running multiple requests.
**Errors:**
- Make sure both object records exist before associating them, else the API will return an error.
- This route does not create objects. The object where the object records are upserted by this API must be created already else the API will return an error "invalid object type".
@@ -108,12 +104,8 @@ def getrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> GetrecordsResponse:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API retrieves a list of object records along with their associated records and provides the total count of records for the specified object. **Note**: Contact as object type is not supported in this endpoint.
Parameters
@@ -238,12 +230,8 @@ async def upsertrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> UpsertrecordsResponse:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API allows bulk upsert of object records in a single request. Each object record may include
- Attributes
- Identifiers
@@ -257,8 +245,8 @@ async def upsertrecords(
- Max 500 attributes defined per object record upsert request
- This is coherent with schema limitation: an object cannot have more than 500 attributes.
- Worth noting: Nothing happens If an attribute is mentioned in the request, but was not previously defined for the object schema (no error, no attribute creation)
- - Max 10 associations defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 10 associations with other objects. and each object record can be linked to max 10 other records.
+ - Max 10 associations defined per associated object type, in each record of the request
+ - This is not a schema limitation. You can associate an object record to an unlimited number of other object records by running multiple requests.
**Errors:**
- Make sure both object records exist before associating them, else the API will return an error.
- This route does not create objects. The object where the object records are upserted by this API must be created already else the API will return an error "invalid object type".
@@ -314,12 +302,8 @@ async def getrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> GetrecordsResponse:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API retrieves a list of object records along with their associated records and provides the total count of records for the specified object. **Note**: Contact as object type is not supported in this endpoint.
Parameters
diff --git a/src/brevo/custom_objects/raw_client.py b/src/brevo/custom_objects/raw_client.py
index ffe43c6..35e84e8 100644
--- a/src/brevo/custom_objects/raw_client.py
+++ b/src/brevo/custom_objects/raw_client.py
@@ -39,12 +39,8 @@ def upsertrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[UpsertrecordsResponse]:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API allows bulk upsert of object records in a single request. Each object record may include
- Attributes
- Identifiers
@@ -58,8 +54,8 @@ def upsertrecords(
- Max 500 attributes defined per object record upsert request
- This is coherent with schema limitation: an object cannot have more than 500 attributes.
- Worth noting: Nothing happens If an attribute is mentioned in the request, but was not previously defined for the object schema (no error, no attribute creation)
- - Max 10 associations defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 10 associations with other objects. and each object record can be linked to max 10 other records.
+ - Max 10 associations defined per associated object type, in each record of the request
+ - This is not a schema limitation. You can associate an object record to an unlimited number of other object records by running multiple requests.
**Errors:**
- Make sure both object records exist before associating them, else the API will return an error.
- This route does not create objects. The object where the object records are upserted by this API must be created already else the API will return an error "invalid object type".
@@ -164,12 +160,8 @@ def getrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetrecordsResponse]:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API retrieves a list of object records along with their associated records and provides the total count of records for the specified object. **Note**: Contact as object type is not supported in this endpoint.
Parameters
@@ -381,12 +373,8 @@ async def upsertrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[UpsertrecordsResponse]:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API allows bulk upsert of object records in a single request. Each object record may include
- Attributes
- Identifiers
@@ -400,8 +388,8 @@ async def upsertrecords(
- Max 500 attributes defined per object record upsert request
- This is coherent with schema limitation: an object cannot have more than 500 attributes.
- Worth noting: Nothing happens If an attribute is mentioned in the request, but was not previously defined for the object schema (no error, no attribute creation)
- - Max 10 associations defined per object record upsert request
- - This is coherent with schema limitation: an object cannot have more than 10 associations with other objects. and each object record can be linked to max 10 other records.
+ - Max 10 associations defined per associated object type, in each record of the request
+ - This is not a schema limitation. You can associate an object record to an unlimited number of other object records by running multiple requests.
**Errors:**
- Make sure both object records exist before associating them, else the API will return an error.
- This route does not create objects. The object where the object records are upserted by this API must be created already else the API will return an error "invalid object type".
@@ -506,12 +494,8 @@ async def getrecords(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetrecordsResponse]:
"""
-
- Custom objects are only available to Enterprise plans.
-
- This feature is in beta. These are subject to change.
-
-
+ Custom objects are only available to Enterprise plans.
+ This feature is in beta. These are subject to change.
This API retrieves a list of object records along with their associated records and provides the total count of records for the specified object. **Note**: Contact as object type is not supported in this endpoint.
Parameters
diff --git a/src/brevo/custom_objects/types/upsertrecords_request_records_item.py b/src/brevo/custom_objects/types/upsertrecords_request_records_item.py
index c96044f..151d903 100644
--- a/src/brevo/custom_objects/types/upsertrecords_request_records_item.py
+++ b/src/brevo/custom_objects/types/upsertrecords_request_records_item.py
@@ -13,7 +13,7 @@ class UpsertrecordsRequestRecordsItem(UncheckedBaseModel):
associations: typing.Optional[typing.List[UpsertrecordsRequestRecordsItemAssociationsItem]] = None
attributes: typing.Optional[typing.Dict[str, typing.Any]] = pydantic.Field(default=None)
"""
- Attributes attached with the object record. Only the already created attributes will be used with records. Minimum 1 attribute is required.
+ Attributes attached with the object record. Only the already created attributes will be used with records. Pass the value with the attributes key you want to set or update for the object record. Minimum 1 attribute is required.
"""
identifiers: typing.Optional[UpsertrecordsRequestRecordsItemIdentifiers] = pydantic.Field(default=None)
diff --git a/src/brevo/custom_objects/types/upsertrecords_response.py b/src/brevo/custom_objects/types/upsertrecords_response.py
index f58117f..6948d31 100644
--- a/src/brevo/custom_objects/types/upsertrecords_response.py
+++ b/src/brevo/custom_objects/types/upsertrecords_response.py
@@ -15,7 +15,8 @@ class UpsertrecordsResponse(UncheckedBaseModel):
typing.Optional[int],
FieldMetadata(alias="processId"),
pydantic.Field(
- alias="processId", description="Unique Id for the batch process used to track the status of the batch."
+ alias="processId",
+ description="Unique Id for the batch process used to track the status of the batch. **How to use this processId:** Refer to the [Get process status API](https://developers.brevo.com/reference/get-process) to check the execution status of this batch using the returned `processId`.",
),
] = None
diff --git a/src/brevo/ecommerce/client.py b/src/brevo/ecommerce/client.py
index 6b150ea..531db05 100644
--- a/src/brevo/ecommerce/client.py
+++ b/src/brevo/ecommerce/client.py
@@ -624,7 +624,7 @@ def create_order(
Examples
--------
- from brevo import Brevo, OrderProductsItem
+ from brevo import Brevo, OrderProductsItemQuantity
client = Brevo(
api_key="YOUR_API_KEY",
@@ -634,10 +634,8 @@ def create_order(
created_at="2021-07-29T20:59:23.383Z",
id="14",
products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
+ OrderProductsItemQuantity(
+ quantity=10,
)
],
status="completed",
@@ -692,7 +690,7 @@ def create_batch_order(
Examples
--------
- from brevo import Brevo, Order, OrderProductsItem
+ from brevo import Brevo, Order, OrderProductsItemQuantity
client = Brevo(
api_key="YOUR_API_KEY",
@@ -704,10 +702,8 @@ def create_batch_order(
created_at="2021-07-29T20:59:23.383Z",
id="14",
products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
+ OrderProductsItemQuantity(
+ quantity=10,
)
],
status="completed",
@@ -1706,7 +1702,7 @@ async def create_order(
--------
import asyncio
- from brevo import AsyncBrevo, OrderProductsItem
+ from brevo import AsyncBrevo, OrderProductsItemQuantity
client = AsyncBrevo(
api_key="YOUR_API_KEY",
@@ -1719,10 +1715,8 @@ async def main() -> None:
created_at="2021-07-29T20:59:23.383Z",
id="14",
products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
+ OrderProductsItemQuantity(
+ quantity=10,
)
],
status="completed",
@@ -1782,7 +1776,7 @@ async def create_batch_order(
--------
import asyncio
- from brevo import AsyncBrevo, Order, OrderProductsItem
+ from brevo import AsyncBrevo, Order, OrderProductsItemQuantity
client = AsyncBrevo(
api_key="YOUR_API_KEY",
@@ -1797,10 +1791,8 @@ async def main() -> None:
created_at="2021-07-29T20:59:23.383Z",
id="14",
products=[
- OrderProductsItem(
- price=99.99,
- product_id="P1",
- quantity=10.0,
+ OrderProductsItemQuantity(
+ quantity=10,
)
],
status="completed",
diff --git a/src/brevo/email_campaigns/client.py b/src/brevo/email_campaigns/client.py
index 86995ee..e85242d 100644
--- a/src/brevo/email_campaigns/client.py
+++ b/src/brevo/email_campaigns/client.py
@@ -64,11 +64,8 @@ def get_email_campaigns(
request_options: typing.Optional[RequestOptions] = None,
) -> GetEmailCampaignsResponse:
"""
-
- The response payload for this endpoint has changed
-
- You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
-
+ The response payload for this endpoint has changed
+ You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
Parameters
----------
@@ -925,11 +922,8 @@ async def get_email_campaigns(
request_options: typing.Optional[RequestOptions] = None,
) -> GetEmailCampaignsResponse:
"""
-
- The response payload for this endpoint has changed
-
- You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
-
+ The response payload for this endpoint has changed
+ You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
Parameters
----------
diff --git a/src/brevo/email_campaigns/raw_client.py b/src/brevo/email_campaigns/raw_client.py
index 4447182..9e7fae3 100644
--- a/src/brevo/email_campaigns/raw_client.py
+++ b/src/brevo/email_campaigns/raw_client.py
@@ -63,11 +63,8 @@ def get_email_campaigns(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[GetEmailCampaignsResponse]:
"""
-
- The response payload for this endpoint has changed
-
- You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
-
+ The response payload for this endpoint has changed
+ You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
Parameters
----------
@@ -1277,11 +1274,8 @@ async def get_email_campaigns(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[GetEmailCampaignsResponse]:
"""
-
- The response payload for this endpoint has changed
-
- You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
-
+ The response payload for this endpoint has changed
+ You now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/get-all-marketing-campaigns).
Parameters
----------
diff --git a/src/brevo/program/client.py b/src/brevo/program/client.py
index b1c316a..c93709e 100644
--- a/src/brevo/program/client.py
+++ b/src/brevo/program/client.py
@@ -347,6 +347,42 @@ def get_parameter_subscription_info(
)
return _response.data
+ def delete_contact_subscription(
+ self, pid: str, cid: int, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> None:
+ """
+ Delete subscription for a contact
+
+ Parameters
+ ----------
+ pid : str
+ Loyalty Program ID. A unique identifier for the loyalty program.
+
+ cid : int
+ Contact ID.
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ from brevo import Brevo
+
+ client = Brevo(
+ api_key="YOUR_API_KEY",
+ )
+ client.program.delete_contact_subscription(
+ pid="pid",
+ cid=1,
+ )
+ """
+ _response = self._raw_client.delete_contact_subscription(pid, cid, request_options=request_options)
+ return _response.data
+
def publish_loyalty_program(self, pid: str, *, request_options: typing.Optional[RequestOptions] = None) -> None:
"""
Publishes loyalty program
@@ -915,6 +951,50 @@ async def main() -> None:
)
return _response.data
+ async def delete_contact_subscription(
+ self, pid: str, cid: int, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> None:
+ """
+ Delete subscription for a contact
+
+ Parameters
+ ----------
+ pid : str
+ Loyalty Program ID. A unique identifier for the loyalty program.
+
+ cid : int
+ Contact ID.
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ None
+
+ Examples
+ --------
+ import asyncio
+
+ from brevo import AsyncBrevo
+
+ client = AsyncBrevo(
+ api_key="YOUR_API_KEY",
+ )
+
+
+ async def main() -> None:
+ await client.program.delete_contact_subscription(
+ pid="pid",
+ cid=1,
+ )
+
+
+ asyncio.run(main())
+ """
+ _response = await self._raw_client.delete_contact_subscription(pid, cid, request_options=request_options)
+ return _response.data
+
async def publish_loyalty_program(
self, pid: str, *, request_options: typing.Optional[RequestOptions] = None
) -> None:
diff --git a/src/brevo/program/raw_client.py b/src/brevo/program/raw_client.py
index 8814b4c..af86a2e 100644
--- a/src/brevo/program/raw_client.py
+++ b/src/brevo/program/raw_client.py
@@ -829,6 +829,106 @@ def get_parameter_subscription_info(
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+ def delete_contact_subscription(
+ self, pid: str, cid: int, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> HttpResponse[None]:
+ """
+ Delete subscription for a contact
+
+ Parameters
+ ----------
+ pid : str
+ Loyalty Program ID. A unique identifier for the loyalty program.
+
+ cid : int
+ Contact ID.
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ HttpResponse[None]
+ """
+ _response = self._client_wrapper.httpx_client.request(
+ f"loyalty/config/programs/{jsonable_encoder(pid)}/contact/{jsonable_encoder(cid)}",
+ method="DELETE",
+ request_options=request_options,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return HttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 401:
+ raise UnauthorizedError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 403:
+ raise ForbiddenError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 422:
+ raise UnprocessableEntityError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ ErrorModel,
+ construct_type(
+ type_=ErrorModel, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 500:
+ raise InternalServerError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
def publish_loyalty_program(
self, pid: str, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[None]:
@@ -2078,6 +2178,106 @@ async def get_parameter_subscription_info(
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+ async def delete_contact_subscription(
+ self, pid: str, cid: int, *, request_options: typing.Optional[RequestOptions] = None
+ ) -> AsyncHttpResponse[None]:
+ """
+ Delete subscription for a contact
+
+ Parameters
+ ----------
+ pid : str
+ Loyalty Program ID. A unique identifier for the loyalty program.
+
+ cid : int
+ Contact ID.
+
+ request_options : typing.Optional[RequestOptions]
+ Request-specific configuration.
+
+ Returns
+ -------
+ AsyncHttpResponse[None]
+ """
+ _response = await self._client_wrapper.httpx_client.request(
+ f"loyalty/config/programs/{jsonable_encoder(pid)}/contact/{jsonable_encoder(cid)}",
+ method="DELETE",
+ request_options=request_options,
+ )
+ try:
+ if 200 <= _response.status_code < 300:
+ return AsyncHttpResponse(response=_response, data=None)
+ if _response.status_code == 400:
+ raise BadRequestError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 401:
+ raise UnauthorizedError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 403:
+ raise ForbiddenError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 404:
+ raise NotFoundError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 422:
+ raise UnprocessableEntityError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ ErrorModel,
+ construct_type(
+ type_=ErrorModel, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ if _response.status_code == 500:
+ raise InternalServerError(
+ headers=dict(_response.headers),
+ body=typing.cast(
+ typing.Any,
+ construct_type(
+ type_=typing.Any, # type: ignore
+ object_=_response.json(),
+ ),
+ ),
+ )
+ _response_json = _response.json()
+ except JSONDecodeError:
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
+ raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
+
async def publish_loyalty_program(
self, pid: str, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[None]:
diff --git a/src/brevo/transactional_emails/client.py b/src/brevo/transactional_emails/client.py
index 76cfafd..5876fec 100644
--- a/src/brevo/transactional_emails/client.py
+++ b/src/brevo/transactional_emails/client.py
@@ -591,13 +591,9 @@ def get_transac_email_content(
self, uuid_: str, *, request_options: typing.Optional[RequestOptions] = None
) -> GetTransacEmailContentResponse:
"""
-
- You can get the uuid using either of the following methods:
-
+ You can get the uuid using either of the following methods:
Send a GET request to https://api.brevo.com/v3/smtp/emails and pass the message_id in the url. Use your api-key to authenticate the request and you will get your uuid as a response.
-
- The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
-
+ The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
Parameters
----------
@@ -1833,13 +1829,9 @@ async def get_transac_email_content(
self, uuid_: str, *, request_options: typing.Optional[RequestOptions] = None
) -> GetTransacEmailContentResponse:
"""
-
- You can get the uuid using either of the following methods:
-
+ You can get the uuid using either of the following methods:
Send a GET request to https://api.brevo.com/v3/smtp/emails and pass the message_id in the url. Use your api-key to authenticate the request and you will get your uuid as a response.
-
- The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
-
+ The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
Parameters
----------
diff --git a/src/brevo/transactional_emails/raw_client.py b/src/brevo/transactional_emails/raw_client.py
index f87270c..9d56f99 100644
--- a/src/brevo/transactional_emails/raw_client.py
+++ b/src/brevo/transactional_emails/raw_client.py
@@ -100,7 +100,7 @@ def get_transac_blocked_contacts(
"endDate": end_date,
"limit": limit,
"offset": offset,
- "senders": senders,
+ "senders": ",".join(map(str, senders)) if isinstance(senders, (list, tuple, set)) else senders,
"sort": sort,
},
request_options=request_options,
@@ -777,13 +777,9 @@ def get_transac_email_content(
self, uuid_: str, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[GetTransacEmailContentResponse]:
"""
-
- You can get the uuid using either of the following methods:
-
+ You can get the uuid using either of the following methods:
Send a GET request to https://api.brevo.com/v3/smtp/emails and pass the message_id in the url. Use your api-key to authenticate the request and you will get your uuid as a response.
-
- The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
-
+ The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
Parameters
----------
@@ -1696,7 +1692,7 @@ async def get_transac_blocked_contacts(
"endDate": end_date,
"limit": limit,
"offset": offset,
- "senders": senders,
+ "senders": ",".join(map(str, senders)) if isinstance(senders, (list, tuple, set)) else senders,
"sort": sort,
},
request_options=request_options,
@@ -2373,13 +2369,9 @@ async def get_transac_email_content(
self, uuid_: str, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[GetTransacEmailContentResponse]:
"""
-
- You can get the uuid using either of the following methods:
-
+ You can get the uuid using either of the following methods:
Send a GET request to https://api.brevo.com/v3/smtp/emails and pass the message_id in the url. Use your api-key to authenticate the request and you will get your uuid as a response.
-
- The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
-
+ The uuid can also be fetched from the transactional logs page in your Brevo account, from the address URL.
Parameters
----------
diff --git a/src/brevo/transactional_sms/client.py b/src/brevo/transactional_sms/client.py
index 545b436..dba8ec4 100644
--- a/src/brevo/transactional_sms/client.py
+++ b/src/brevo/transactional_sms/client.py
@@ -48,15 +48,9 @@ def send_async_transactional_sms(
request_options: typing.Optional[RequestOptions] = None,
) -> SendAsyncTransactionalSmsResponse:
"""
-
- If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
-
- Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
-
-
-
- Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
-
+ If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
+ Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
+ Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
Parameters
----------
@@ -381,15 +375,9 @@ async def send_async_transactional_sms(
request_options: typing.Optional[RequestOptions] = None,
) -> SendAsyncTransactionalSmsResponse:
"""
-
- If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
-
- Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
-
-
-
- Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
-
+ If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
+ Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
+ Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
Parameters
----------
diff --git a/src/brevo/transactional_sms/raw_client.py b/src/brevo/transactional_sms/raw_client.py
index 1370299..137c433 100644
--- a/src/brevo/transactional_sms/raw_client.py
+++ b/src/brevo/transactional_sms/raw_client.py
@@ -44,15 +44,9 @@ def send_async_transactional_sms(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[SendAsyncTransactionalSmsResponse]:
"""
-
- If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
-
- Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
-
-
-
- Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
-
+ If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
+ Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
+ Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
Parameters
----------
@@ -487,15 +481,9 @@ async def send_async_transactional_sms(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[SendAsyncTransactionalSmsResponse]:
"""
-
- If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
-
- Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
-
-
-
- Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
-
+ If the user includes stop code in the Transactional SMS, then it will be switched to Marketing SMS automatically and it will be interpreted as a Marketing SMS. To send Transactional SMS as Transactional, it is important not to use stop code.
+ Note: For adding a stop code, client has to add reply STOP to [STOP_CODE] and the [STOP_CODE] will be replaced with the number.
+ Transactional SMS can be sent at any time without time restrictions. However, if a message is categorized as Marketing, it must adhere to specific time restrictions. Messages sent outside of these restricted hours will experience delays and will be processed during allowable times. Specifically, Marketing SMS cannot be processed between 10pm and 8am, on Sundays, and on French public holidays.
Parameters
----------
diff --git a/src/brevo/transactional_whats_app/client.py b/src/brevo/transactional_whats_app/client.py
index dcce40b..9983ada 100644
--- a/src/brevo/transactional_whats_app/client.py
+++ b/src/brevo/transactional_whats_app/client.py
@@ -34,7 +34,8 @@ def send_whatsapp_message(
self, *, request: SendWhatsappMessageRequest, request_options: typing.Optional[RequestOptions] = None
) -> SendWhatsappMessageResponse:
"""
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below. [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
This endpoint is used to send a WhatsApp message.
(**The first message you send using the API must contain a Template ID. You must create a template on WhatsApp on the Brevo platform to fetch the Template ID.**)
Parameters
@@ -160,7 +161,8 @@ async def send_whatsapp_message(
self, *, request: SendWhatsappMessageRequest, request_options: typing.Optional[RequestOptions] = None
) -> SendWhatsappMessageResponse:
"""
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below. [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
This endpoint is used to send a WhatsApp message.
(**The first message you send using the API must contain a Template ID. You must create a template on WhatsApp on the Brevo platform to fetch the Template ID.**)
Parameters
diff --git a/src/brevo/transactional_whats_app/raw_client.py b/src/brevo/transactional_whats_app/raw_client.py
index ae45b99..c5f551f 100644
--- a/src/brevo/transactional_whats_app/raw_client.py
+++ b/src/brevo/transactional_whats_app/raw_client.py
@@ -28,7 +28,8 @@ def send_whatsapp_message(
self, *, request: SendWhatsappMessageRequest, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[SendWhatsappMessageResponse]:
"""
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below. [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
This endpoint is used to send a WhatsApp message.
(**The first message you send using the API must contain a Template ID. You must create a template on WhatsApp on the Brevo platform to fetch the Template ID.**)
Parameters
@@ -181,7 +182,8 @@ async def send_whatsapp_message(
self, *, request: SendWhatsappMessageRequest, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[SendWhatsappMessageResponse]:
"""
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below. [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
This endpoint is used to send a WhatsApp message.
(**The first message you send using the API must contain a Template ID. You must create a template on WhatsApp on the Brevo platform to fetch the Template ID.**)
Parameters
diff --git a/src/brevo/types/__init__.py b/src/brevo/types/__init__.py
index b563652..71a24a0 100644
--- a/src/brevo/types/__init__.py
+++ b/src/brevo/types/__init__.py
@@ -84,6 +84,8 @@
from .order_identifiers import OrderIdentifiers
from .order_meta_info_value import OrderMetaInfoValue
from .order_products_item import OrderProductsItem
+ from .order_products_item_quantity import OrderProductsItemQuantity
+ from .order_products_item_quantity_float import OrderProductsItemQuantityFloat
from .pipeline import Pipeline
from .pipeline_stages_item import PipelineStagesItem
from .pipelines import Pipelines
@@ -197,6 +199,8 @@
"OrderIdentifiers": ".order_identifiers",
"OrderMetaInfoValue": ".order_meta_info_value",
"OrderProductsItem": ".order_products_item",
+ "OrderProductsItemQuantity": ".order_products_item_quantity",
+ "OrderProductsItemQuantityFloat": ".order_products_item_quantity_float",
"Pipeline": ".pipeline",
"PipelineStagesItem": ".pipeline_stages_item",
"Pipelines": ".pipelines",
@@ -334,6 +338,8 @@ def __dir__():
"OrderIdentifiers",
"OrderMetaInfoValue",
"OrderProductsItem",
+ "OrderProductsItemQuantity",
+ "OrderProductsItemQuantityFloat",
"Pipeline",
"PipelineStagesItem",
"Pipelines",
diff --git a/src/brevo/types/order_products_item.py b/src/brevo/types/order_products_item.py
index e09913f..07d8879 100644
--- a/src/brevo/types/order_products_item.py
+++ b/src/brevo/types/order_products_item.py
@@ -2,42 +2,7 @@
import typing
-import pydantic
-import typing_extensions
-from ..core.pydantic_utilities import IS_PYDANTIC_V2
-from ..core.serialization import FieldMetadata
-from ..core.unchecked_base_model import UncheckedBaseModel
+from .order_products_item_quantity import OrderProductsItemQuantity
+from .order_products_item_quantity_float import OrderProductsItemQuantityFloat
-
-class OrderProductsItem(UncheckedBaseModel):
- """
- Details for the Products in an order.
- """
-
- price: float = pydantic.Field()
- """
- The price of a unit of product
- """
-
- product_id: typing_extensions.Annotated[
- str, FieldMetadata(alias="productId"), pydantic.Field(alias="productId", description="ID of the product.")
- ]
- quantity: float = pydantic.Field()
- """
- How many pieces of the product the visitor has added to the cart.
- """
-
- variant_id: typing_extensions.Annotated[
- typing.Optional[str],
- FieldMetadata(alias="variantId"),
- pydantic.Field(alias="variantId", description="Product ID of the red color shirts."),
- ] = None
-
- if IS_PYDANTIC_V2:
- model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
- else:
-
- class Config:
- frozen = True
- smart_union = True
- extra = pydantic.Extra.allow
+OrderProductsItem = typing.Union[OrderProductsItemQuantity, OrderProductsItemQuantityFloat]
diff --git a/src/brevo/types/order_products_item_quantity.py b/src/brevo/types/order_products_item_quantity.py
new file mode 100644
index 0000000..1f5f316
--- /dev/null
+++ b/src/brevo/types/order_products_item_quantity.py
@@ -0,0 +1,23 @@
+# This file was auto-generated by Fern from our API Definition.
+
+import typing
+
+import pydantic
+from ..core.pydantic_utilities import IS_PYDANTIC_V2
+from ..core.unchecked_base_model import UncheckedBaseModel
+
+
+class OrderProductsItemQuantity(UncheckedBaseModel):
+ quantity: int = pydantic.Field()
+ """
+ **Required if quantityFloat is empty.** Number of product units added to the cart (whole numbers only)
+ """
+
+ if IS_PYDANTIC_V2:
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
+ else:
+
+ class Config:
+ frozen = True
+ smart_union = True
+ extra = pydantic.Extra.allow
diff --git a/src/brevo/types/order_products_item_quantity_float.py b/src/brevo/types/order_products_item_quantity_float.py
new file mode 100644
index 0000000..ca82f73
--- /dev/null
+++ b/src/brevo/types/order_products_item_quantity_float.py
@@ -0,0 +1,29 @@
+# This file was auto-generated by Fern from our API Definition.
+
+import typing
+
+import pydantic
+import typing_extensions
+from ..core.pydantic_utilities import IS_PYDANTIC_V2
+from ..core.serialization import FieldMetadata
+from ..core.unchecked_base_model import UncheckedBaseModel
+
+
+class OrderProductsItemQuantityFloat(UncheckedBaseModel):
+ quantity_float: typing_extensions.Annotated[
+ float,
+ FieldMetadata(alias="quantityFloat"),
+ pydantic.Field(
+ alias="quantityFloat",
+ description="**Required if quantity is empty.** Number of product units added to the cart(supports decimals)",
+ ),
+ ]
+
+ if IS_PYDANTIC_V2:
+ model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
+ else:
+
+ class Config:
+ frozen = True
+ smart_union = True
+ extra = pydantic.Extra.allow
diff --git a/src/brevo/webhooks/client.py b/src/brevo/webhooks/client.py
index 92a378f..51c4238 100644
--- a/src/brevo/webhooks/client.py
+++ b/src/brevo/webhooks/client.py
@@ -215,9 +215,9 @@ def export_webhooks_history(
request_options: typing.Optional[RequestOptions] = None,
) -> ExportWebhooksHistoryResponse:
"""
-
- To have it activated please send us a request and we will activate it for your account.
-
+ This is an enterprise feature.
+
+ To have it activated please send us a request and we will activate it for your account.
Exports webhook event history to CSV format for analysis and reporting.
@@ -401,6 +401,7 @@ def update_webhook(
#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
`unsubscribed`, `listAddition` & `delivered` - Possible values
for **Inbound** type webhook: #### `inboundEmailProcessed`
+ #### `reply`
headers : typing.Optional[typing.Sequence[UpdateWebhookRequestHeadersItem]]
Custom headers to be send with webhooks
@@ -684,9 +685,9 @@ async def export_webhooks_history(
request_options: typing.Optional[RequestOptions] = None,
) -> ExportWebhooksHistoryResponse:
"""
-
- To have it activated please send us a request and we will activate it for your account.
-
+ This is an enterprise feature.
+
+ To have it activated please send us a request and we will activate it for your account.
Exports webhook event history to CSV format for analysis and reporting.
@@ -888,6 +889,7 @@ async def update_webhook(
#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
`unsubscribed`, `listAddition` & `delivered` - Possible values
for **Inbound** type webhook: #### `inboundEmailProcessed`
+ #### `reply`
headers : typing.Optional[typing.Sequence[UpdateWebhookRequestHeadersItem]]
Custom headers to be send with webhooks
diff --git a/src/brevo/webhooks/raw_client.py b/src/brevo/webhooks/raw_client.py
index c824a12..204a5dd 100644
--- a/src/brevo/webhooks/raw_client.py
+++ b/src/brevo/webhooks/raw_client.py
@@ -258,9 +258,9 @@ def export_webhooks_history(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[ExportWebhooksHistoryResponse]:
"""
-
- To have it activated please send us a request and we will activate it for your account.
-
+ This is an enterprise feature.
+
+ To have it activated please send us a request and we will activate it for your account.
Exports webhook event history to CSV format for analysis and reporting.
@@ -493,6 +493,7 @@ def update_webhook(
#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
`unsubscribed`, `listAddition` & `delivered` - Possible values
for **Inbound** type webhook: #### `inboundEmailProcessed`
+ #### `reply`
headers : typing.Optional[typing.Sequence[UpdateWebhookRequestHeadersItem]]
Custom headers to be send with webhooks
@@ -847,9 +848,9 @@ async def export_webhooks_history(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[ExportWebhooksHistoryResponse]:
"""
-
- To have it activated please send us a request and we will activate it for your account.
-
+ This is an enterprise feature.
+
+ To have it activated please send us a request and we will activate it for your account.
Exports webhook event history to CSV format for analysis and reporting.
@@ -1082,6 +1083,7 @@ async def update_webhook(
#### `spam`, `opened`, `click`, `hardBounce`, `softBounce`,
`unsubscribed`, `listAddition` & `delivered` - Possible values
for **Inbound** type webhook: #### `inboundEmailProcessed`
+ #### `reply`
headers : typing.Optional[typing.Sequence[UpdateWebhookRequestHeadersItem]]
Custom headers to be send with webhooks
diff --git a/src/brevo/webhooks/types/create_webhook_request_events_item.py b/src/brevo/webhooks/types/create_webhook_request_events_item.py
index efae50f..39d7ee3 100644
--- a/src/brevo/webhooks/types/create_webhook_request_events_item.py
+++ b/src/brevo/webhooks/types/create_webhook_request_events_item.py
@@ -21,6 +21,7 @@
"contactUpdated",
"contactDeleted",
"inboundEmailProcessed",
+ "reply",
],
typing.Any,
]
diff --git a/src/brevo/webhooks/types/update_webhook_request_events_item.py b/src/brevo/webhooks/types/update_webhook_request_events_item.py
index 6e46c12..f6bd64a 100644
--- a/src/brevo/webhooks/types/update_webhook_request_events_item.py
+++ b/src/brevo/webhooks/types/update_webhook_request_events_item.py
@@ -21,6 +21,7 @@
"contactUpdated",
"contactDeleted",
"inboundEmailProcessed",
+ "reply",
],
typing.Any,
]
diff --git a/src/brevo/whats_app_campaigns/client.py b/src/brevo/whats_app_campaigns/client.py
index 0698637..31cd13d 100644
--- a/src/brevo/whats_app_campaigns/client.py
+++ b/src/brevo/whats_app_campaigns/client.py
@@ -104,19 +104,11 @@ def create_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateWhatsAppCampaignResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -168,11 +160,8 @@ def get_whats_app_config(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> GetWhatsAppConfigResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -209,11 +198,8 @@ def create_whats_app_template(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateWhatsAppTemplateResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -337,11 +323,8 @@ def send_whats_app_template_approval(
self, template_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> None:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -373,11 +356,11 @@ def get_whats_app_campaign(
self, campaign_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> GetWhatsAppCampaignResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
+ [Get all the Lists](https://developers.brevo.com/reference/getlists-1)
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -417,19 +400,11 @@ def update_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -595,19 +570,11 @@ async def create_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateWhatsAppCampaignResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -667,11 +634,8 @@ async def get_whats_app_config(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> GetWhatsAppConfigResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -716,11 +680,8 @@ async def create_whats_app_template(
request_options: typing.Optional[RequestOptions] = None,
) -> CreateWhatsAppTemplateResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -860,11 +821,8 @@ async def send_whats_app_template_approval(
self, template_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> None:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -906,11 +864,11 @@ async def get_whats_app_campaign(
self, campaign_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> GetWhatsAppCampaignResponse:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
+ [Get all the Lists](https://developers.brevo.com/reference/getlists-1)
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -958,19 +916,11 @@ async def update_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> None:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
diff --git a/src/brevo/whats_app_campaigns/raw_client.py b/src/brevo/whats_app_campaigns/raw_client.py
index d538814..b971a60 100644
--- a/src/brevo/whats_app_campaigns/raw_client.py
+++ b/src/brevo/whats_app_campaigns/raw_client.py
@@ -119,19 +119,11 @@ def create_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[CreateWhatsAppCampaignResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -202,11 +194,8 @@ def get_whats_app_config(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[GetWhatsAppConfigResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -262,11 +251,8 @@ def create_whats_app_template(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[CreateWhatsAppTemplateResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -427,11 +413,8 @@ def send_whats_app_template_approval(
self, template_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[None]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -473,11 +456,11 @@ def get_whats_app_campaign(
self, campaign_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> HttpResponse[GetWhatsAppCampaignResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
+ [Get all the Lists](https://developers.brevo.com/reference/getlists-1)
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -545,19 +528,11 @@ def update_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> HttpResponse[None]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -759,19 +734,11 @@ async def create_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[CreateWhatsAppCampaignResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -842,11 +809,8 @@ async def get_whats_app_config(
self, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[GetWhatsAppConfigResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -902,11 +866,8 @@ async def create_whats_app_template(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[CreateWhatsAppTemplateResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -1067,11 +1028,8 @@ async def send_whats_app_template_approval(
self, template_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[None]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
Parameters
----------
@@ -1113,11 +1071,11 @@ async def get_whats_app_campaign(
self, campaign_id: int, *, request_options: typing.Optional[RequestOptions] = None
) -> AsyncHttpResponse[GetWhatsAppCampaignResponse]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
+ [Get all the Lists](https://developers.brevo.com/reference/getlists-1)
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
@@ -1185,19 +1143,11 @@ async def update_whats_app_campaign(
request_options: typing.Optional[RequestOptions] = None,
) -> AsyncHttpResponse[None]:
"""
-
- You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
-
- [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
-
-
-
- This API requires the List and Segment ids as recipients in Body params. You can use the below Contact endpoints to get the required information.
-
+ You can use this API for WhatsApp only if you have setup your WhatsApp account on Brevo platform. To setup your WhatsApp account, follow the steps in the guide below.
+ [Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account
+ This API requires the List and Segment ids as recipients in Body params.You can use the below Contact endpoints to get the required information.
[Get all the Lists](https://developers.brevo.com/reference/getlists-1)
-
- [Get all the Segments](https://developers.brevo.com/reference/getsegments)
-
+ [Get all the Segments](https://developers.brevo.com/reference/getsegments)
Parameters
----------
diff --git a/tests/wire/test_balance.py b/tests/wire/test_balance.py
index 1063c18..779f2c9 100644
--- a/tests/wire/test_balance.py
+++ b/tests/wire/test_balance.py
@@ -149,12 +149,12 @@ def test_balance_get_transaction_history_api() -> None:
"""Test getTransactionHistoryApi endpoint with WireMock"""
test_id = "balance.get_transaction_history_api.0"
client = get_client(test_id)
- client.balance.get_transaction_history_api(pid="pid", contact_id=1, balance_definition_id="balance_definition_id")
+ client.balance.get_transaction_history_api(pid="pid", contact_id=1, balance_definition_id="balanceDefinitionId")
verify_request_count(
test_id,
"GET",
"/loyalty/balance/programs/pid/transaction-history",
- {"contact_id": "1", "balance_definition_id": "balance_definition_id"},
+ {"contactId": "1", "balanceDefinitionId": "balanceDefinitionId"},
1,
)
diff --git a/tests/wire/test_companies.py b/tests/wire/test_companies.py
index aa9c2bd..4a7b98f 100644
--- a/tests/wire/test_companies.py
+++ b/tests/wire/test_companies.py
@@ -67,6 +67,22 @@ def test_companies_create_a_company_deal_attribute() -> None:
verify_request_count(test_id, "POST", "/crm/attributes", None, 1)
+def test_companies_delete_an_attribute() -> None:
+ """Test deleteAnAttribute endpoint with WireMock"""
+ test_id = "companies.delete_an_attribute.0"
+ client = get_client(test_id)
+ client.companies.delete_an_attribute(id="id")
+ verify_request_count(test_id, "DELETE", "/crm/attributes/id", None, 1)
+
+
+def test_companies_update_an_attribute() -> None:
+ """Test updateAnAttribute endpoint with WireMock"""
+ test_id = "companies.update_an_attribute.0"
+ client = get_client(test_id)
+ client.companies.update_an_attribute(id="id")
+ verify_request_count(test_id, "PATCH", "/crm/attributes/id", None, 1)
+
+
def test_companies_get_company_attributes() -> None:
"""Test getCompanyAttributes endpoint with WireMock"""
test_id = "companies.get_company_attributes.0"
diff --git a/tests/wire/test_ecommerce.py b/tests/wire/test_ecommerce.py
index d1bebb9..a8201c7 100644
--- a/tests/wire/test_ecommerce.py
+++ b/tests/wire/test_ecommerce.py
@@ -112,7 +112,7 @@ def test_ecommerce_create_order() -> None:
amount=308.42,
created_at="2021-07-29T20:59:23.383Z",
id="14",
- products=[{"price": 99.99, "product_id": "P1", "quantity": 10}],
+ products=[{"quantity": 10}],
status="completed",
updated_at="2021-07-30T10:59:23.383Z",
)
@@ -129,7 +129,7 @@ def test_ecommerce_create_batch_order() -> None:
"amount": 308.42,
"created_at": "2021-07-29T20:59:23.383Z",
"id": "14",
- "products": [{"price": 99.99, "product_id": "P1", "quantity": 10}],
+ "products": [{"quantity": 10}],
"status": "completed",
"updated_at": "2021-07-30T10:59:23.383Z",
}
diff --git a/tests/wire/test_program.py b/tests/wire/test_program.py
index 58a7f76..5aa5b93 100644
--- a/tests/wire/test_program.py
+++ b/tests/wire/test_program.py
@@ -57,6 +57,14 @@ def test_program_get_parameter_subscription_info() -> None:
verify_request_count(test_id, "GET", "/loyalty/config/programs/pid/account-info", None, 1)
+def test_program_delete_contact_subscription() -> None:
+ """Test deleteContactSubscription endpoint with WireMock"""
+ test_id = "program.delete_contact_subscription.0"
+ client = get_client(test_id)
+ client.program.delete_contact_subscription(pid="pid", cid=1)
+ verify_request_count(test_id, "DELETE", "/loyalty/config/programs/pid/contact/1", None, 1)
+
+
def test_program_publish_loyalty_program() -> None:
"""Test publishLoyaltyProgram endpoint with WireMock"""
test_id = "program.publish_loyalty_program.0"
diff --git a/wiremock/wiremock-mappings.json b/wiremock/wiremock-mappings.json
index ae131ae..fd65032 100644
--- a/wiremock/wiremock-mappings.json
+++ b/wiremock/wiremock-mappings.json
@@ -1 +1 @@
-{"mappings":[{"id":"1211c905-93ae-4aa1-a220-5b0994166727","name":"Get account details - default","request":{"urlPathTemplate":"/account","method":"GET"},"response":{"status":200,"body":"{\n \"organization_id\": \"5fa2b8c123456789abcdef01\",\n \"user_id\": 1234567,\n \"enterprise\": false,\n \"companyName\": \"Acme Marketing Corp\",\n \"email\": \"michael.davis@example.com\",\n \"firstName\": \"Michael\",\n \"lastName\": \"Davis\",\n \"address\": {\n \"city\": \"New York\",\n \"country\": \"United States\",\n \"street\": \"456 Business Ave\",\n \"zipCode\": \"10001\"\n },\n \"dateTimePreferences\": {\n \"timezone\": \"America/New_York\",\n \"timeFormat\": \"12\",\n \"dateFormat\": \"mm-dd-yyyy\"\n },\n \"marketingAutomation\": {\n \"enabled\": true,\n \"key\": \"ma8k2x9v4h7p3d6f1c5e8b2a\"\n },\n \"plan\": [\n {\n \"credits\": 250,\n \"creditsType\": \"sendLimit\",\n \"endDate\": \"1753826567\",\n \"startDate\": \"1751234567\",\n \"type\": \"free\"\n },\n {\n \"credits\": 15,\n \"creditsType\": \"sendLimit\",\n \"endDate\": \"1753826567\",\n \"startDate\": \"1751234567\",\n \"type\": \"sms\"\n }\n ],\n \"planVerticals\": [\n {\n \"planCategory\": \"Marketing\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1751234567\",\n \"endDate\": \"1753826567\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n },\n {\n \"planCategory\": \"Chat\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1735678901\",\n \"endDate\": \"1767214901\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n },\n {\n \"planCategory\": \"CRM\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1735678900\",\n \"endDate\": \"1767214900\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n }\n ],\n \"relay\": {\n \"data\": {\n \"port\": 587,\n \"relay\": \"smtp-relay.brevo.com\",\n \"userName\": \"michael.davis@example.com\"\n },\n \"enabled\": true\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"1211c905-93ae-4aa1-a220-5b0994166727","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8875a0d0-f755-470c-bb61-f8ad06810a28","name":"getAccountActivity - default","request":{"urlPathTemplate":"/organization/activities","method":"GET"},"response":{"status":200,"body":"{\n \"logs\": [\n {\n \"action\": \"login-success\",\n \"date\": \"2023-03-16T16:49:23+05:30\",\n \"user_agent\": \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us)\",\n \"user_email\": \"test@mycompany.com\",\n \"user_ip\": \"192.158.1.34\"\n },\n {\n \"action\": \"update-profile\",\n \"date\": \"2023-03-15T16:49:23+05:30\",\n \"user_agent\": \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us)\",\n \"user_email\": \"test@myexample.com\",\n \"user_ip\": \"192.158.1.38\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"8875a0d0-f755-470c-bb61-f8ad06810a28","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"22e8ec1f-e4ba-4f4b-996b-17fb7412b82b","name":"Create a new group of sub-accounts - default","request":{"urlPathTemplate":"/corporate/group","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"659xxxxxxxxxxxxxxxx6ef9c8\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"22e8ec1f-e4ba-4f4b-996b-17fb7412b82b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"553c0be2-9f70-4b5f-867b-1d2543c96f46","name":"Delete sub-account from group - default","request":{"urlPathTemplate":"/corporate/group/unlink/{groupId}/subAccounts","method":"PUT","pathParameters":{"groupId":{"equalTo":"groupId"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"553c0be2-9f70-4b5f-867b-1d2543c96f46","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"569cac67-bd04-4628-af18-b29f58c3426a","name":"GET a group details - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"group\": {\n \"createdAt\": \"2024-02-09T06:14:40+00:00\",\n \"groupName\": \"My group\",\n \"id\": \"5f926dba72a405440a4efc97\"\n },\n \"sub-accounts\": [\n {\n \"companyName\": \"My sub organization\",\n \"createdAt\": \"2024-02-09T06:14:40+00:00\",\n \"id\": 7866556\n },\n {\n \"companyName\": \"Your sub organization\",\n \"createdAt\": \"2024-01-05T03:11:40+00:00\",\n \"id\": 6563051\n }\n ],\n \"users\": [\n {\n \"email\": \"my-user@my-org.com\",\n \"firstName\": \"John\",\n \"lastName\": \"Smith\"\n },\n {\n \"email\": \"your-user@your-org.com\",\n \"firstName\": \"firstName\",\n \"lastName\": \"lastName\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"569cac67-bd04-4628-af18-b29f58c3426a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"15046c07-f5ad-4826-99a4-368a6abcc9d5","name":"Update a group of sub-accounts - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"15046c07-f5ad-4826-99a4-368a6abcc9d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"204960c9-0571-4a3d-a030-f9779c6aea08","name":"Delete a group - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"204960c9-0571-4a3d-a030-f9779c6aea08","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d15212a9-7d53-42ef-996e-cbae118ba999","name":"Get the list of groups - default","request":{"urlPathTemplate":"/corporate/groups","method":"GET"},"response":{"status":200,"body":"[\n {\n \"groupName\": \"My group 1\",\n \"id\": \"d3b142c709d6ed67ef1cd903\"\n },\n {\n \"groupName\": \"My group 2\",\n \"id\": \"a5b192a709d6ed67ef8fd922\"\n },\n {\n \"groupName\": \"My group 3\",\n \"id\": \"bbb142c709d6ed67ef1cd910\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"d15212a9-7d53-42ef-996e-cbae118ba999","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"431c56cb-581f-459e-a434-b2378dfbb177","name":"Get the list of all admin users - default","request":{"urlPathTemplate":"/corporate/invited/users","method":"GET"},"response":{"status":200,"body":"{\n \"users\": [\n {\n \"email\": \"master-user2@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"download_data\",\n \"create_alerts\",\n \"my_looks\",\n \"explore_create\"\n ],\n \"api_keys\": [\n \"all\"\n ],\n \"apps_management\": [\n \"none\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"all\",\n \"all\"\n ],\n \"sub_organization_groups\": [\n \"create\",\n \"edit_delete\"\n ],\n \"user_management\": [\n \"none\"\n ]\n },\n \"groups\": {\n \"id\": \"a5c4f22c08d9ed37ef1ca342\",\n \"name\": \"My group\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n },\n {\n \"email\": \"master-user3@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"create_alerts\",\n \"my_looks\"\n ],\n \"api_keys\": [\n \"none\"\n ],\n \"apps_management\": [\n \"all\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"none\",\n \"none\"\n ],\n \"sub_organization_groups\": [\n \"edit_delete\"\n ],\n \"user_management\": [\n \"all\"\n ]\n },\n \"groups\": {\n \"id\": \"a5c4f22c08d9ed37ef1ca342\",\n \"name\": \"My group\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"431c56cb-581f-459e-a434-b2378dfbb177","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"47be7c71-5117-47ca-8146-e166b37fbd89","name":"List of all IPs - default","request":{"urlPathTemplate":"/corporate/ip","method":"GET"},"response":{"status":200,"body":"[\n {\n \"domain\": \"example.com\",\n \"ip\": \"192.168.1.1\",\n \"transactional\": true\n },\n {\n \"domain\": \"example.com\",\n \"ip\": \"192.168.1.2\",\n \"transactional\": false\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"47be7c71-5117-47ca-8146-e166b37fbd89","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c8f6e272-2e8b-4912-b109-ef644f37c748","name":"Get the details of requested master account - default","request":{"urlPathTemplate":"/corporate/masterAccount","method":"GET"},"response":{"status":200,"body":"{\n \"billingInfo\": {\n \"address\": {\n \"countryCode\": \"IN\",\n \"locality\": \"Pandav Nagar, New Delhi\",\n \"postalCode\": \"560048\",\n \"stateCode\": \"UP\",\n \"streetAddress\": \"C-92\"\n },\n \"companyName\": \"Corp Sample 1-1\",\n \"email\": \"sample@example.com\",\n \"name\": {\n \"familyName\": \"Pandit\",\n \"givenName\": \"Uday\"\n }\n },\n \"companyName\": \"Corp Sample 1-1\",\n \"currencyCode\": \"INR\",\n \"email\": \"sample@example.com\",\n \"id\": 1003286,\n \"planInfo\": {\n \"currencyCode\": \"INR\",\n \"features\": [\n {\n \"name\": \"MULTI_USER\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 15\n },\n {\n \"name\": \"ADVANCED_REPORTING\",\n \"quantity\": 12,\n \"remaining\": 11,\n \"unitValue\": \"unitValue\",\n \"used\": 1\n },\n {\n \"name\": \"INBOX\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 10\n },\n {\n \"name\": \"LANDING_PAGE\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 11\n },\n {\n \"name\": \"RECURRING_CREDITS\",\n \"quantity\": 500,\n \"remaining\": 499,\n \"unitValue\": \"unitValue\",\n \"used\": 1\n }\n ],\n \"nextBillingAt\": 1637739295,\n \"planPeriod\": \"month\",\n \"price\": 2100,\n \"subAccounts\": 15\n },\n \"timezone\": \"Europe/Paris\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c8f6e272-2e8b-4912-b109-ef644f37c748","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8fea4e4d-838b-4875-b315-9790bd457518","name":"Generate SSO token to access admin account - default","request":{"urlPathTemplate":"/corporate/ssoToken","method":"POST"},"response":{"status":200,"body":"{\n \"token\": \"5cadaxxxxxxxxxxxxxxxxxxxx5a179f85a0\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8fea4e4d-838b-4875-b315-9790bd457518","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"45b2935e-aecb-4ad4-8888-9a0e585bcd23","name":"Get the list of all the sub-accounts of the master account. - default","request":{"urlPathTemplate":"/corporate/subAccount","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 3,\n \"subAccounts\": [\n {\n \"active\": true,\n \"companyName\": \"Company1\",\n \"createdAt\": 1631523176,\n \"groups\": [\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a8\",\n \"name\": \"Group 1\"\n },\n {\n \"id\": \"4fbf3c3b1f56a02ac465b1a0\",\n \"name\": \"Group 2\"\n }\n ],\n \"id\": 4043629\n },\n {\n \"active\": true,\n \"companyName\": \"Company2\",\n \"createdAt\": 1629439311,\n \"groups\": [\n {}\n ],\n \"id\": 3984002\n },\n {\n \"active\": true,\n \"companyName\": \"Company3\",\n \"createdAt\": 1614713641,\n \"groups\": [\n {}\n ],\n \"id\": 3524191\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"45b2935e-aecb-4ad4-8888-9a0e585bcd23","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"27e8ff22-470d-462b-a9e2-6cd1c428b361","name":"Create a new sub-account under a master account. - default","request":{"urlPathTemplate":"/corporate/subAccount","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 4109344\n}","headers":{"Content-Type":"application/json"}},"uuid":"27e8ff22-470d-462b-a9e2-6cd1c428b361","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0b1c8ee5-ea29-4bb0-a233-53d0ff4d86fa","name":"Associate an IP to sub-accounts - default","request":{"urlPathTemplate":"/corporate/subAccount/ip/associate","method":"POST"},"response":{"status":201,"body":"{\n \"key\": \"value\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0b1c8ee5-ea29-4bb0-a233-53d0ff4d86fa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b9524079-a627-4ed4-8f2a-abb0390700aa","name":"Dissociate an IP to sub-accounts - default","request":{"urlPathTemplate":"/corporate/subAccount/ip/dissociate","method":"PUT"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b9524079-a627-4ed4-8f2a-abb0390700aa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"69800c09-607d-406d-8817-7c7c51ff5ae1","name":"Create an API key for a sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/key","method":"POST"},"response":{"status":201,"body":"{\n \"key\": \"xkeysib-21881axxxxxcc92e04-mIrexxxx7z\",\n \"status\": \"success\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"69800c09-607d-406d-8817-7c7c51ff5ae1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c6174a85-f3d7-4550-bc89-0e9814e58cfb","name":"Generate SSO token to access sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/ssoToken","method":"POST"},"response":{"status":200,"body":"{\n \"token\": \"5cadaxxxxxxxxxxxxxxxxxxxx5a179f85a0\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c6174a85-f3d7-4550-bc89-0e9814e58cfb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a2fc395f-9a4c-407e-bcf3-5eb067c54991","name":"Get sub-account details - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}","method":"GET","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"companyName\": \"API-Sub-26thOct21-4\",\n \"email\": \"uday+1@brevo.com\",\n \"groups\": [\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a7\",\n \"name\": \"Group 1\"\n },\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a8\",\n \"name\": \"Group 2\"\n }\n ],\n \"name\": \"Uday Pandit\",\n \"planInfo\": {\n \"credits\": {\n \"emails\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n },\n \"externalFeeds\": {\n \"quantity\": 1,\n \"remaining\": 1\n },\n \"sms\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n },\n \"whatsapp\": {\n \"quantity\": 100,\n \"remaining\": 50\n },\n \"wpSubscribers\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n }\n },\n \"features\": {\n \"inbox\": {\n \"quantity\": 20,\n \"remaining\": 12\n },\n \"landingPage\": {\n \"quantity\": 25,\n \"remaining\": 14\n },\n \"salesUsers\": {\n \"quantity\": 30,\n \"remaining\": 14\n },\n \"users\": {\n \"quantity\": 30,\n \"remaining\": 14\n }\n },\n \"planType\": \"paid\"\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"a2fc395f-9a4c-407e-bcf3-5eb067c54991","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"574c16a0-400c-46fe-aea7-88b6b1a0b812","name":"Delete a sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"574c16a0-400c-46fe-aea7-88b6b1a0b812","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"769c18cf-d0ef-4284-83e9-bc297f635f71","name":"Enable/disable sub-account application(s) - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}/applications/toggle","method":"PUT","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"769c18cf-d0ef-4284-83e9-bc297f635f71","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"85c53397-13d2-43ec-986d-7d85858e7c8e","name":"Update sub-account plan - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}/plan","method":"PUT","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"85c53397-13d2-43ec-986d-7d85858e7c8e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"41b0f555-e1b6-4e40-9e6a-17c8bd025f53","name":"Update sub-accounts plan - default","request":{"urlPathTemplate":"/corporate/subAccounts/plan","method":"PUT"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"41b0f555-e1b6-4e40-9e6a-17c8bd025f53","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2d522f1e-c89e-42da-b070-ffb9ff715ec2","name":"Send invitation to an admin user - default","request":{"urlPathTemplate":"/corporate/user/invitation/send","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"659xxxxxxxxxxxxxxxx6ef9c8\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"2d522f1e-c89e-42da-b070-ffb9ff715ec2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d9c935a4-0eec-4d97-9162-0ecfcc38abbb","name":"Resend / cancel admin user invitation - default","request":{"urlPathTemplate":"/corporate/user/invitation/{action}/{email}","method":"PUT","pathParameters":{"action":{"equalTo":"resend"},"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"message\": \"Invitation resent successfully\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d9c935a4-0eec-4d97-9162-0ecfcc38abbb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a6f000f1-1ae0-4b47-842f-edac9954cb1d","name":"Revoke an admin user - default","request":{"urlPathTemplate":"/corporate/user/revoke/{email}","method":"DELETE","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a6f000f1-1ae0-4b47-842f-edac9954cb1d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f295c79b-1b65-4112-8b0c-b6ce9d87d44f","name":"Check admin user permissions - default","request":{"urlPathTemplate":"/corporate/user/{email}/permissions","method":"GET","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"email\": \"invitedUser@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"download_data\",\n \"create_alerts\",\n \"my_looks\",\n \"explore_create\"\n ],\n \"api_keys\": [\n \"all\"\n ],\n \"apps_management\": [\n \"all\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"all\",\n \"all\"\n ],\n \"sub_organization_groups\": [\n \"create\",\n \"edit_delete\"\n ],\n \"user_management\": [\n \"none\"\n ]\n },\n \"groups\": [\n {\n \"id\": \"6543ab3667ffbb00142e4486\",\n \"name\": \"Support\"\n },\n {\n \"id\": \"174bab366732bbce142e4412\",\n \"name\": \"Technical\"\n }\n ],\n \"status\": \"active\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f295c79b-1b65-4112-8b0c-b6ce9d87d44f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c29d9b3d-5506-4699-8d63-cb5be4b098e1","name":"Change admin user permissions - default","request":{"urlPathTemplate":"/corporate/user/{email}/permissions","method":"PUT","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c29d9b3d-5506-4699-8d63-cb5be4b098e1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5b756ab9-0c76-4ea0-86e3-2629a91ee517","name":"Get the list of all your users - default","request":{"urlPathTemplate":"/organization/invited/users","method":"GET"},"response":{"status":200,"body":"{\n \"users\": [\n {\n \"email\": \"owner@company.com\",\n \"feature_access\": {\n \"conversations\": \"owner\",\n \"crm\": \"owner\",\n \"marketing\": \"owner\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n },\n {\n \"email\": \"pendingInvitedUser@company.com\",\n \"feature_access\": {\n \"conversations\": \"none\",\n \"crm\": \"full\",\n \"marketing\": \"custom\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"pending\"\n },\n {\n \"email\": \"connectedInvitedUser@company.com\",\n \"feature_access\": {\n \"conversations\": \"full\",\n \"crm\": \"none\",\n \"marketing\": \"none\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"5b756ab9-0c76-4ea0-86e3-2629a91ee517","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"027416a7-5144-402b-8e13-ff098d91ec53","name":"Revoke user permission - default","request":{"urlPathTemplate":"/organization/user/invitation/revoke/{email}","method":"PUT","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"027416a7-5144-402b-8e13-ff098d91ec53","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3380168e-886f-4ab1-9489-1f453e144d97","name":"Send invitation to user - default","request":{"urlPathTemplate":"/organization/user/invitation/send","method":"POST"},"response":{"status":200,"body":"{\n \"invoice_id\": \"invoice_id\",\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"3380168e-886f-4ab1-9489-1f453e144d97","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fda4aa42-d57d-4f82-8b2b-30f5d0abffa2","name":"Resend / Cancel invitation - default","request":{"urlPathTemplate":"/organization/user/invitation/{action}/{email}","method":"PUT","pathParameters":{"action":{"equalTo":"resend"},"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fda4aa42-d57d-4f82-8b2b-30f5d0abffa2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e3763191-26a9-488e-9abf-c8b9ca82c709","name":"Update permission for a user - default","request":{"urlPathTemplate":"/organization/user/update/permissions","method":"POST"},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"invoice_id\": \"invoice_id\",\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e3763191-26a9-488e-9abf-c8b9ca82c709","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8d0fdcb2-801b-46ec-98ff-ef29fa70f35d","name":"Check user permission - default","request":{"urlPathTemplate":"/organization/user/{email}/permissions","method":"GET","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"email\": \"invitedUser@company.com\",\n \"privileges\": [\n {\n \"feature\": \"Email campaign\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Send / schedule / suspend\"\n ]\n },\n {\n \"feature\": \"Templates\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Activate / deactivate\"\n ]\n },\n {\n \"feature\": \"SMS campaign\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Send / schedule / suspend\"\n ]\n },\n {\n \"feature\": \"Facebook Ads\",\n \"permissions\": [\n \"Schedule / pause\"\n ]\n },\n {\n \"feature\": \"Landing pages\",\n \"permissions\": [\n \"All\"\n ]\n },\n {\n \"feature\": \"Workflows\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Activate / deactivate / Pause\"\n ]\n },\n {\n \"feature\": \"Contacts\",\n \"permissions\": [\n \"View\",\n \"Contact forms\"\n ]\n },\n {\n \"feature\": \"SMTP & API\",\n \"permissions\": [\n \"SMTP\",\n \"API Keys\",\n \"Authorized IPs\"\n ]\n },\n {\n \"feature\": \"User management\",\n \"permissions\": [\n \"None\"\n ]\n },\n {\n \"feature\": \"Sales Platform\",\n \"permissions\": [\n \"Create / edit / delete owned deals and tasks\",\n \"Manage deals and tasks from other users\",\n \"Reports\",\n \"Settings\"\n ]\n },\n {\n \"feature\": \"Conversations\",\n \"permissions\": [\n \"None\"\n ]\n },\n {\n \"feature\": \"Senders, Domains & Dedicated IPs\",\n \"permissions\": [\n \"Senders management\",\n \"Domains management\",\n \"Dedicated IPs management\"\n ]\n },\n {\n \"feature\": \"Push\",\n \"permissions\": [\n \"View\",\n \"Create / edit / delete\",\n \"Send\",\n \"Settings\"\n ]\n },\n {\n \"feature\": \"Companies\",\n \"permissions\": [\n \"Create / edit / delete owned companies\",\n \"Manage companies from other users\",\n \"Settings\"\n ]\n }\n ],\n \"status\": \"active\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8d0fdcb2-801b-46ec-98ff-ef29fa70f35d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ec86c15f-d950-46af-8cc4-d9670d01ec3e","name":"Get background processes - default","request":{"urlPathTemplate":"/processes","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 198,\n \"processes\": [\n {\n \"id\": 217,\n \"name\": \"IMPORTUSER\",\n \"status\": \"completed\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n },\n {\n \"id\": 213,\n \"name\": \"SEARCH_EXPORT_USERS\",\n \"status\": \"completed\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n },\n {\n \"id\": 212,\n \"name\": \"IMPORTUSER\",\n \"status\": \"queued\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ec86c15f-d950-46af-8cc4-d9670d01ec3e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5cd8a4a8-5754-4b87-aa94-fc464c24ad7a","name":"Get process details - default","request":{"urlPathTemplate":"/processes/{processId}","method":"GET","pathParameters":{"processId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 217,\n \"name\": \"IMPORTUSER\",\n \"status\": \"queued\",\n \"info\": {\n \"import\": {\n \"invalid_emails\": 2,\n \"duplicate_contact_id\": 0,\n \"duplicate_ext_id\": 1,\n \"duplicate_email_id\": 5,\n \"duplicate_phone_id\": 1,\n \"duplicate_whatsapp_id\": 1,\n \"duplicate_landline_number_id\": 1\n },\n \"export\": {\n \"total_records\": 1250,\n \"file_size\": 102400\n }\n },\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded after 30 minutes\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:32:15Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"5cd8a4a8-5754-4b87-aa94-fc464c24ad7a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6ee5e306-247b-485b-9f81-14d36b3a0bda","name":"Get email senders - default","request":{"urlPathTemplate":"/senders","method":"GET"},"response":{"status":200,"body":"{\n \"senders\": [\n {\n \"active\": true,\n \"email\": \"support@example.com\",\n \"id\": 1,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Support Team\"\n },\n {\n \"active\": false,\n \"email\": \"hello@example.com\",\n \"id\": 3,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Customer Service\"\n },\n {\n \"active\": false,\n \"email\": \"marketing@testcompany.com\",\n \"id\": 5,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Marketing Team\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"6ee5e306-247b-485b-9f81-14d36b3a0bda","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"04b1327d-3b58-45aa-a665-8f8430486eca","name":"Create email sender - default","request":{"urlPathTemplate":"/senders","method":"POST"},"response":{"status":201,"body":"{\n \"dkimError\": false,\n \"id\": 15,\n \"spfError\": false\n}","headers":{"Content-Type":"application/json"}},"uuid":"04b1327d-3b58-45aa-a665-8f8430486eca","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"17fe3a57-60da-42b1-a435-e4cf134d171e","name":"getIps - default","request":{"urlPathTemplate":"/senders/ips","method":"GET"},"response":{"status":200,"body":"{\n \"ips\": [\n {\n \"active\": true,\n \"domain\": \"mailing.enterprise.com\",\n \"id\": 3,\n \"ip\": \"192.168.1.100\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"17fe3a57-60da-42b1-a435-e4cf134d171e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a0fc45b1-4252-4d1d-a02e-f542df6bf33e","name":"updateSender - default","request":{"urlPathTemplate":"/senders/{senderId}","method":"PUT","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a0fc45b1-4252-4d1d-a02e-f542df6bf33e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f691a271-1b98-49eb-b4a0-124162e8a7d5","name":"deleteSender - default","request":{"urlPathTemplate":"/senders/{senderId}","method":"DELETE","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f691a271-1b98-49eb-b4a0-124162e8a7d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a90c739a-2ce1-4058-a434-60d316495970","name":"getIpsFromSender - default","request":{"urlPathTemplate":"/senders/{senderId}/ips","method":"GET","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"ips\": [\n {\n \"domain\": \"mailing.enterprise.com\",\n \"id\": 3,\n \"ip\": \"192.168.1.100\",\n \"weight\": 75\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a90c739a-2ce1-4058-a434-60d316495970","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"868b537b-a700-40e2-bc48-c51dfd0ef8ed","name":"validateSenderByOTP - default","request":{"urlPathTemplate":"/senders/{senderId}/validate","method":"PUT","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"868b537b-a700-40e2-bc48-c51dfd0ef8ed","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6efe0f37-1aad-44ee-a626-e10a2df32e40","name":"getDomains - default","request":{"urlPathTemplate":"/senders/domains","method":"GET"},"response":{"status":200,"body":"{\n \"domains\": [\n {\n \"id\": \"67e57b40130375f045064c45\",\n \"domain_name\": \"mycompany.com\",\n \"authenticated\": true,\n \"verified\": true,\n \"ip\": \"192.168.1.100\",\n \"provider\": \"Cloudflare\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-03-27T16:22:24Z\"\n }\n },\n {\n \"id\": \"67f778570dd65f97c70910ed\",\n \"domain_name\": \"newsletter.mycompany.com\",\n \"authenticated\": false,\n \"verified\": true,\n \"provider\": \"GoDaddy\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-04-10T07:50:47Z\"\n }\n },\n {\n \"id\": \"688cd306d8893504e50ea615\",\n \"domain_name\": \"test.example.com\",\n \"authenticated\": false,\n \"verified\": false,\n \"provider\": \"Other\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-08-01T14:45:26Z\"\n }\n }\n ],\n \"count\": 3,\n \"current_page\": 1,\n \"total_pages\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"6efe0f37-1aad-44ee-a626-e10a2df32e40","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"d932d31f-c588-47e7-8703-1fc734a1dffd","name":"createDomain - default","request":{"urlPathTemplate":"/senders/domains","method":"POST"},"response":{"status":200,"body":"{\n \"id\": 5,\n \"domain_name\": \"mycompany.com\",\n \"domain_provider\": \"Cloudflare\",\n \"message\": \"Domain added successfully. To authenticate it, add following DNS records\",\n \"dns_records\": {\n \"brevo_code\": {\n \"host_name\": \"@\",\n \"type\": \"TXT\",\n \"value\": \"brevo-code=abc123def456\",\n \"status\": false\n },\n \"dkim_record\": {\n \"host_name\": \"mail._domainkey\",\n \"type\": \"TXT\",\n \"value\": \"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GN...\",\n \"status\": false\n },\n \"dmarc_record\": {\n \"host_name\": \"_dmarc\",\n \"type\": \"TXT\",\n \"value\": \"v=DMARC1; p=none; rua=mailto:dmarc@mycompany.com\",\n \"status\": false\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"d932d31f-c588-47e7-8703-1fc734a1dffd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"184d536e-335a-4ef0-8445-30b9081f5725","name":"getDomainConfiguration - default","request":{"urlPathTemplate":"/senders/domains/{domainName}","method":"GET","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"{\n \"domain\": \"mycompany.com\",\n \"verified\": true,\n \"authenticated\": true,\n \"dns_records\": {\n \"brevo_code\": {\n \"host_name\": \"@\",\n \"type\": \"TXT\",\n \"value\": \"brevo-code=abc123def456\",\n \"status\": true\n },\n \"dkim_record\": {\n \"host_name\": \"mail._domainkey\",\n \"type\": \"TXT\",\n \"value\": \"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GN...\",\n \"status\": true\n },\n \"dmarc_record\": {\n \"host_name\": \"_dmarc\",\n \"type\": \"TXT\",\n \"value\": \"v=DMARC1; p=quarantine; rua=mailto:dmarc@mycompany.com\",\n \"status\": true\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"184d536e-335a-4ef0-8445-30b9081f5725","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"85cfda0d-d298-48b3-8a8f-fcdc75ac72c2","name":"deleteDomain - default","request":{"urlPathTemplate":"/senders/domains/{domainName}","method":"DELETE","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"85cfda0d-d298-48b3-8a8f-fcdc75ac72c2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9028b6d6-1ed0-4272-bf1a-30fca4d35a1b","name":"authenticateDomain - default","request":{"urlPathTemplate":"/senders/domains/{domainName}/authenticate","method":"PUT","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"{\n \"domain_name\": \"mycompany.com\",\n \"message\": \"Domain has been authenticated successfully.\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"9028b6d6-1ed0-4272-bf1a-30fca4d35a1b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"71fd7de8-a010-43ca-bce7-8d0788df718a","name":"getWebhooks - default","request":{"urlPathTemplate":"/webhooks","method":"GET"},"response":{"status":200,"body":"{\n \"webhooks\": [\n {\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"email\",\n \"createdAt\": \"2016-07-18T12:30:09Z\",\n \"description\": \"Webhook triggered on campaign openings\",\n \"events\": [\n \"opened\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 9864,\n \"modifiedAt\": \"2016-07-18T16:00:50Z\",\n \"type\": \"transactional\",\n \"url\": \"https://example.domain.com/webhook/events/kzfxxxxxxxx0uyo1\"\n },\n {\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"sms\",\n \"createdAt\": \"2017-02-20T14:30:00Z\",\n \"description\": \"Webhook triggered on campaign hard bounces\",\n \"events\": [\n \"hardBounces\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 22770,\n \"modifiedAt\": \"2017-02-20T19:00:00Z\",\n \"type\": \"marketing\",\n \"url\": \"http://exmaple.domain.com/15kxxxxxn1\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"71fd7de8-a010-43ca-bce7-8d0788df718a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"657ec845-de7a-4389-887a-888df91d2433","name":"createWebhook - default","request":{"urlPathTemplate":"/webhooks","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"657ec845-de7a-4389-887a-888df91d2433","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"747584ac-68ed-4ed6-a905-9c093c09d9f6","name":"Export weekly events - default","request":{"urlPathTemplate":"/webhooks/export","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"747584ac-68ed-4ed6-a905-9c093c09d9f6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"adc43c28-964b-4170-aee2-5bb24add0d04","name":"getWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"GET","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"sms\",\n \"createdAt\": \"2016-06-07T09:10:10Z\",\n \"description\": \"Webhook triggered on campaign openings and addition of lists\",\n \"events\": [\n \"listAdditions\",\n \"opened\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 7287,\n \"modifiedAt\": \"2016-06-08T11:30:00Z\",\n \"type\": \"marketing\",\n \"url\": \"http://example.domain.com/1brxxxxxx5p1\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"adc43c28-964b-4170-aee2-5bb24add0d04","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ffcb1664-4c31-4340-a525-2b616cf4334c","name":"updateWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"PUT","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ffcb1664-4c31-4340-a525-2b616cf4334c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"be23bfc5-4a58-4cb4-8191-aee4cb8f244f","name":"deleteWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"DELETE","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"be23bfc5-4a58-4cb4-8191-aee4cb8f244f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2a8a03cd-cea2-4501-94e0-c2dccdd68f00","name":"Get all external feeds - default","request":{"urlPathTemplate":"/feeds","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 18,\n \"feeds\": [\n {\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\",\n \"name\": \"Product Catalog Feed\",\n \"alias\": \"product_catalog_feed\",\n \"url\": \"https://api.example.com/products\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": false,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-18T13:29:27Z\",\n \"modifiedAt\": \"2025-09-18T13:29:27Z\"\n },\n {\n \"id\": \"c2d3e4f5-a6b7-48c9-90d1-e2f3a4b5c6d7\",\n \"name\": \"Blog News Feed\",\n \"alias\": \"blog_news_feed\",\n \"url\": \"https://blog.example.com/api/posts\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": true,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-17T16:03:25Z\",\n \"modifiedAt\": \"2025-09-17T16:03:25Z\"\n },\n {\n \"id\": \"d3e4f5a6-b7c8-49d0-91e2-f3a4b5c6d7e8\",\n \"name\": \"Public Data Feed\",\n \"alias\": \"public_data_feed\",\n \"url\": \"https://jsonplaceholder.typicode.com/posts\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": true,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-05T09:06:42Z\",\n \"modifiedAt\": \"2025-09-05T09:06:42Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"2a8a03cd-cea2-4501-94e0-c2dccdd68f00","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"6feaee25-9e8b-4798-b9ee-ae7b3aad1442","name":"Create external feed - default","request":{"urlPathTemplate":"/feeds","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"6feaee25-9e8b-4798-b9ee-ae7b3aad1442","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2239ff35-3a80-42f1-b822-81e1d785db03","name":"Get external feed details - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"{\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\",\n \"name\": \"Product Catalog Feed\",\n \"url\": \"https://api.example.com/products\",\n \"authType\": \"noAuth\",\n \"personalization\": false,\n \"defaultAttr\": \"\",\n \"defaultContact\": \"\",\n \"maxRetries\": 0,\n \"cache\": false,\n \"createdAt\": \"2025-09-18T13:29:27Z\",\n \"modifiedAt\": \"2025-09-18T13:29:27Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"2239ff35-3a80-42f1-b822-81e1d785db03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c1cb8e28-7845-4479-a233-737a81218df9","name":"Update external feed - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"PUT","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c1cb8e28-7845-4479-a233-737a81218df9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"63a2125b-2244-41b0-8f75-6e2eb3cfb682","name":"Delete external feed - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"DELETE","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"63a2125b-2244-41b0-8f75-6e2eb3cfb682","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"03da01c2-0cff-47d2-996c-4317cabb22c4","name":"Create/Update object records in bulk - default","request":{"urlPathTemplate":"/objects/{object_type}/batch/upsert","method":"POST","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":202,"body":"{\n \"message\": \"Batch object records are being processed\",\n \"processId\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"03da01c2-0cff-47d2-996c-4317cabb22c4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"90e40ddc-ba7b-4979-8f3d-67bcfe9be80d","name":"Get the list of object records and total records count for an object. - default","request":{"urlPathTemplate":"/objects/{object_type}/records","method":"GET","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":200,"body":"{\n \"count\": 350,\n \"records\": [\n {\n \"associations\": [\n {\n \"object_type\": \"garage\",\n \"records\": [\n {\n \"identifiers\": {\n \"id\": 12345\n }\n }\n ]\n }\n ],\n \"attributes\": {\n \"color\": \"Black\",\n \"engine_type\": \"Hybrid\",\n \"make\": \"Toyoto\",\n \"model\": \"Corolla\",\n \"year\": 2020\n },\n \"createdAt\": \"2025-07-22T10:20:30Z\",\n \"identifiers\": {\n \"ext_id\": \"507f1f77bc\",\n \"id\": 16789\n },\n \"updatedAt\": \"2025-07-22T10:20:30Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"90e40ddc-ba7b-4979-8f3d-67bcfe9be80d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dc28fc32-e60d-4ec0-a256-912ae9ca2cbd","name":"Delete multiple object records (up to 1000) asynchronously - default","request":{"urlPathTemplate":"/objects/{object_type}/batch/delete","method":"POST","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":202,"body":"{\n \"processId\": 21,\n \"message\": \"Batch object records are being processed for deletion.\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"dc28fc32-e60d-4ec0-a256-912ae9ca2cbd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8729f948-4808-4d8f-b027-70b35a734218","name":"Get all the contacts - default","request":{"urlPathTemplate":"/contacts","method":"GET"},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"email\": \"contact1@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 247,\n \"listIds\": [\n 43,\n 58\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-01T17:05:03Z\",\n \"smsBlacklisted\": true\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"email\": \"33058407248@mailin-sms.com\",\n \"emailBlacklisted\": true,\n \"id\": 245,\n \"listIds\": [\n 43,\n 61,\n 58\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-01T17:05:03Z\",\n \"smsBlacklisted\": false\n }\n ],\n \"count\": 3\n}","headers":{"Content-Type":"application/json"}},"uuid":"8729f948-4808-4d8f-b027-70b35a734218","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"fe3c55db-75e2-4d78-85c0-eaed9f642c83","name":"Create a contact - default","request":{"urlPathTemplate":"/contacts","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"fe3c55db-75e2-4d78-85c0-eaed9f642c83","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dd0aa44d-f601-4c28-8481-1c0b25bb46aa","name":"List all attributes - default","request":{"urlPathTemplate":"/contacts/attributes","method":"GET"},"response":{"status":200,"body":"{\n \"attributes\": [\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"LASTNAME\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"FIRSTNAME\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"DOB\",\n \"type\": \"date\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"category\",\n \"enumeration\": [\n {\n \"label\": \"Men\",\n \"value\": 1\n },\n {\n \"label\": \"Women\",\n \"value\": 2\n },\n {\n \"label\": \"Kid\",\n \"value\": 3\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"GENDER\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"BDO\",\n \"type\": \"user\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\",\n \"India\",\n \"France\"\n ],\n \"name\": \"COUNTRY\",\n \"type\": \"multiple-choice\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"dd0aa44d-f601-4c28-8481-1c0b25bb46aa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"1253fdcb-3d6c-4957-88ab-df297d7154ab","name":"Create contact attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"POST","pathParameters":{"attributeCategory":{"equalTo":"normal"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"1253fdcb-3d6c-4957-88ab-df297d7154ab","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f02e59a5-f5b5-400d-8697-22eace5165c5","name":"Update contact attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"PUT","pathParameters":{"attributeCategory":{"equalTo":"category"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f02e59a5-f5b5-400d-8697-22eace5165c5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eed9112c-42ea-4dba-a3c1-5bc5eea04b6a","name":"Delete an attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"DELETE","pathParameters":{"attributeCategory":{"equalTo":"normal"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eed9112c-42ea-4dba-a3c1-5bc5eea04b6a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"827de4b0-dfdc-45c9-a27a-819a6acaece3","name":"Delete a multiple-choice attribute option - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeType}/{multipleChoiceAttribute}/{multipleChoiceAttributeOption}","method":"DELETE","pathParameters":{"attributeType":{"equalTo":"multiple-choice"},"multipleChoiceAttribute":{"equalTo":"multipleChoiceAttribute"},"multipleChoiceAttributeOption":{"equalTo":"multipleChoiceAttributeOption"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"827de4b0-dfdc-45c9-a27a-819a6acaece3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6ba8cd16-ea25-49a7-8288-e0cf22a8b065","name":"Update multiple contacts - default","request":{"urlPathTemplate":"/contacts/batch","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"6ba8cd16-ea25-49a7-8288-e0cf22a8b065","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2b7fdfe7-8f83-41bd-81d2-b42f70ff4603","name":"Create Contact via DOI (Double-Opt-In) Flow - default","request":{"urlPathTemplate":"/contacts/doubleOptinConfirmation","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"2b7fdfe7-8f83-41bd-81d2-b42f70ff4603","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1a2d075b-a8de-4135-b0c9-58bcfe31c7e4","name":"Export contacts - default","request":{"urlPathTemplate":"/contacts/export","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"1a2d075b-a8de-4135-b0c9-58bcfe31c7e4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c175e62d-23d7-4d5a-bc46-7093ac21de08","name":"Get all folders - default","request":{"urlPathTemplate":"/contacts/folders","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"folders\": [\n {\n \"id\": 42,\n \"name\": \"Ninja_Form\",\n \"totalBlacklisted\": 98,\n \"totalSubscribers\": 4567,\n \"uniqueSubscribers\": 4665\n },\n {\n \"id\": 29,\n \"name\": \"Prestashop\",\n \"totalBlacklisted\": 10,\n \"totalSubscribers\": 6543,\n \"uniqueSubscribers\": 6553\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"c175e62d-23d7-4d5a-bc46-7093ac21de08","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"40d55e83-c362-440b-9ad3-3cbb47ed0eb0","name":"Create a folder - default","request":{"urlPathTemplate":"/contacts/folders","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"40d55e83-c362-440b-9ad3-3cbb47ed0eb0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"64a96da1-15c5-426f-a455-f6ec46ff0434","name":"Returns a folder's details - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"GET","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 1,\n \"name\": \"Client_Folder\",\n \"totalBlacklisted\": 987,\n \"totalSubscribers\": 16778,\n \"uniqueSubscribers\": 17765\n}","headers":{"Content-Type":"application/json"}},"uuid":"64a96da1-15c5-426f-a455-f6ec46ff0434","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"701dc90d-1130-42e1-93d3-8ef73e8f8596","name":"Update a folder - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"PUT","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"701dc90d-1130-42e1-93d3-8ef73e8f8596","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a33a22a6-f7ae-41f1-9646-c37d999a9421","name":"Delete a folder (and all its lists) - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"DELETE","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a33a22a6-f7ae-41f1-9646-c37d999a9421","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1bbaf637-2edd-4ded-8338-3f42e8e93b45","name":"Get lists in a folder - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}/lists","method":"GET","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"count\": 3,\n \"lists\": [\n {\n \"id\": 46,\n \"name\": \"Reactiv\",\n \"totalBlacklisted\": 0,\n \"totalSubscribers\": 7655,\n \"uniqueSubscribers\": 7655\n },\n {\n \"id\": 41,\n \"name\": \"NY_Area\",\n \"totalBlacklisted\": 23,\n \"totalSubscribers\": 3654,\n \"uniqueSubscribers\": 3677\n },\n {\n \"id\": 22,\n \"name\": \"VIP_Customer\",\n \"totalBlacklisted\": 72,\n \"totalSubscribers\": 8753,\n \"uniqueSubscribers\": 8826\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"1bbaf637-2edd-4ded-8338-3f42e8e93b45","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c104d034-1156-452e-a1f5-90baae3a120e","name":"Import contacts - default","request":{"urlPathTemplate":"/contacts/import","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"c104d034-1156-452e-a1f5-90baae3a120e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ede870d3-ebf8-4b09-851f-f8abb13c3b81","name":"Get all the lists - default","request":{"urlPathTemplate":"/contacts/lists","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"lists\": [\n {\n \"id\": 53,\n \"name\": \"Spanish_Speakers\",\n \"totalBlacklisted\": 65,\n \"totalSubscribers\": 5432,\n \"uniqueSubscribers\": 5497,\n \"folderId\": 1\n },\n {\n \"id\": 50,\n \"name\": \"Other\",\n \"totalBlacklisted\": 765,\n \"totalSubscribers\": 10976,\n \"uniqueSubscribers\": 11741,\n \"folderId\": 2\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ede870d3-ebf8-4b09-851f-f8abb13c3b81","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ecaaf193-0526-47f7-a447-6866f25d6a35","name":"Create a list - default","request":{"urlPathTemplate":"/contacts/lists","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"ecaaf193-0526-47f7-a447-6866f25d6a35","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d2bcf613-ab25-4a1d-acfc-f9189c9abdce","name":"Get a list's details - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"GET","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 12,\n \"name\": \"Newsletter_Weekly\",\n \"totalBlacklisted\": 63,\n \"totalSubscribers\": 6533,\n \"uniqueSubscribers\": 6596,\n \"campaignStats\": [\n {\n \"campaignId\": 15,\n \"stats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 789,\n \"complaints\": 0,\n \"deferred\": 0,\n \"delivered\": 6632,\n \"estimatedViews\": 560,\n \"hardBounces\": 4,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 6645,\n \"softBounces\": 34,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 701,\n \"uniqueViews\": 3442,\n \"unsubscriptions\": 4,\n \"viewed\": 4322\n }\n },\n {\n \"campaignId\": 45,\n \"stats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 788,\n \"complaints\": 1,\n \"deferred\": 0,\n \"delivered\": 4078,\n \"estimatedViews\": 560,\n \"hardBounces\": 2,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 4334,\n \"softBounces\": 18,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 654,\n \"uniqueViews\": 987,\n \"unsubscriptions\": 4,\n \"viewed\": 1555\n }\n }\n ],\n \"createdAt\": \"2016-02-26T11:56:08Z\",\n \"dynamicList\": false,\n \"folderId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"d2bcf613-ab25-4a1d-acfc-f9189c9abdce","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fd940864-d48a-47f4-8db8-5960a7657dcc","name":"Update a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"PUT","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fd940864-d48a-47f4-8db8-5960a7657dcc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f9aace2d-f1ee-48cf-9a00-2ce8a8e876de","name":"Delete a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"DELETE","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f9aace2d-f1ee-48cf-9a00-2ce8a8e876de","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1e736496-14de-4379-b319-5857e47950dc","name":"Get contacts in a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts","method":"GET","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"alex.pain@example.com\",\n \"emailBlacklisted\": false,\n \"id\": 45,\n \"listIds\": [\n 12,\n 9,\n 20\n ],\n \"listUnsubscribed\": [\n 1,\n 2\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": true\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 32,\n \"listIds\": [\n 12\n ],\n \"listUnsubscribed\": [\n 1\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": false\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"helen.rose@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 65,\n \"listIds\": [\n 12,\n 9,\n 20\n ],\n \"listUnsubscribed\": [\n 1\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": false\n }\n ],\n \"count\": 17655\n}","headers":{"Content-Type":"application/json"}},"uuid":"1e736496-14de-4379-b319-5857e47950dc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f1dbcb2f-9c0d-4ccd-a750-28e2c2f9e6f9","name":"Add existing contacts to a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts/add","method":"POST","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":201,"body":"{\n \"contacts\": {\n \"failure\": [\n \"jeff32@example.com, jim56@example.com\"\n ],\n \"processId\": 78,\n \"success\": [\n \"success\"\n ],\n \"total\": 27\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"f1dbcb2f-9c0d-4ccd-a750-28e2c2f9e6f9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"36e0a4db-6281-4b17-bcbe-d10a330348a5","name":"Delete a contact from a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts/remove","method":"POST","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":201,"body":"{\n \"contacts\": {\n \"failure\": [\n \"jeff32@example.com, jim56@example.com\"\n ],\n \"processId\": 78,\n \"success\": [\n \"success\"\n ],\n \"total\": 27\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"36e0a4db-6281-4b17-bcbe-d10a330348a5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dd30aa5c-59ad-4ff0-a95f-bf685d7b279e","name":"Get all the segments - default","request":{"urlPathTemplate":"/contacts/segments","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"segments\": [\n {\n \"categoryName\": \"Name1\",\n \"id\": 53,\n \"segmentName\": \"Segment1\",\n \"updatedAt\": \"2017-03-12T12:30:00Z\"\n },\n {\n \"categoryName\": \"Name2\",\n \"id\": 50,\n \"segmentName\": \"Segment2\",\n \"updatedAt\": \"2017-03-12T12:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"dd30aa5c-59ad-4ff0-a95f-bf685d7b279e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5a0e7075-a413-4c22-a2bf-aa2f8e383d6d","name":"Get a contact's details - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"GET","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"{\n \"attributes\": {},\n \"createdAt\": \"2017-05-02T16:40:31Z\",\n \"email\": \"peggy.rain@example.com\",\n \"emailBlacklisted\": false,\n \"id\": 42,\n \"listIds\": [\n 40\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-02T16:40:31Z\",\n \"smsBlacklisted\": false,\n \"statistics\": {\n \"clicked\": [\n {\n \"campaignId\": 21,\n \"links\": [\n {\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:25:01Z\",\n \"ip\": \"66.249.93.118\",\n \"url\": \"https://url.domain.com/fbe5387ec717e333628380454f68670010b205ff/1/go?uid={EMAIL}&utm_source=brevo&utm_campaign=test_camp&utm_medium=email\"\n }\n ]\n }\n ],\n \"complaints\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"delivered\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T21:24:56Z\"\n }\n ],\n \"hardBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"messagesSent\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T20:15:13Z\"\n },\n {\n \"campaignId\": 42,\n \"eventTime\": \"2016-10-17T10:30:01Z\"\n }\n ],\n \"opened\": [\n {\n \"campaignId\": 21,\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:24:56Z\",\n \"ip\": \"66.249.93.118\"\n },\n {\n \"campaignId\": 68,\n \"count\": 1,\n \"eventTime\": \"2017-01-30T13:56:40Z\",\n \"ip\": \"66.249.93.217\"\n }\n ],\n \"softBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"transacAttributes\": [\n {}\n ],\n \"unsubscriptions\": {\n \"adminUnsubscription\": [\n {\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ],\n \"userUnsubscription\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ]\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"5a0e7075-a413-4c22-a2bf-aa2f8e383d6d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"75a6a0e6-ae00-42cb-82ae-0bbe1f8bd2d1","name":"Update a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"PUT","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"75a6a0e6-ae00-42cb-82ae-0bbe1f8bd2d1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fb8d40ed-00fd-4acc-88a7-32580773691f","name":"Delete a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fb8d40ed-00fd-4acc-88a7-32580773691f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9797e88c-e80c-4130-9605-8986d5de0403","name":"Get email campaigns' statistics for a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}/campaignStats","method":"GET","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"{\n \"clicked\": [\n {\n \"campaignId\": 21,\n \"links\": [\n {\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:25:01Z\",\n \"ip\": \"66.249.93.118\",\n \"url\": \"https://url.domain.com/fbe5387ec717e333628380454f68670010b205ff/1/go?uid={EMAIL}&utm_source=brevo&utm_campaign=test_camp&utm_medium=email\"\n }\n ]\n }\n ],\n \"complaints\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"delivered\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T21:24:56Z\"\n }\n ],\n \"hardBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"messagesSent\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T20:15:13Z\"\n },\n {\n \"campaignId\": 42,\n \"eventTime\": \"2016-10-17T10:30:01Z\"\n },\n {\n \"campaignId\": 45,\n \"eventTime\": \"2016-11-09T11:45:02Z\"\n }\n ],\n \"opened\": [\n {\n \"campaignId\": 21,\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:24:56Z\",\n \"ip\": \"66.249.93.118\"\n },\n {\n \"campaignId\": 45,\n \"count\": 1,\n \"eventTime\": \"2017-01-30T13:56:40Z\",\n \"ip\": \"66.249.93.217\"\n }\n ],\n \"softBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"transacAttributes\": [\n {\n \"orderDate\": \"2017-03-12\",\n \"orderId\": 248,\n \"orderPrice\": 24.99\n }\n ],\n \"unsubscriptions\": {\n \"adminUnsubscription\": [\n {\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ],\n \"userUnsubscription\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ]\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"9797e88c-e80c-4130-9605-8986d5de0403","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"989a2ce4-8788-48cc-963d-3d86cc2b2dd2","name":"Sets agentβs status to online for 2-3 minutes - default","request":{"urlPathTemplate":"/conversations/agentOnlinePing","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"989a2ce4-8788-48cc-963d-3d86cc2b2dd2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0b2458f6-3c0f-4f03-9f63-8051466d793b","name":"Send a message as an agent - default","request":{"urlPathTemplate":"/conversations/messages","method":"POST"},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0b2458f6-3c0f-4f03-9f63-8051466d793b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"73c7e27f-534f-4bff-ae89-6508af694971","name":"Get a message - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"73c7e27f-534f-4bff-ae89-6508af694971","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"92155bd1-c19b-4aad-99c9-8a69133fc185","name":"Update a message sent by an agent - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"92155bd1-c19b-4aad-99c9-8a69133fc185","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"55448424-484f-42a8-b091-f8c24234f898","name":"Delete a message sent by an agent - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"55448424-484f-42a8-b091-f8c24234f898","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7da39f40-5660-4486-b572-835f3f204973","name":"Send an automated message to a visitor - default","request":{"urlPathTemplate":"/conversations/pushedMessages","method":"POST"},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"7da39f40-5660-4486-b572-835f3f204973","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"12a96082-f3dc-4674-b4a6-a2fc4b6aea92","name":"Get an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"12a96082-f3dc-4674-b4a6-a2fc4b6aea92","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"88f6c974-0fa5-4c85-bd4a-2c306144fb5a","name":"Update an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 4668 7775 9233 54\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 4668 7775 9233 54\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"88f6c974-0fa5-4c85-bd4a-2c306144fb5a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a43cca1b-0cb5-4197-ad31-8ce0e455a7fe","name":"Delete an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a43cca1b-0cb5-4197-ad31-8ce0e455a7fe","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"27ddcd9f-5f2e-408f-a518-a4e395c047ee","name":"Set visitor group assignment - default","request":{"urlPathTemplate":"/conversations/visitorGroup","method":"PUT"},"response":{"status":200,"body":"{\n \"groupId\": \"PjRBMhWGen6aRHjif\",\n \"visitorId\": \"AXCR3k9bpSY7bpuh7\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"27ddcd9f-5f2e-408f-a518-a4e395c047ee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6e38c169-881b-465d-ae5b-201dfe4364a5","name":"Return all your categories - default","request":{"urlPathTemplate":"/categories","method":"GET"},"response":{"status":200,"body":"{\n \"categories\": [\n {\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"id\": \"C19\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2022-03-03T14:48:31.867Z\",\n \"name\": \"Food\",\n \"url\": \"http://mydomain.com/category/food\"\n },\n {\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"id\": \"C20\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2022-03-03T14:48:31.867Z\",\n \"name\": \"clothing\",\n \"url\": \"http://mydomain.com/category/clothing\"\n }\n ],\n \"count\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"6e38c169-881b-465d-ae5b-201dfe4364a5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c1c0c1db-676d-40e5-954f-ce7abd8fa780","name":"Create/Update a category - default","request":{"urlPathTemplate":"/categories","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"c1c0c1db-676d-40e5-954f-ce7abd8fa780","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3355346d-e446-4635-9316-d9de9c0c8459","name":"Create categories in batch - default","request":{"urlPathTemplate":"/categories/batch","method":"POST"},"response":{"status":201,"body":"{\n \"createdCount\": 2,\n \"updatedCount\": 7\n}","headers":{"Content-Type":"application/json"}},"uuid":"3355346d-e446-4635-9316-d9de9c0c8459","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e9a3bc64-c4fb-42bc-a44c-51ff0565f57d","name":"Get a category details - default","request":{"urlPathTemplate":"/categories/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"id\": \"C11\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"name\": \"Electronics\",\n \"url\": \"http://mydomain.com/category/clothing\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e9a3bc64-c4fb-42bc-a44c-51ff0565f57d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4aa9f4f1-3b05-446e-a5c8-175ce020f7dd","name":"Activate the eCommerce app - default","request":{"urlPathTemplate":"/ecommerce/activate","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"4aa9f4f1-3b05-446e-a5c8-175ce020f7dd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ef76fef3-dd84-4cf8-9fa5-ff136eea6618","name":"Get attribution metrics for one or more Brevo campaigns or workflows - default","request":{"urlPathTemplate":"/ecommerce/attribution/metrics","method":"GET"},"response":{"status":200,"body":"{\n \"results\": [\n {\n \"averageBasket\": 3,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 300,\n \"revenue\": 900\n },\n {\n \"averageBasket\": 4,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 200,\n \"revenue\": 800\n }\n ],\n \"totals\": {\n \"averageBasket\": 3.4,\n \"ordersCount\": 500,\n \"revenue\": 1700\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"ef76fef3-dd84-4cf8-9fa5-ff136eea6618","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a673ac7e-f9a7-4c21-bd80-b49ff3c73efc","name":"Get detailed attribution metrics for a single Brevo campaign or workflow - default","request":{"urlPathTemplate":"/ecommerce/attribution/metrics/{conversionSource}/{conversionSourceId}","method":"GET","pathParameters":{"conversionSource":{"equalTo":"email_campaign"},"conversionSourceId":{"equalTo":"sale"}}},"response":{"status":200,"body":"{\n \"averageBasket\": 1.1,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 1.1,\n \"revenue\": 1.1,\n \"newCustomersCount\": 1.1\n}","headers":{"Content-Type":"application/json"}},"uuid":"a673ac7e-f9a7-4c21-bd80-b49ff3c73efc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d80e42ab-4376-47f6-9971-baead08cd9ec","name":"Get attributed product sales for a single Brevo campaign or workflow - default","request":{"urlPathTemplate":"/ecommerce/attribution/products/{conversionSource}/{conversionSourceId}","method":"GET","pathParameters":{"conversionSource":{"equalTo":"email_campaign"},"conversionSourceId":{"equalTo":"sale"}}},"response":{"status":200,"body":"{\n \"products\": [\n {\n \"id\": \"1\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"name\": \"Milky Way Galaxy\",\n \"ordersCount\": 200,\n \"price\": 1000,\n \"revenue\": 999.99,\n \"sku\": \"sku-1\",\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d80e42ab-4376-47f6-9971-baead08cd9ec","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ab816e77-ae78-42da-b0ac-c9e2a426dd38","name":"Get the ISO 4217 compliant display currency code for your Brevo account - default","request":{"urlPathTemplate":"/ecommerce/config/displayCurrency","method":"GET"},"response":{"status":200,"body":"{\n \"code\": \"EUR\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"ab816e77-ae78-42da-b0ac-c9e2a426dd38","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c8c71b7b-bc9d-4d4f-83d0-1d4a57463596","name":"Set the ISO 4217 compliant display currency code for your Brevo account - default","request":{"urlPathTemplate":"/ecommerce/config/displayCurrency","method":"POST"},"response":{"status":200,"body":"{\n \"code\": \"EUR\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c8c71b7b-bc9d-4d4f-83d0-1d4a57463596","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a36a1140-3b78-405a-bb99-4be25b0e6f61","name":"Get order details - default","request":{"urlPathTemplate":"/orders","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 1,\n \"orders\": [\n {\n \"amount\": 2000,\n \"billing\": {\n \"address\": \"Sec 62, Noida\",\n \"city\": \"Noida\",\n \"country\": \"India\",\n \"countryCode\": \"IN\",\n \"paymentMethod\": \"Net banking\",\n \"phone\": 9238283982,\n \"postCode\": 110001,\n \"region\": \"North India\"\n },\n \"contact_id\": 2,\n \"coupons\": [\n \"flat50\",\n \"flat40\"\n ],\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"email\": \"testvisitor@sendinblue.com\",\n \"id\": \"order1803\",\n \"identifiers\": {\n \"ext_id\": \"ab12\",\n \"loyalty_subscription_id\": \"1234\"\n },\n \"products\": [\n {\n \"price\": 100,\n \"productId\": 21,\n \"quantity\": 2,\n \"variantId\": \"P100\"\n },\n {\n \"price\": 100,\n \"productId\": 21,\n \"quantity\": 2,\n \"variantId\": \"P15756\"\n }\n ],\n \"status\": \"complete\",\n \"storeId\": \"123\",\n \"updatedAt\": \"2022-03-03T14:48:31.867Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a36a1140-3b78-405a-bb99-4be25b0e6f61","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"7063107e-0ad5-4bbd-97ec-def7bdb05465","name":"Managing the status of the order - default","request":{"urlPathTemplate":"/orders/status","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"7063107e-0ad5-4bbd-97ec-def7bdb05465","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1d3a52e5-1eb4-4b21-9a58-9136f4d6cdda","name":"Create orders in batch - default","request":{"urlPathTemplate":"/orders/status/batch","method":"POST"},"response":{"status":202,"body":"{\n \"batchId\": 1.1,\n \"count\": 17655\n}","headers":{"Content-Type":"application/json"}},"uuid":"1d3a52e5-1eb4-4b21-9a58-9136f4d6cdda","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fd7eae8c-354e-4a43-8cea-0aa947291dea","name":"Return all your products - default","request":{"urlPathTemplate":"/products","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"products\": [\n {\n \"categories\": [\n \"279638835374\",\n \"279502848174\"\n ],\n \"createdAt\": \"2022-06-30T10:29:16.078Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2022-06-30T10:29:16.078Z\",\n \"name\": \"Alpina Panoma Classic\",\n \"parentId\": \"parentId\",\n \"price\": 49.95,\n \"s3Original\": \"https://img-ecom.mailinblue.com/path-to-original/img.jpg\",\n \"s3ThumbAnalytics\": \"https://img-ecom.mailinblue.com/path-to-analytics/img.jpg\",\n \"s3ThumbEditor\": \"https://img-ecom.mailinblue.com/path-to-editor/img.jpg\",\n \"sku\": \"186622-9\",\n \"stock\": 100,\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic\"\n },\n {\n \"categories\": [\n \"2d79638835374\",\n \"27d9502848174\"\n ],\n \"createdAt\": \"2022-06-30T10:29:16.078Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2022-06-30T10:29:16.078Z\",\n \"name\": \"Alpina Panoma Classic2\",\n \"parentId\": \"parentId\",\n \"price\": 49.95,\n \"s3Original\": \"https://img-ecom.mailinblue.com/path-to-original/img.jpg\",\n \"s3ThumbAnalytics\": \"https://img-ecom.mailinblue.com/path-to-analytics/img.jpg\",\n \"s3ThumbEditor\": \"https://img-ecom.mailinblue.com/path-to-editor/img.jpg\",\n \"sku\": \"186622-9\",\n \"stock\": 350,\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic2\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"fd7eae8c-354e-4a43-8cea-0aa947291dea","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8a42981c-cdd8-404e-bdb0-edaac19b7e0c","name":"Create/Update a product - default","request":{"urlPathTemplate":"/products","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"8a42981c-cdd8-404e-bdb0-edaac19b7e0c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5f2f0859-18a7-463c-bee7-4afb4ba092b0","name":"Create products in batch - default","request":{"urlPathTemplate":"/products/batch","method":"POST"},"response":{"status":201,"body":"{\n \"createdCount\": 2,\n \"updatedCount\": 7\n}","headers":{"Content-Type":"application/json"}},"uuid":"5f2f0859-18a7-463c-bee7-4afb4ba092b0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dcc8be20-9ebc-41b7-a9e0-2e9b9004756a","name":"Get a product's details - default","request":{"urlPathTemplate":"/products/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"categories\": [\n \"categories\"\n ],\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"name\": \"Iphone 11\",\n \"parentId\": \"parentId\",\n \"price\": 1.1,\n \"s3Original\": \"s3Original\",\n \"s3ThumbAnalytics\": \"s3ThumbAnalytics\",\n \"s3ThumbEditor\": \"s3ThumbEditor\",\n \"sku\": \"sku\",\n \"stock\": 100,\n \"url\": \"http://mydomain.com/product/electronics/product1\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"dcc8be20-9ebc-41b7-a9e0-2e9b9004756a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e82388ef-e4d4-4ac5-874c-2f802a602bed","name":"Create a product alert for a contact - default","request":{"urlPathTemplate":"/products/{id}/alerts/{type}","method":"POST","pathParameters":{"id":{"equalTo":"id"},"type":{"equalTo":"back_in_stock"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e82388ef-e4d4-4ac5-874c-2f802a602bed","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1afa5f6e-118c-4482-b744-5ef2a9799cf5","name":"Get all your coupon collections - default","request":{"urlPathTemplate":"/couponCollections","method":"GET"},"response":{"status":200,"body":"{\n \"createdAt\": \"2023-01-06T05:03:47Z\",\n \"defaultCoupon\": \"10 OFF\",\n \"expirationDate\": \"2024-01-01T00:00:00Z\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\",\n \"remainingCoupons\": 5000,\n \"remainingCouponsAlert\": 5,\n \"remainingDaysAlert\": 5,\n \"totalCoupons\": 10000\n}","headers":{"Content-Type":"application/json"}},"uuid":"1afa5f6e-118c-4482-b744-5ef2a9799cf5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e6cacd7a-7ba8-4b0a-822c-0d6971f40073","name":"Create Π° coupon collection - default","request":{"urlPathTemplate":"/couponCollections","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e6cacd7a-7ba8-4b0a-822c-0d6971f40073","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dff4a2fb-73ac-479f-ab4c-2c9110fd1537","name":"Get a coupon collection by id - default","request":{"urlPathTemplate":"/couponCollections/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2023-01-06T05:03:47Z\",\n \"defaultCoupon\": \"10 OFF\",\n \"expirationDate\": \"2024-01-01T00:00:00Z\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\",\n \"remainingCoupons\": 5000,\n \"remainingCouponsAlert\": 5,\n \"remainingDaysAlert\": 5,\n \"totalCoupons\": 10000\n}","headers":{"Content-Type":"application/json"}},"uuid":"dff4a2fb-73ac-479f-ab4c-2c9110fd1537","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e28907c7-b011-4634-bb47-d32e210b128b","name":"Update a coupon collection by id - default","request":{"urlPathTemplate":"/couponCollections/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"defaultCoupon\": \"10 OFF\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e28907c7-b011-4634-bb47-d32e210b128b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eef10e8c-75d8-4adc-9fb0-8c2daeb31145","name":"Create coupons for a coupon collection - default","request":{"urlPathTemplate":"/coupons","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eef10e8c-75d8-4adc-9fb0-8c2daeb31145","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"35f2e6da-c185-4829-b6ce-3bd466f76681","name":"Create a payment request - default","request":{"urlPathTemplate":"/payments/requests","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 122,\n \"url\": \"https://pay.brevo.com/payment/6d4ec0b2b48ef803df4103ve\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"35f2e6da-c185-4829-b6ce-3bd466f76681","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"173baf22-0f60-411a-b5e3-f68c427c3a5d","name":"Get payment request details - default","request":{"urlPathTemplate":"/payments/requests/{id}","method":"GET","pathParameters":{"id":{"equalTo":"050db7b0-9bb7-4c1e-9c68-5a8dace8c1dc"}}},"response":{"status":200,"body":"{\n \"cart\": {\n \"currency\": \"EUR\",\n \"specificAmount\": 1200\n },\n \"configuration\": {\n \"customSuccessUrl\": \"https://my-company.com/payment-success\"\n },\n \"contactId\": 43,\n \"notification\": {\n \"channel\": \"email\",\n \"text\": \"Please pay for your yoga class.\"\n },\n \"numberOfRemindersSent\": 5,\n \"reference\": \"Invoice #INV0001\\n\",\n \"status\": \"paid\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"173baf22-0f60-411a-b5e3-f68c427c3a5d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"87ef813d-0336-4656-a5b5-e0899662397f","name":"Delete a payment request. - default","request":{"urlPathTemplate":"/payments/requests/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"9ae7d68a-565c-4695-9381-d8fb3e3a14cc"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"87ef813d-0336-4656-a5b5-e0899662397f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"aed029ff-9be1-4acb-9dcf-a4c3e218a560","name":"Create an event - default","request":{"urlPathTemplate":"/events","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"aed029ff-9be1-4acb-9dcf-a4c3e218a560","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"09aa7143-15a9-433c-a1e0-3444863bbf64","name":"Get the list of all the events for the received emails. - default","request":{"urlPathTemplate":"/inbound/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2017-03-11T12:30:00Z\",\n \"recipient\": \"alexa@example.com\",\n \"sender\": \"john@example.com\",\n \"uuid\": \"1a825d56-029b-4a41-b8e4-1a825d56\"\n },\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"recipient\": \"bob@example.com\",\n \"sender\": \"alice@example.com\",\n \"uuid\": \"1a825d56-029b-4a41-b8e4-61670463431b\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"09aa7143-15a9-433c-a1e0-3444863bbf64","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ee4248db-9736-4af1-a32a-5a7de6f5328a","name":"Fetch all events history for one particular received email. - default","request":{"urlPathTemplate":"/inbound/events/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"uuid"}}},"response":{"status":200,"body":"{\n \"attachments\": [\n {\n \"contentLength\": 12345,\n \"contentType\": \"application/pdf\",\n \"name\": \"invoice.pdf\"\n }\n ],\n \"deliveredAt\": \"2017-03-12T12:31:00Z\",\n \"logs\": [\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"type\": \"received\"\n },\n {\n \"date\": \"2017-03-12T12:30:04Z\",\n \"type\": \"webhookFailed\"\n },\n {\n \"date\": \"2017-03-12T12:31:04Z\",\n \"type\": \"webhookDelivered\"\n }\n ],\n \"messageId\": \"\",\n \"receivedAt\": \"2017-03-12T12:30:00Z\",\n \"recipient\": \"bob@example.com\",\n \"sender\": \"alice@example.com\",\n \"subject\": \"Re: Question about your API\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"ee4248db-9736-4af1-a32a-5a7de6f5328a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3426b7cd-c7c6-4cd0-8359-916c1482c4a3","name":"Retrieve inbound attachment with download token. - default","request":{"urlPathTemplate":"/inbound/attachments/{downloadToken}","method":"GET","pathParameters":{"downloadToken":{"equalTo":"downloadToken"}}},"response":{"status":200,"body":"{\n \"key\": \"value\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"3426b7cd-c7c6-4cd0-8359-916c1482c4a3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b8273ac4-3d1a-4b9a-b003-bb49ef16337f","name":"Get Active Balances API - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/active-balance","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"b8273ac4-3d1a-4b9a-b003-bb49ef16337f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7ed4ff5a-868f-45ef-a95a-550b62f69d5a","name":"Get balance definition list - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"7ed4ff5a-868f-45ef-a95a-550b62f69d5a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9db15f6f-dd09-4033-bff7-9d94ef6ae471","name":"Create balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"9db15f6f-dd09-4033-bff7-9d94ef6ae471","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5171ff4c-8ab1-4886-96b9-72845239dcb2","name":"Get balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"5171ff4c-8ab1-4886-96b9-72845239dcb2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1da76c71-d209-4641-9094-43a7214838ef","name":"Update balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"1da76c71-d209-4641-9094-43a7214838ef","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a3817b26-f6c9-4900-86c4-6d4869b41b38","name":"Delete balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a3817b26-f6c9-4900-86c4-6d4869b41b38","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d2118a4-5218-46f1-8513-ef75d832d7d5","name":"Create balance limits - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d2118a4-5218-46f1-8513-ef75d832d7d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5def443d-7ef0-4c5c-99d3-9e38a21ed142","name":"Get balance limits - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"5def443d-7ef0-4c5c-99d3-9e38a21ed142","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3c24feb3-061c-4954-a12f-81100122b866","name":"Updates balance limit - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3c24feb3-061c-4954-a12f-81100122b866","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"60e7789f-ecdc-4330-96f5-426c8865aa02","name":"Delete balance limit - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"60e7789f-ecdc-4330-96f5-426c8865aa02","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a00ea68f-14e1-4bbc-a3ad-1f4c555dbd92","name":"Get balance list - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/contact-balances","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"balances\": [\n {\n \"contactId\": 1,\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1\n }\n ],\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"a00ea68f-14e1-4bbc-a3ad-1f4c555dbd92","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"24af1e00-9fca-4515-89c5-bce7048b3f2e","name":"Create balance order - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/create-order","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"dueAt\": \"dueAt\",\n \"expiresAt\": \"expiresAt\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"processedAt\": \"processedAt\",\n \"transactionid\": \"transactionid\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"24af1e00-9fca-4515-89c5-bce7048b3f2e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"bd77b0ff-3379-4930-aa93-f8cc25163bee","name":"Get subscription balances - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/subscriptions/{cid}/balances","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"}}},"response":{"status":200,"body":"{\n \"balance\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"value\": 1.1\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"bd77b0ff-3379-4930-aa93-f8cc25163bee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"06abbd3e-aec8-48f0-9c90-49887599e5ac","name":"Create subscription balances - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/subscriptions/{cid}/balances","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"consumedAt\": \"consumedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"expiresAt\": \"expiresAt\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"organizationId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"06abbd3e-aec8-48f0-9c90-49887599e5ac","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d806b377-c3f2-46e1-af10-826fc8cb7a77","name":"Get Transaction History API - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transaction-history","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"contactId\": 1,\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"transactionHistory\": [\n {\n \"amount\": 1.1,\n \"balanceExpirationDate\": \"balanceExpirationDate\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"createdAt\": \"createdAt\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d806b377-c3f2-46e1-af10-826fc8cb7a77","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"01dd65f2-fc30-4f9a-94e7-cf908b0c0b6a","name":"Create new transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"01dd65f2-fc30-4f9a-94e7-cf908b0c0b6a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"bd42f484-63b7-431c-9d4b-a149ff9cd0b8","name":"Cancel transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions/{tid}/cancel","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"bd42f484-63b7-431c-9d4b-a149ff9cd0b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fbed8bbf-cc97-48fb-a7f6-e56e37f2cf2e","name":"Complete transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions/{tid}/complete","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fbed8bbf-cc97-48fb-a7f6-e56e37f2cf2e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"26205d6c-548c-4928-8845-8eb6528a066d","name":"Get loyalty program list - default","request":{"urlPathTemplate":"/loyalty/config/programs","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"26205d6c-548c-4928-8845-8eb6528a066d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"58d70d75-ea78-49d2-a9d6-beab3075e797","name":"Create loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs","method":"POST"},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"58d70d75-ea78-49d2-a9d6-beab3075e797","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c0fa09f4-d2b6-46f5-9560-abd8eb19c934","name":"Get loyalty program Info - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c0fa09f4-d2b6-46f5-9560-abd8eb19c934","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"861e512a-8f3c-4e67-9519-b050d07984c6","name":"Update loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"861e512a-8f3c-4e67-9519-b050d07984c6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a87fbb4c-71e6-4806-9622-174c92be89d1","name":"Delete Loyalty Program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a87fbb4c-71e6-4806-9622-174c92be89d1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8a2689f4-70a0-4e02-8ce4-3c55e07bc708","name":"Partially update loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"PATCH","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8a2689f4-70a0-4e02-8ce4-3c55e07bc708","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d32199cf-9ffa-4318-a330-2e9fda3da2d2","name":"Get Subscription Data - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/account-info","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balance\": {\n \"balances\": [\n {}\n ],\n \"contactId\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\"\n },\n \"members\": [\n {\n \"createdAt\": \"createdAt\",\n \"memberContactId\": 1,\n \"updatedAt\": \"updatedAt\"\n }\n ],\n \"reward\": [\n {\n \"code\": \"code\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"updatedAt\"\n }\n ],\n \"tier\": [\n {\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"groupId\": \"groupId\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"tierId\": \"tierId\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d32199cf-9ffa-4318-a330-2e9fda3da2d2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e628ecea-6ac2-4237-bf4e-d3e911f50954","name":"Publish loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/publish","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e628ecea-6ac2-4237-bf4e-d3e911f50954","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c63d1aae-db4f-4b4c-b82f-19e95683e037","name":"Create subscription member - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscription-members","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"createdAt\",\n \"memberContactIds\": [\n 1\n ],\n \"organizationId\": 1,\n \"ownerContactId\": 1,\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c63d1aae-db4f-4b4c-b82f-19e95683e037","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"efc3a783-b09a-41eb-8c6f-6f3f03271ef4","name":"Delete subscription member - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscription-members","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"efc3a783-b09a-41eb-8c6f-6f3f03271ef4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c73cc6cc-b51b-4e8a-ae72-3446029b9ec5","name":"Create subscription - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscriptions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\",\n \"organizationId\": 1,\n \"updatedAt\": \"updatedAt\",\n \"versionId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"c73cc6cc-b51b-4e8a-ae72-3446029b9ec5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"da280697-1454-4e11-996a-89c499cf8d7f","name":"Get code count - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/code-pools/{cpid}/codes-count","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"cpid":{"equalTo":"cpid"}}},"response":{"status":200,"body":"{\n \"count\": 1000000\n}","headers":{"Content-Type":"application/json"}},"uuid":"da280697-1454-4e11-996a-89c499cf8d7f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d324fa9-3782-4213-ab50-8574dc117f03","name":"Get Reward Page API - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/offers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"endDate\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"publicImage\": \"publicImage\",\n \"startDate\": \"2024-01-15T09:30:00Z\",\n \"state\": \"state\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"totalCount\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d324fa9-3782-4213-ab50-8574dc117f03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e24ddc18-7dbb-4302-828c-d6e53ebb4a34","name":"Create a reward - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/offers","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"publicDescription\": \"publicDescription\",\n \"publicImage\": \"publicImage\",\n \"publicName\": \"publicName\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e24ddc18-7dbb-4302-828c-d6e53ebb4a34","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"661c8611-a50c-4e77-aad2-b152b4a15e63","name":"Create a voucher - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/attribute","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"code\": \"code\",\n \"consumedAt\": \"consumedAt\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"expirationDate\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"value\": 1.1\n}","headers":{"Content-Type":"application/json"}},"uuid":"661c8611-a50c-4e77-aad2-b152b4a15e63","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"aa8692b0-126d-488d-b643-8fe0de2f8405","name":"Create redeem voucher request - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/redeem","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"cancelledAt\": \"2024-01-15T09:30:00Z\",\n \"completedAt\": \"2024-01-15T09:30:00Z\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"debitTransactionId\": \"debitTransactionId\",\n \"expiresAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"2024-01-15T09:30:00Z\",\n \"rewardAttributionId\": \"rewardAttributionId\",\n \"status\": \"status\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"aa8692b0-126d-488d-b643-8fe0de2f8405","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"99e6b97f-e193-4c85-b833-07efab4f9b5b","name":"Complete redeem voucher request - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/redeem/{tid}/complete","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"cancelledAt\": \"2024-01-15T09:30:00Z\",\n \"completedAt\": \"2024-01-15T09:30:00Z\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"debitTransactionId\": \"debitTransactionId\",\n \"expiresAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"2024-01-15T09:30:00Z\",\n \"rewardAttributionId\": \"rewardAttributionId\",\n \"status\": \"status\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"99e6b97f-e193-4c85-b833-07efab4f9b5b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"919890cf-9d52-46fe-87bc-03565bdc4697","name":"Revoke vouchers - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/revoke","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"919890cf-9d52-46fe-87bc-03565bdc4697","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"53d2fcd5-6b39-4fa3-a257-21f60d24efc5","name":"Validate a reward - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/validate","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"authorize\": true\n}","headers":{"Content-Type":"application/json"}},"uuid":"53d2fcd5-6b39-4fa3-a257-21f60d24efc5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"66e13a60-2e6c-4f3b-9ff7-fc1cdcc147b8","name":"Get reward information - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/{rid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"rid":{"equalTo":"rid"}}},"response":{"status":200,"body":"{\n \"attributionPerConsumer\": 1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"code\": \"code\",\n \"codeCount\": 1000000,\n \"codeGeneratorId\": \"codeGeneratorId\",\n \"codePoolId\": \"codePoolId\",\n \"config\": \"config\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"disabledAt\": \"2024-01-15T09:30:00Z\",\n \"endDate\": \"2024-01-15T09:30:00Z\",\n \"expirationDate\": \"2024-01-15T09:30:00Z\",\n \"expirationModifier\": \"startOfPeriod\",\n \"expirationUnit\": \"expirationUnit\",\n \"expirationValue\": 1,\n \"generator\": {\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n },\n \"id\": \"id\",\n \"limits\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"limitValue\": 1,\n \"rewardLimitId\": \"rewardLimitId\",\n \"slidingSchedule\": true,\n \"type\": \"type\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"products\": [\n {\n \"createdAt\": \"createdAt\",\n \"imageRef\": \"imageRef\",\n \"productId\": \"productId\",\n \"value\": \"value\"\n }\n ],\n \"publicDescription\": \"publicDescription\",\n \"publicImage\": \"publicImage\",\n \"publicName\": \"publicName\",\n \"redeemPerConsumer\": 1,\n \"redeemRules\": [\n \"redeemRules\"\n ],\n \"rewardConfigs\": {\n \"attribution\": \"attribution\",\n \"code\": \"code\",\n \"value\": \"value\"\n },\n \"rule\": {\n \"condition\": {\n \"op\": \"op\"\n },\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"event\": {\n \"name\": \"name\",\n \"source\": \"source\"\n },\n \"isInternal\": true,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltyVersionId\": 1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"results\": [\n {}\n ],\n \"ruleId\": \"ruleId\",\n \"ruleType\": \"ruleType\",\n \"updatedAt\": \"updatedAt\"\n },\n \"startDate\": \"2024-01-15T09:30:00Z\",\n \"subtractBalanceDefinitionId\": \"subtractBalanceDefinitionId\",\n \"subtractBalanceStrategy\": \"subtractBalanceStrategy\",\n \"subtractBalanceValue\": 1,\n \"subtractTotalBalance\": true,\n \"totalAttribution\": 1,\n \"totalRedeem\": 1,\n \"triggerId\": \"triggerId\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1,\n \"valueType\": \"valueType\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"66e13a60-2e6c-4f3b-9ff7-fc1cdcc147b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"950e340e-ab9c-42c4-8c85-9ea1bd43113d","name":"Get voucher for a contact - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/vouchers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1000000,\n \"contactRewards\": [\n {\n \"code\": \"code\",\n \"consumedAt\": \"consumedAt\",\n \"createdAt\": \"createdAt\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1\n }\n ],\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"950e340e-ab9c-42c4-8c85-9ea1bd43113d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f3e1d26e-fbde-4b7e-afe4-fabb4960ff71","name":"Assign a tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/contacts/{cid}/tiers/{tid}","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f3e1d26e-fbde-4b7e-afe4-fabb4960ff71","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e6fc762d-7440-4454-beb1-ff71f4a9080e","name":"List tier groups - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e6fc762d-7440-4454-beb1-ff71f4a9080e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d33f2b3b-2dd3-4911-8200-e4b4ef965933","name":"Create a tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d33f2b3b-2dd3-4911-8200-e4b4ef965933","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"562fecbb-8cc8-46ae-b519-3fd2825bb107","name":"Get tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"562fecbb-8cc8-46ae-b519-3fd2825bb107","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"67f29817-d31a-4186-b787-9277e465e139","name":"Update tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"67f29817-d31a-4186-b787-9277e465e139","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a9e14ece-a957-40e8-b723-4b89904599dd","name":"Delete tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a9e14ece-a957-40e8-b723-4b89904599dd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d2b435bf-764a-46a6-a860-04672e2611c0","name":"Create a tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}/tiers","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"accessConditions\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"minimumValue\": 1,\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d2b435bf-764a-46a6-a860-04672e2611c0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e335b644-b3a8-4e92-9222-a80f9a8dd3ab","name":"List tiers - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"accessConditions\": [\n {}\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {}\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e335b644-b3a8-4e92-9222-a80f9a8dd3ab","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c299567a-50ff-4db3-a919-280c95c9de65","name":"Update tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers/{tid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"accessConditions\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"minimumValue\": 1,\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c299567a-50ff-4db3-a919-280c95c9de65","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"05e6afcc-fb74-4457-a108-1dc6a10a5be7","name":"Delete tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers/{tid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"05e6afcc-fb74-4457-a108-1dc6a10a5be7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"cec8c14d-adf6-497f-95ee-c48ab1d6503d","name":"Return all your created email campaigns - default","request":{"urlPathTemplate":"/emailCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"abTesting\": true,\n \"id\": 12,\n \"name\": \"EN - Sales Summer 2017\",\n \"previewText\": \"Don't miss the sale!\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"sent\",\n \"subject\": \"20% OFF for 2017 Summer Sales\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"marketing@mycompany.com\",\n \"id\": 26,\n \"name\": \"Marketing\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://example.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": true,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 5\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 5,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"statsByDevice\": {},\n \"statsByDomain\": {\n \"hotmail.co.uk\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2720,\n \"complaints\": 5,\n \"deferred\": 30,\n \"delivered\": 117056,\n \"estimatedViews\": 560,\n \"hardBounces\": 0,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 117055,\n \"softBounces\": 111,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 1970,\n \"uniqueViews\": 21111,\n \"unsubscriptions\": 105,\n \"viewed\": 35251\n },\n \"yahoo.com\": {\n \"appleMppOpens\": 10,\n \"clickers\": 533,\n \"complaints\": 0,\n \"deferred\": 30,\n \"delivered\": 25596,\n \"estimatedViews\": 560,\n \"hardBounces\": 0,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 25601,\n \"softBounces\": 5,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 298,\n \"uniqueViews\": 3527,\n \"unsubscriptions\": 17,\n \"viewed\": 5255\n }\n }\n }\n },\n {\n \"abTesting\": true,\n \"id\": 22,\n \"name\": \"Weekly - 1\",\n \"previewText\": \"your weekly newsletter!\",\n \"scheduledAt\": \"\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"draft\",\n \"subject\": \"Week 1 - Newsletter\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"newsletter@mycompany.com\",\n \"id\": 26,\n \"name\": \"Newsletter\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://example.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": false,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 45\n ],\n \"lists\": [\n 10\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 10,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.42,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"statsByDevice\": {},\n \"statsByDomain\": {\n \"aol\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"gmail\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n }\n }\n }\n ],\n \"count\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"cec8c14d-adf6-497f-95ee-c48ab1d6503d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"3d7c577e-d169-438f-b91c-d1f90d441dee","name":"Create an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d7c577e-d169-438f-b91c-d1f90d441dee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b6e00948-fca2-4a11-addd-d16045c94c90","name":"Upload an image to your account's image gallery - default","request":{"urlPathTemplate":"/emailCampaigns/images","method":"POST"},"response":{"status":201,"body":"{\n \"url\": \"https://img.mailinblue.com/100000/images/rnb/original/62casdase8wewq9df1c2f27c.jpeg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"b6e00948-fca2-4a11-addd-d16045c94c90","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"da8f0483-4951-4e2d-a495-15906071e018","name":"Get an email campaign report - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"abTesting\": true,\n \"id\": 22,\n \"name\": \"Weekly - 1\",\n \"previewText\": \"your weekly newsletter\",\n \"scheduledAt\": \"2017-09-22T12:30:00Z\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"draft\",\n \"subject\": \"Week 1 - Newsletter\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"newsletter@mycompany.com\",\n \"id\": 26,\n \"name\": \"Newsletter\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://dhh.brevo.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": false,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 45\n ],\n \"lists\": [\n 22\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 22,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 24.59,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"internetExplorer\": {\n \"clickers\": 0,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"safari\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"thunderbird\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n }\n },\n \"statsByDevice\": {\n \"desktop\": {\n \"mac\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 1,\n \"viewed\": 2\n }\n },\n \"mobile\": {\n \"androidMobile\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"iPhone\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 2\n }\n },\n \"tablet\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"unknown\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n }\n },\n \"statsByDomain\": {\n \"gmail\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"da8f0483-4951-4e2d-a495-15906071e018","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"27d7a953-713c-4dcc-a03d-a5fcd5fbc134","name":"Update an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"27d7a953-713c-4dcc-a03d-a5fcd5fbc134","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"28dbcc0e-eed7-4b02-a7d8-2aab0a25c731","name":"Delete an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"28dbcc0e-eed7-4b02-a7d8-2aab0a25c731","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"969348eb-29d3-48ab-82d1-c46a8412178e","name":"Get an A/B test email campaign results - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/abTestCampaignResult","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"clickRate\": \"50%\",\n \"clickedLinks\": {\n \"Version A\": [\n {\n \"clickRate\": \"0%\",\n \"clicksCount\": 0,\n \"link\": \"https://google.com\"\n },\n {\n \"clickRate\": \"0%\",\n \"clicksCount\": 0,\n \"link\": \"https://youtube.com\"\n }\n ],\n \"Version B\": [\n {\n \"clickRate\": \"40%\",\n \"clicksCount\": 2,\n \"link\": \"http://www.github.com\"\n },\n {\n \"clickRate\": \"60%\",\n \"clicksCount\": 3,\n \"link\": \"http://www.stackoverflow.com\"\n }\n ]\n },\n \"openRate\": \"100%\",\n \"statistics\": {\n \"clicks\": {\n \"Version A\": \"0%\",\n \"Version B\": \"50%\"\n },\n \"complaints\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"hardBounces\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"openers\": {\n \"Version A\": \"20%\",\n \"Version B\": \"100%\"\n },\n \"softBounces\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"unsubscribed\": {\n \"Version A\": \"20%\",\n \"Version B\": \"0%\"\n }\n },\n \"winningCriteria\": \"Click\",\n \"winningSubjectLine\": \"Subject Line A\",\n \"winningVersion\": \"B\",\n \"winningVersionRate\": \"0%\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"969348eb-29d3-48ab-82d1-c46a8412178e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"93e3be61-a737-4896-a697-7417b837b571","name":"Export the recipients of an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/exportRecipients","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"93e3be61-a737-4896-a697-7417b837b571","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b0b17959-d743-449c-8bdd-ab28a42870cc","name":"Send an email campaign immediately, based on campaignId - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendNow","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b0b17959-d743-449c-8bdd-ab28a42870cc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"57eba48c-9a52-4e90-a12c-fa89a469f035","name":"Send the report of a campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendReport","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"57eba48c-9a52-4e90-a12c-fa89a469f035","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fc668b8b-10da-4f83-ae38-5004f0a64ae7","name":"Send an email campaign to your test list - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendTest","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fc668b8b-10da-4f83-ae38-5004f0a64ae7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6bc6114e-fc20-4aa2-ba22-7e7fe7f95244","name":"Get a shared template url - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sharedUrl","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"sharedUrl\": \"https://my.brevo.com/pt2YU7R5W_guXlowgumy_VX4pFsKu._zd0Gjj96x1_GMmzc1Qps5ZIpj6nx-\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"6bc6114e-fc20-4aa2-ba22-7e7fe7f95244","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8d661344-163b-4798-a243-ba10bd08cbe9","name":"Update an email campaign status - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/status","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"8d661344-163b-4798-a243-ba10bd08cbe9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ffedd57d-0198-49a4-9112-ce7ae8751ebc","name":"Returns the information for all your created SMS campaigns - default","request":{"urlPathTemplate":"/smsCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"content\": \"Visit our Store and get some discount !\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 2,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"PROMO CODE\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"sent\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n },\n {\n \"content\": \"Summer Sale is starting tomorrow. Get extra 10% with this code:SUM17\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 10,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"SUMMER SALE\",\n \"scheduledAt\": \"2017-08-04T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"draft\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n }\n ],\n \"count\": 12\n}","headers":{"Content-Type":"application/json"}},"uuid":"ffedd57d-0198-49a4-9112-ce7ae8751ebc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ff5b73cc-83d1-4d1c-9038-f01bc11a604e","name":"Creates an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"ff5b73cc-83d1-4d1c-9038-f01bc11a604e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9ff5c02a-8b74-486b-aca9-7ac003b1838c","name":"Get an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"content\": \"Visit our Store and get some discount !\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 2,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"PROMO CODE\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"sent\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"9ff5c02a-8b74-486b-aca9-7ac003b1838c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"828e0b76-55ec-4b20-83fd-ff0d9c6a807f","name":"Update an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"828e0b76-55ec-4b20-83fd-ff0d9c6a807f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0938f276-c211-4150-91ac-9ea5e3ddf7fe","name":"Delete an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"0938f276-c211-4150-91ac-9ea5e3ddf7fe","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"daaeea82-c583-43fb-b4c7-a6bbc940fc47","name":"Export an SMS campaign's recipients - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/exportRecipients","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"daaeea82-c583-43fb-b4c7-a6bbc940fc47","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b7dd5175-f7a0-4b5e-9224-203d4fae1c4d","name":"Send your SMS campaign immediately - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendNow","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b7dd5175-f7a0-4b5e-9224-203d4fae1c4d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"64e8bd39-5b33-477a-ae7f-0501cb5a6140","name":"Send an SMS campaign's report - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendReport","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"64e8bd39-5b33-477a-ae7f-0501cb5a6140","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"734d1bda-9010-4188-9a00-57d5b302eee4","name":"Send a test SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendTest","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"734d1bda-9010-4188-9a00-57d5b302eee4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"694adffd-8af9-45be-8225-5e44e17d7454","name":"Update a campaign's status - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/status","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"694adffd-8af9-45be-8225-5e44e17d7454","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"03183785-7a99-4733-896c-eb489047065c","name":"Return all your created WhatsApp campaigns - default","request":{"urlPathTemplate":"/whatsappCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"campaignName\": \"campaign_22\",\n \"campaignStatus\": \"sent\",\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"errorReason\": \"NONE\",\n \"id\": 1672035851100690,\n \"invalidatedContacts\": 0,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"readPercentage\": 28.57,\n \"scheduledAt\": \"2022-12-27T09:50:00Z\",\n \"stats\": {\n \"delivered\": 3,\n \"notSent\": 4,\n \"read\": 2,\n \"sent\": 3,\n \"unsubscribe\": 0\n },\n \"templateId\": \"templateId\"\n }\n ],\n \"count\": 23\n}","headers":{"Content-Type":"application/json"}},"uuid":"03183785-7a99-4733-896c-eb489047065c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5fc3f144-a51f-454f-a5d0-019b38ba3c15","name":"Create and Send a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"5fc3f144-a51f-454f-a5d0-019b38ba3c15","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"cc80c9bc-ff82-4140-9b7a-dfb84c8e99a7","name":"Get your WhatsApp API account information - default","request":{"urlPathTemplate":"/whatsappCampaigns/config","method":"GET"},"response":{"status":200,"body":"{\n \"businessStatus\": \"verified\",\n \"phoneNumberNameStatus\": \"APPROVED\",\n \"phoneNumberQuality\": \"GREEN\",\n \"sendingLimit\": \"TIER_1K\",\n \"whatsappBusinessAccountId\": \"whatsappBusinessAccountId\",\n \"whatsappBusinessAccountStatus\": \"APPROVED\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"cc80c9bc-ff82-4140-9b7a-dfb84c8e99a7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5217f5cb-e270-45d2-bf41-0aa3651c5839","name":"Create a WhatsApp template - default","request":{"urlPathTemplate":"/whatsappCampaigns/template","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"5217f5cb-e270-45d2-bf41-0aa3651c5839","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e541402c-10e0-447d-ab89-e9102a312296","name":"Return all your created WhatsApp templates - default","request":{"urlPathTemplate":"/whatsappCampaigns/template-list","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"templates\": [\n {\n \"category\": \"MARKETING\",\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"errorReason\": \"NONE\",\n \"id\": 235,\n \"language\": \"en\",\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"campaign_22\",\n \"status\": \"approved\"\n },\n {\n \"category\": \"MARKETING\",\n \"createdAt\": \"2017-0\",\n \"errorReason\": \"NONE\",\n \"id\": 124,\n \"language\": \"\",\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"test-template\",\n \"status\": \"draft\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e541402c-10e0-447d-ab89-e9102a312296","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c47467e5-3355-486f-b83b-ecf963b249b4","name":"Send your WhatsApp template for approval - default","request":{"urlPathTemplate":"/whatsappCampaigns/template/approval/{templateId}","method":"POST","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c47467e5-3355-486f-b83b-ecf963b249b4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6d437255-9beb-48aa-9616-0b438eb437f6","name":"Get a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"campaignName\": \"Test WhatsApp Campaign\",\n \"campaignStatus\": \"sent\",\n \"createdAt\": \"2022-12-26T06:50:00Z\",\n \"id\": 1672035851100690,\n \"modifiedAt\": \"2022-12-26T08:50:00Z\",\n \"scheduledAt\": \"2022-12-27T09:50:00Z\",\n \"senderNumber\": \"senderNumber\",\n \"stats\": {\n \"delivered\": 3,\n \"notSent\": 4,\n \"read\": 2,\n \"sent\": 3,\n \"unsubscribe\": 0\n },\n \"template\": {\n \"body_variables\": [\n {\n \"datatype\": \"text\",\n \"default\": \"INVALID_HEADER\",\n \"name\": \"FIRSTNAME\"\n }\n ],\n \"button_type\": \"CALL_TO_ACTION\",\n \"category\": \"MARKETING\",\n \"components\": [\n {\n \"text\": \"making it look like readable English.\",\n \"type\": \"BODY\"\n },\n {\n \"text\": \"Life is a long lesson in humility\",\n \"type\": \"BUTTONS\"\n }\n ],\n \"contains_button\": true,\n \"display_header\": false,\n \"header_type\": \"text\",\n \"header_variables\": [\n {\n \"datatype\": \"text\",\n \"default\": \"INVALID HEADER\",\n \"name\": \"FIRSTNAME\"\n }\n ],\n \"hide_footer\": true,\n \"language\": \"en\",\n \"name\": \"official_campaign8\"\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"6d437255-9beb-48aa-9616-0b438eb437f6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eb75a9a4-36c5-4126-9a14-85044f19f2c1","name":"Update a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eb75a9a4-36c5-4126-9a14-85044f19f2c1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b4ef121d-89fa-4fb6-984d-39467bf9fd6b","name":"Delete a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b4ef121d-89fa-4fb6-984d-39467bf9fd6b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eb31fc6b-22fd-431f-ba7e-59e0d7773487","name":"Get all Companies - default","request":{"urlPathTemplate":"/companies","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"eb31fc6b-22fd-431f-ba7e-59e0d7773487","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e17f5536-5a6b-4a26-8102-3170dd47ae3d","name":"Create a company - default","request":{"urlPathTemplate":"/companies","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e17f5536-5a6b-4a26-8102-3170dd47ae3d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f390d3a7-6a70-4b45-ad33-f4f3d3000538","name":"Import companies(creation and updation) - default","request":{"urlPathTemplate":"/companies/import","method":"POST"},"response":{"status":200,"body":"{\n \"processId\": 50\n}","headers":{"Content-Type":"application/json"}},"uuid":"f390d3a7-6a70-4b45-ad33-f4f3d3000538","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"708feaed-27c0-429f-8086-5e7c5e4ecd8d","name":"Link and Unlink company with contact and deal - default","request":{"urlPathTemplate":"/companies/link-unlink/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"708feaed-27c0-429f-8086-5e7c5e4ecd8d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"00aba53e-3870-4157-ace9-c2d252198e11","name":"Get a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"00aba53e-3870-4157-ace9-c2d252198e11","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ed72bcbe-33c2-48e2-93e4-756a46e8fd90","name":"Delete a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ed72bcbe-33c2-48e2-93e4-756a46e8fd90","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d37f940-80db-41f6-9f83-1f3a2c69804b","name":"Update a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d37f940-80db-41f6-9f83-1f3a2c69804b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1a24ce32-7c2c-41a5-80a9-1681d05767ad","name":"Create a company/deal attribute - default","request":{"urlPathTemplate":"/crm/attributes","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad07\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"1a24ce32-7c2c-41a5-80a9-1681d05767ad","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"696b098d-c426-490d-993d-82b72a9a6eec","name":"Get company attributes - default","request":{"urlPathTemplate":"/crm/attributes/companies","method":"GET"},"response":{"status":200,"body":"[\n {\n \"attributeOptions\": [\n {\n \"key\": \"custom key\",\n \"value\": \"custom label\"\n }\n ],\n \"attributeTypeName\": \"text\",\n \"internalName\": \"name\",\n \"isRequired\": true,\n \"label\": \"Company Name\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"696b098d-c426-490d-993d-82b72a9a6eec","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"3db982e0-00b7-41af-bc9d-fe3f54d90a12","name":"Get deal attributes - default","request":{"urlPathTemplate":"/crm/attributes/deals","method":"GET"},"response":{"status":200,"body":"[\n {\n \"attributeOptions\": [\n {\n \"key\": \"custom key\",\n \"value\": \"custom label\"\n }\n ],\n \"attributeTypeName\": \"text\",\n \"internalName\": \"deal_name\",\n \"isRequired\": true,\n \"label\": \"Deal Name\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"3db982e0-00b7-41af-bc9d-fe3f54d90a12","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"4ee2c155-e8d9-4aee-b095-699a2c9a6263","name":"Get all deals - default","request":{"urlPathTemplate":"/crm/deals","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"attributes\": {\n \"amount\": 12,\n \"created_at\": \"2022-05-30T07:42:05.671Z\",\n \"deal_name\": \"testname\",\n \"deal_owner\": \"6093d2425a9b436e9519d034\",\n \"deal_stage\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"last_activity_date\": \"2022-06-06T08:38:36.000Z\",\n \"last_updated_date\": \"2022-06-06T08:38:36.761Z\",\n \"number_of_activities\": 0,\n \"number_of_contacts\": 1,\n \"pipeline\": \"6093d296ad1e9c5cf2140a58\",\n \"stage_updated_at\": \"2022-05-30T07:42:05.671Z\"\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedCompaniesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ]\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"4ee2c155-e8d9-4aee-b095-699a2c9a6263","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"21216821-874f-4e2a-a690-4b805b03c721","name":"Create a deal - default","request":{"urlPathTemplate":"/crm/deals","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"21216821-874f-4e2a-a690-4b805b03c721","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ce9e7723-550c-4f51-af88-6cde553f45b7","name":"Import deals(creation and updation) - default","request":{"urlPathTemplate":"/crm/deals/import","method":"POST"},"response":{"status":200,"body":"{\n \"processId\": 50\n}","headers":{"Content-Type":"application/json"}},"uuid":"ce9e7723-550c-4f51-af88-6cde553f45b7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f89fa5e6-0434-46e0-8c77-535bea98fc1a","name":"Link and Unlink a deal with contacts and companies - default","request":{"urlPathTemplate":"/crm/deals/link-unlink/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f89fa5e6-0434-46e0-8c77-535bea98fc1a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a3513f5b-5df8-443d-aa67-5efd91e58f3d","name":"Get a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"amount\": 12,\n \"created_at\": \"2022-05-30T07:42:05.671Z\",\n \"deal_name\": \"testname\",\n \"deal_owner\": \"6093d2425a9b436e9519d034\",\n \"deal_stage\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"last_activity_date\": \"2022-06-06T08:38:36.000Z\",\n \"last_updated_date\": \"2022-06-06T08:38:36.761Z\",\n \"next_activity_date\": {\n \"key\": \"value\"\n },\n \"number_of_activities\": 0,\n \"number_of_contacts\": 1,\n \"pipeline\": \"6093d296ad1e9c5cf2140a58\",\n \"stage_updated_at\": \"2022-05-30T07:42:05.671Z\"\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedCompaniesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a3513f5b-5df8-443d-aa67-5efd91e58f3d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"54ba1660-4170-41b9-86d2-963468e28812","name":"Delete a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"54ba1660-4170-41b9-86d2-963468e28812","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e555066b-bfb4-4582-9f37-6eec50af9fe4","name":"Update a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e555066b-bfb4-4582-9f37-6eec50af9fe4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"00d065e6-8a4f-4ac9-a849-298a81551e9c","name":"Get pipeline stages - default","request":{"urlPathTemplate":"/crm/pipeline/details","method":"GET"},"response":{"status":200,"body":"{\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"00d065e6-8a4f-4ac9-a849-298a81551e9c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e75093b9-5f73-46e0-a2af-1f7c47922829","name":"Get all pipelines - default","request":{"urlPathTemplate":"/crm/pipeline/details/all","method":"GET"},"response":{"status":200,"body":"[\n {\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"e75093b9-5f73-46e0-a2af-1f7c47922829","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"2882799f-edf8-4d3b-826d-3692f300d025","name":"Get a pipeline - default","request":{"urlPathTemplate":"/crm/pipeline/details/{pipelineID}","method":"GET","pathParameters":{"pipelineID":{"equalTo":"pipelineID"}}},"response":{"status":200,"body":"[\n {\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"2882799f-edf8-4d3b-826d-3692f300d025","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2e96e9dc-f52d-4354-a185-de3257903a02","name":"Get all files - default","request":{"urlPathTemplate":"/crm/files","method":"GET"},"response":{"status":200,"body":"[\n {\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"2e96e9dc-f52d-4354-a185-de3257903a02","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"54153a26-e96d-4b54-acab-08a1b6bb6027","name":"Upload a file - default","request":{"urlPathTemplate":"/crm/files","method":"POST"},"response":{"status":201,"body":"{\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"54153a26-e96d-4b54-acab-08a1b6bb6027","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fea850a9-ab2c-4fee-89b8-e564df22e53a","name":"Download a file - default","request":{"urlPathTemplate":"/crm/files/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"fileUrl\": \"https://storage.googleapis.com/brevo-app-crm.......-sample.pdf\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fea850a9-ab2c-4fee-89b8-e564df22e53a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"38b72322-9ea0-47f2-b639-7d466c243b82","name":"Delete a file - default","request":{"urlPathTemplate":"/crm/files/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"38b72322-9ea0-47f2-b639-7d466c243b82","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1ee1505b-b76c-47f3-addc-8d237075f2a3","name":"Get file details - default","request":{"urlPathTemplate":"/crm/files/{id}/data","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"1ee1505b-b76c-47f3-addc-8d237075f2a3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"608a87de-9e4a-45e5-bb3a-e0683eb220b8","name":"Get all notes - default","request":{"urlPathTemplate":"/crm/notes","method":"GET"},"response":{"status":200,"body":"[\n {\n \"authorId\": {\n \"email\": \"johndoe@example.com\",\n \"id\": \"61a5ce58y5d4795761045991\",\n \"locale\": \"en_GB\",\n \"name\": {\n \"fullName\": \"John Doe\"\n },\n \"timezone\": \"Asia/Kolkata\"\n },\n \"contactIds\": [\n 247,\n 1,\n 2\n ],\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad09\",\n \"text\": \"In communication with client_dev for resolution of queries.\",\n \"updatedAt\": \"2017-05-01T17:05:03Z\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"608a87de-9e4a-45e5-bb3a-e0683eb220b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"0ceb328a-0b27-4d1d-8ba3-3abc8979d485","name":"Create a note - default","request":{"urlPathTemplate":"/crm/notes","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad09\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0ceb328a-0b27-4d1d-8ba3-3abc8979d485","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f9cf8ca7-3372-4b74-854e-93a3d45c5d56","name":"Get a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"authorId\": {\n \"email\": \"johndoe@example.com\",\n \"id\": \"61a5ce58y5d4795761045991\",\n \"locale\": \"en_GB\",\n \"name\": {\n \"fullName\": \"John Doe\"\n },\n \"timezone\": \"Asia/Kolkata\"\n },\n \"contactIds\": [\n 247,\n 1,\n 2\n ],\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad09\",\n \"text\": \"In communication with client_dev for resolution of queries.\",\n \"updatedAt\": \"2017-05-01T17:05:03Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f9cf8ca7-3372-4b74-854e-93a3d45c5d56","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b382d16e-0455-423c-9dd1-42efa255a495","name":"Delete a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b382d16e-0455-423c-9dd1-42efa255a495","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"458a7a9b-298d-44e2-a117-63db0c9047f0","name":"Update a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"458a7a9b-298d-44e2-a117-63db0c9047f0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ce9a81b3-1605-4c76-bf79-fc52ff6a2653","name":"Get all tasks - default","request":{"urlPathTemplate":"/crm/tasks","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"companiesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"contactsIds\": [\n 1,\n 2,\n 3\n ],\n \"dealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad06\",\n \"name\": \"Task: Connect with client_dev\",\n \"taskTypeId\": \"61a5cd07ca1347c82306ad09\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ce9a81b3-1605-4c76-bf79-fc52ff6a2653","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"60ee1139-00c5-4746-b240-523605d43bb4","name":"Create a task - default","request":{"urlPathTemplate":"/crm/tasks","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"60ee1139-00c5-4746-b240-523605d43bb4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"909b9f4c-1f5b-4271-82fe-a4e4847db6c7","name":"Get a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"companiesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"contactsIds\": [\n 1,\n 2,\n 3\n ],\n \"dealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad06\",\n \"name\": \"Task: Connect with client_dev\",\n \"taskTypeId\": \"61a5cd07ca1347c82306ad09\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"909b9f4c-1f5b-4271-82fe-a4e4847db6c7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"040ca6a6-b7b7-4cfd-95b2-a493ccc1691e","name":"Delete a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"040ca6a6-b7b7-4cfd-95b2-a493ccc1691e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"90199d04-c868-46bf-8e40-5e330c257e75","name":"Update a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"90199d04-c868-46bf-8e40-5e330c257e75","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"667b0721-7004-49d8-9017-b6d086394c2f","name":"Get all task types - default","request":{"urlPathTemplate":"/crm/tasktypes","method":"GET"},"response":{"status":200,"body":"{\n \"id\": \"61a88a2eb7a574180261234\",\n \"title\": \"Email\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"667b0721-7004-49d8-9017-b6d086394c2f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"22a7a09a-6fad-41dd-aed4-b8806c57a34a","name":"Send a WhatsApp message - default","request":{"urlPathTemplate":"/whatsapp/sendMessage","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"22a7a09a-6fad-41dd-aed4-b8806c57a34a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fab3ac15-a813-4c2f-9673-e64845544c00","name":"Get all your WhatsApp activity (unaggregated events) - default","request":{"urlPathTemplate":"/whatsapp/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"sent\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"error\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"error reason\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"soft-bounce\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"invalid whatsapp contact\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"body only in case of text reply & url will be empty\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"reply\",\n \"mediaUrl\": \"media url only in case media reply & body will be empty\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"senderNumber\": \"senderNumber\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"fab3ac15-a813-4c2f-9673-e64845544c00","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"28f43c06-69ca-463d-ad60-4a71c61a0440","name":"Get the list of blocked or unsubscribed transactional contacts - default","request":{"urlPathTemplate":"/smtp/blockedContacts","method":"GET"},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"blockedAt\": \"2017-05-01T12:30:00Z\",\n \"email\": \"abc@xyz.com\",\n \"reason\": {\n \"code\": \"adminBlocked\",\n \"message\": \"Admin blocked\"\n },\n \"senderEmail\": \"ez312@gmal.com\"\n }\n ],\n \"count\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"28f43c06-69ca-463d-ad60-4a71c61a0440","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e81c8495-0ef3-44b1-a9ce-45cc2bef7798","name":"Unblock or resubscribe a transactional contact - default","request":{"urlPathTemplate":"/smtp/blockedContacts/{email}","method":"DELETE","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e81c8495-0ef3-44b1-a9ce-45cc2bef7798","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0aab435d-618c-452b-8545-7c35e9088c78","name":"Get the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains","method":"GET"},"response":{"status":200,"body":"{\n \"domains\": [\n \"example.com\",\n \"testdomain.com\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0aab435d-618c-452b-8545-7c35e9088c78","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"350fd1cc-de1c-4197-ae49-46ce6a1d6c03","name":"Add a new domain to the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"350fd1cc-de1c-4197-ae49-46ce6a1d6c03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f5e28407-a9c3-4231-b722-a6b8bbd8af4a","name":"Unblock an existing domain from the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains/{domain}","method":"DELETE","pathParameters":{"domain":{"equalTo":"domain"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f5e28407-a9c3-4231-b722-a6b8bbd8af4a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d0e027cd-c123-40e7-9aad-30cdce7cf01d","name":"Delete hardbounces - default","request":{"urlPathTemplate":"/smtp/deleteHardbounces","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"d0e027cd-c123-40e7-9aad-30cdce7cf01d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4682dc2f-8d22-401b-bb70-9d7939f0b7f7","name":"Send a transactional email - default","request":{"urlPathTemplate":"/smtp/email","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": \"<201798300811.5787683@relay.domain.com>\",\n \"messageIds\": [\n \"messageIds\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"4682dc2f-8d22-401b-bb70-9d7939f0b7f7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5b6bfccd-a5f9-44e8-ab53-d5429f8f9e49","name":"Delete scheduled emails by batchId or messageId - default","request":{"urlPathTemplate":"/smtp/email/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"4320f270-a4e3-4a2e-b591-edfe30a5e627"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"5b6bfccd-a5f9-44e8-ab53-d5429f8f9e49","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7b3f5d29-5b44-4d25-ba1b-9b35d7e1bb44","name":"Fetch scheduled emails by batchId or messageId - default","request":{"urlPathTemplate":"/smtp/emailStatus/{identifier}","method":"GET","pathParameters":{"identifier":{"equalTo":"4320f270-a4e3-4a2e-b591-edfe30a5e627"}}},"response":{"status":200,"body":"{\n \"batches\": [\n {\n \"createdAt\": \"2022-02-26T11:36:43Z\",\n \"scheduledAt\": \"2022-02-28T11:36:43Z\",\n \"status\": \"queued\"\n },\n {\n \"createdAt\": \"2022-02-24T11:36:43Z\",\n \"scheduledAt\": \"2022-02-25T11:36:43Z\",\n \"status\": \"processed\"\n },\n {\n \"createdAt\": \"2022-02-25T11:36:43Z\",\n \"scheduledAt\": \"2022-02-26T11:36:43Z\",\n \"status\": \"inProgress\"\n }\n ],\n \"count\": 3\n}","headers":{"Content-Type":"application/json"}},"uuid":"7b3f5d29-5b44-4d25-ba1b-9b35d7e1bb44","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"59d3278a-2ea0-47c9-9d55-a4046d1b1377","name":"Get the list of transactional emails on the basis of allowed filters - default","request":{"urlPathTemplate":"/smtp/emails","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 120,\n \"transactionalEmails\": [\n {\n \"date\": \"2019-05-25T11:53:26Z\",\n \"email\": \"abc@xyz.com\",\n \"from\": \"diana.doe@example.com\",\n \"messageId\": \"<201798300811.5787683@relay.domain.com>\",\n \"subject\": \"summer camp\",\n \"tags\": [\n \"tag1\"\n ],\n \"templateId\": 15,\n \"uuid\": \"5a78c-209ok98262910-std2341\"\n },\n {\n \"date\": \"2019-05-25T07:28:11Z\",\n \"email\": \"test@test.com\",\n \"from\": \"diana.doe@example.com\",\n \"messageId\": \"<201798300811.5700093@relay.domain.com>\",\n \"subject\": \"details verification\",\n \"tags\": [\n \"tag1\"\n ],\n \"templateId\": 15,\n \"uuid\": \"5a78c-209ok98262910-s99a341\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"59d3278a-2ea0-47c9-9d55-a4046d1b1377","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"242bc913-9644-453e-a76b-b6898985c451","name":"Get the personalized content of a sent transactional email - default","request":{"urlPathTemplate":"/smtp/emails/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"uuid"}}},"response":{"status":200,"body":"{\n \"attachmentCount\": 2,\n \"body\": \" Greetings from the team
This is the actual html content sent
\",\n \"date\": \"2016-02-25T11:53:26Z\",\n \"email\": \"abc@example.com\",\n \"events\": [\n {\n \"name\": \"sent\",\n \"time\": \"2016-02-25T11:53:26Z\"\n },\n {\n \"name\": \"delivered\",\n \"time\": \"2016-02-25T11:55:26Z\"\n },\n {\n \"name\": \"opened\",\n \"time\": \"2016-02-26T09:53:26Z\"\n }\n ],\n \"subject\": \"Summer Camps\",\n \"templateId\": 12\n}","headers":{"Content-Type":"application/json"}},"uuid":"242bc913-9644-453e-a76b-b6898985c451","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1060a95a-b193-4fcb-a2c0-82a02a746067","name":"Delete an SMTP transactional log - default","request":{"urlPathTemplate":"/smtp/log/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"1060a95a-b193-4fcb-a2c0-82a02a746067","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4506e73c-7b47-483f-9ffc-09cb13f3d99a","name":"Get your transactional email activity aggregated over a period of time - default","request":{"urlPathTemplate":"/smtp/statistics/aggregatedReport","method":"GET"},"response":{"status":200,"body":"{\n \"blocked\": 2,\n \"clicks\": 9987,\n \"delivered\": 18996,\n \"hardBounces\": 234,\n \"invalid\": 0,\n \"opens\": 17654,\n \"range\": \"2016-09-08|2017-04-28\",\n \"requests\": 19887,\n \"softBounces\": 1533,\n \"spamReports\": 1,\n \"uniqueClicks\": 8766,\n \"uniqueOpens\": 13688,\n \"unsubscribed\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"4506e73c-7b47-483f-9ffc-09cb13f3d99a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a81e1c33-f793-49d1-adb6-8083ca10de20","name":"Get all your transactional email activity (unaggregated events) - default","request":{"urlPathTemplate":"/smtp/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"event\": \"deferred\",\n \"from\": \"john@example.com\",\n \"ip\": \"165.87.3.15\",\n \"link\": \"https://www.someexamplelink.com\",\n \"messageId\": \"<201798300811.5787683@example.domain.com>\",\n \"reason\": \"Error connection timeout\",\n \"subject\": \"Sib client_dev test\",\n \"tag\": \"OrderConfirmation\",\n \"templateId\": 4\n },\n {\n \"date\": \"2017-03-13T16:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"event\": \"delivered\",\n \"from\": \"john@example.com\",\n \"ip\": \"165.87.3.15\",\n \"link\": \"https://www.someexamplelink.com\",\n \"messageId\": \"<201798300811.5787683@example.domain.com>\",\n \"reason\": \"Error connection timeout\",\n \"subject\": \"Sib client_dev test\",\n \"tag\": \"OrderConfirmation\",\n \"templateId\": 5\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a81e1c33-f793-49d1-adb6-8083ca10de20","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"0d36a3c1-9ba5-4da3-9f9a-5d81dcb8cbc6","name":"Get your transactional email activity aggregated per day - default","request":{"urlPathTemplate":"/smtp/statistics/reports","method":"GET"},"response":{"status":200,"body":"{\n \"reports\": [\n {\n \"blocked\": 519,\n \"clicks\": 1026,\n \"date\": \"2017-04-30\",\n \"delivered\": 10103,\n \"hardBounces\": 21,\n \"invalid\": 1,\n \"opens\": 5091,\n \"requests\": 10756,\n \"softBounces\": 137,\n \"spamReports\": 0,\n \"uniqueClicks\": 720,\n \"uniqueOpens\": 2318,\n \"unsubscribed\": 0\n },\n {\n \"blocked\": 920,\n \"clicks\": 1514,\n \"date\": \"2017-05-01\",\n \"delivered\": 17499,\n \"hardBounces\": 34,\n \"invalid\": 2,\n \"opens\": 10089,\n \"requests\": 18812,\n \"softBounces\": 254,\n \"spamReports\": 0,\n \"uniqueClicks\": 1090,\n \"uniqueOpens\": 4393,\n \"unsubscribed\": 3\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0d36a3c1-9ba5-4da3-9f9a-5d81dcb8cbc6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"81e1ac28-8b42-4ff7-a4f4-ad4a4fe0d149","name":"Generate the rendered preview of transactional template - default","request":{"urlPathTemplate":"/smtp/template/preview","method":"POST"},"response":{"status":200,"body":"{\n \"fromEmail\": \"fromEmail\",\n \"fromName\": \"fromName\",\n \"html\": \"html\",\n \"previewText\": \"previewText\",\n \"subject\": \"subject\",\n \"usedFeedNames\": [\n \"usedFeedNames\",\n \"usedFeedNames\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"81e1ac28-8b42-4ff7-a4f4-ad4a4fe0d149","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0e4d0a9a-9763-4d0b-92ab-7b1483ddd81b","name":"Get the list of email templates - default","request":{"urlPathTemplate":"/smtp/templates","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"templates\": [\n {\n \"createdAt\": \"2016-02-24T14:44:24Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 1\",\n \"id\": 5,\n \"isActive\": false,\n \"modifiedAt\": \"2016-02-24T15:37:11Z\",\n \"name\": \"ChristomasTimeTemplate\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Merry Christmas\",\n \"tag\": \"Festival\",\n \"testSent\": false,\n \"toField\": \"\"\n },\n {\n \"createdAt\": \"2016-02-25T11:53:26Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 2\",\n \"id\": 12,\n \"isActive\": true,\n \"modifiedAt\": \"2016-02-25T11:53:26Z\",\n \"name\": \"SummerSales2017Template\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Enjoy our summer Sales !\",\n \"tag\": \"Summer\",\n \"testSent\": false,\n \"toField\": \"\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0e4d0a9a-9763-4d0b-92ab-7b1483ddd81b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a7314e1c-958e-4335-9dd3-e65802b21168","name":"Create an email template - default","request":{"urlPathTemplate":"/smtp/templates","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"a7314e1c-958e-4335-9dd3-e65802b21168","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"845ecf0d-a02f-461d-908b-25fe3eab4ec9","name":"Returns the template information - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"GET","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2016-02-25T11:53:26Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 4\",\n \"id\": 33,\n \"isActive\": true,\n \"modifiedAt\": \"2016-02-25T11:53:26Z\",\n \"name\": \"OrderConfirmation\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Order Confirmation : Thanks for your Purchase !\",\n \"tag\": \"\",\n \"testSent\": false,\n \"toField\": \"\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"845ecf0d-a02f-461d-908b-25fe3eab4ec9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"65a53a30-7428-4b1a-b0a4-88869d5b8d78","name":"Update an email template - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"PUT","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"65a53a30-7428-4b1a-b0a4-88869d5b8d78","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ee12d2af-6eea-4dd3-b43d-ca1463b36b14","name":"Delete an inactive email template - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"DELETE","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ee12d2af-6eea-4dd3-b43d-ca1463b36b14","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"10979c60-afa4-4a94-a43e-5fc9613e22da","name":"Send a template to your test list - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}/sendTest","method":"POST","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"10979c60-afa4-4a94-a43e-5fc9613e22da","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"df5bc4e6-ca5e-4cd7-809c-269c0845b24d","name":"Send SMS message asynchronously to a mobile number - default","request":{"urlPathTemplate":"/transactionalSMS/send","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": 1511882900176220\n}","headers":{"Content-Type":"application/json"}},"uuid":"df5bc4e6-ca5e-4cd7-809c-269c0845b24d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"70d5f369-4f59-482d-a10b-be3e50b4a40a","name":"Send SMS message to a mobile number - default","request":{"urlPathTemplate":"/transactionalSMS/sms","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": 1511882900176220,\n \"reference\": \"ab1cde2fgh3i4jklmno\",\n \"remainingCredits\": 82.85,\n \"smsCount\": 2,\n \"usedCredits\": 0.7\n}","headers":{"Content-Type":"application/json"}},"uuid":"70d5f369-4f59-482d-a10b-be3e50b4a40a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"31feec95-40fc-4b7e-9c08-86c997f2dfb0","name":"Get your SMS activity aggregated over a period of time - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/aggregatedReport","method":"GET"},"response":{"status":200,"body":"{\n \"accepted\": 6,\n \"blocked\": 4,\n \"delivered\": 16,\n \"hardBounces\": 5,\n \"range\": \"2015-05-22|2017-11-29\",\n \"rejected\": 14,\n \"replied\": 8,\n \"requests\": 54,\n \"skipped\": 1,\n \"softBounces\": 26,\n \"unsubscribed\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"31feec95-40fc-4b7e-9c08-86c997f2dfb0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8bec6502-a4a6-4405-88f8-c7b97f2bc0e4","name":"Get all your SMS activity (unaggregated events) - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2015-05-20T12:30:00Z\",\n \"event\": \"sent\",\n \"messageId\": \"1473139351170140\",\n \"phoneNumber\": \"phoneNumber\",\n \"reason\": \"Recipient is currently unreachable\",\n \"reply\": \"reply\",\n \"tag\": \"cabWaiting\"\n },\n {\n \"date\": \"2015-05-20T16:30:00Z\",\n \"event\": \"delivered\",\n \"messageId\": \"1473139351170140\",\n \"phoneNumber\": \"phoneNumber\",\n \"reason\": \"Recipient is currently unreachable\",\n \"reply\": \"reply\",\n \"tag\": \"cabRequest\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"8bec6502-a4a6-4405-88f8-c7b97f2bc0e4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"34ebfec8-ca13-4071-9f58-e116c00c6446","name":"Get your SMS activity aggregated per day - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/reports","method":"GET"},"response":{"status":200,"body":"{\n \"reports\": [\n {\n \"accepted\": 2318,\n \"blocked\": 1026,\n \"date\": \"2017-04-30\",\n \"delivered\": 10103,\n \"hardBounces\": 21,\n \"rejected\": 0,\n \"replied\": 5091,\n \"requests\": 10756,\n \"skipped\": 1,\n \"softBounces\": 137,\n \"unsubscribed\": 720\n },\n {\n \"accepted\": 4393,\n \"blocked\": 1514,\n \"date\": \"2017-05-01\",\n \"delivered\": 17499,\n \"hardBounces\": 34,\n \"rejected\": 0,\n \"replied\": 10089,\n \"requests\": 18812,\n \"skipped\": 0,\n \"softBounces\": 254,\n \"unsubscribed\": 1090\n },\n {\n \"accepted\": 4689,\n \"blocked\": 1646,\n \"date\": \"2017-05-02\",\n \"delivered\": 13427,\n \"hardBounces\": 16,\n \"rejected\": 0,\n \"replied\": 11563,\n \"requests\": 14321,\n \"skipped\": 1,\n \"softBounces\": 176,\n \"unsubscribed\": 1170\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"34ebfec8-ca13-4071-9f58-e116c00c6446","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"b2c77971-5a16-41bb-99c4-62a5707d47bb","name":"Return all your created SMS templates - default","request":{"urlPathTemplate":"/transactionalSMS/templates","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 1,\n \"templates\": [\n {\n \"id\": 4,\n \"name\": \"Order Confirmation - EN\",\n \"short_url_enabled\": false,\n \"message\": \"Thanks for your order !\",\n \"compliance\": {\n \"compliance_toggle\": true,\n \"organisation_prefix\": \"BREVO\",\n \"stop_keyword\": \"STOP\"\n },\n \"encryption\": true,\n \"unicode_sms\": true,\n \"media_file\": \"brv-logo.png\",\n \"media_file_size\": \"media_file_size\",\n \"media_url\": \"https://img-st2.mailinblue.com/1232/images/content_library/original/69282fe28f55fd22de6e0cf9.png\",\n \"createdAt\": \"2025-05-01T12:30:00Z\",\n \"updatedAt\": \"2025-05-01T12:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"b2c77971-5a16-41bb-99c4-62a5707d47bb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]}],"meta":{"total":279}}
\ No newline at end of file
+{"mappings":[{"id":"1211c905-93ae-4aa1-a220-5b0994166727","name":"Get account details - default","request":{"urlPathTemplate":"/account","method":"GET"},"response":{"status":200,"body":"{\n \"organization_id\": \"5fa2b8c123456789abcdef01\",\n \"user_id\": 1234567,\n \"enterprise\": false,\n \"companyName\": \"Acme Marketing Corp\",\n \"email\": \"michael.davis@example.com\",\n \"firstName\": \"Michael\",\n \"lastName\": \"Davis\",\n \"address\": {\n \"city\": \"New York\",\n \"country\": \"United States\",\n \"street\": \"456 Business Ave\",\n \"zipCode\": \"10001\"\n },\n \"dateTimePreferences\": {\n \"timezone\": \"America/New_York\",\n \"timeFormat\": \"12\",\n \"dateFormat\": \"mm-dd-yyyy\"\n },\n \"marketingAutomation\": {\n \"enabled\": true,\n \"key\": \"ma8k2x9v4h7p3d6f1c5e8b2a\"\n },\n \"plan\": [\n {\n \"credits\": 250,\n \"creditsType\": \"sendLimit\",\n \"endDate\": \"1753826567\",\n \"startDate\": \"1751234567\",\n \"type\": \"free\"\n },\n {\n \"credits\": 15,\n \"creditsType\": \"sendLimit\",\n \"endDate\": \"1753826567\",\n \"startDate\": \"1751234567\",\n \"type\": \"sms\"\n }\n ],\n \"planVerticals\": [\n {\n \"planCategory\": \"Marketing\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1751234567\",\n \"endDate\": \"1753826567\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n },\n {\n \"planCategory\": \"Chat\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1735678901\",\n \"endDate\": \"1767214901\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n },\n {\n \"planCategory\": \"CRM\",\n \"planType\": \"free\",\n \"name\": \"Free\",\n \"status\": \"active\",\n \"startDate\": \"1735678900\",\n \"endDate\": \"1767214900\",\n \"users\": {\n \"purchasedSeats\": \"1\",\n \"usedSeats\": \"1\"\n },\n \"credits\": \"250\"\n }\n ],\n \"relay\": {\n \"data\": {\n \"port\": 587,\n \"relay\": \"smtp-relay.brevo.com\",\n \"userName\": \"michael.davis@example.com\"\n },\n \"enabled\": true\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"1211c905-93ae-4aa1-a220-5b0994166727","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8875a0d0-f755-470c-bb61-f8ad06810a28","name":"getAccountActivity - default","request":{"urlPathTemplate":"/organization/activities","method":"GET"},"response":{"status":200,"body":"{\n \"logs\": [\n {\n \"action\": \"login-success\",\n \"date\": \"2023-03-16T16:49:23+05:30\",\n \"user_agent\": \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us)\",\n \"user_email\": \"test@mycompany.com\",\n \"user_ip\": \"192.158.1.34\"\n },\n {\n \"action\": \"update-profile\",\n \"date\": \"2023-03-15T16:49:23+05:30\",\n \"user_agent\": \"Mozilla/5.0 (iPad; U; CPU OS 3_2_1 like Mac OS X; en-us)\",\n \"user_email\": \"test@myexample.com\",\n \"user_ip\": \"192.158.1.38\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"8875a0d0-f755-470c-bb61-f8ad06810a28","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"22e8ec1f-e4ba-4f4b-996b-17fb7412b82b","name":"Create a new group of sub-accounts - default","request":{"urlPathTemplate":"/corporate/group","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"659xxxxxxxxxxxxxxxx6ef9c8\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"22e8ec1f-e4ba-4f4b-996b-17fb7412b82b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"553c0be2-9f70-4b5f-867b-1d2543c96f46","name":"Delete sub-account from group - default","request":{"urlPathTemplate":"/corporate/group/unlink/{groupId}/subAccounts","method":"PUT","pathParameters":{"groupId":{"equalTo":"groupId"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"553c0be2-9f70-4b5f-867b-1d2543c96f46","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"569cac67-bd04-4628-af18-b29f58c3426a","name":"GET a group details - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"group\": {\n \"createdAt\": \"2024-02-09T06:14:40+00:00\",\n \"groupName\": \"My group\",\n \"id\": \"5f926dba72a405440a4efc97\"\n },\n \"sub-accounts\": [\n {\n \"companyName\": \"My sub organization\",\n \"createdAt\": \"2024-02-09T06:14:40+00:00\",\n \"id\": 7866556\n },\n {\n \"companyName\": \"Your sub organization\",\n \"createdAt\": \"2024-01-05T03:11:40+00:00\",\n \"id\": 6563051\n }\n ],\n \"users\": [\n {\n \"email\": \"my-user@my-org.com\",\n \"firstName\": \"John\",\n \"lastName\": \"Smith\"\n },\n {\n \"email\": \"your-user@your-org.com\",\n \"firstName\": \"firstName\",\n \"lastName\": \"lastName\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"569cac67-bd04-4628-af18-b29f58c3426a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"15046c07-f5ad-4826-99a4-368a6abcc9d5","name":"Update a group of sub-accounts - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"15046c07-f5ad-4826-99a4-368a6abcc9d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"204960c9-0571-4a3d-a030-f9779c6aea08","name":"Delete a group - default","request":{"urlPathTemplate":"/corporate/group/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"204960c9-0571-4a3d-a030-f9779c6aea08","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d15212a9-7d53-42ef-996e-cbae118ba999","name":"Get the list of groups - default","request":{"urlPathTemplate":"/corporate/groups","method":"GET"},"response":{"status":200,"body":"[\n {\n \"groupName\": \"My group 1\",\n \"id\": \"d3b142c709d6ed67ef1cd903\"\n },\n {\n \"groupName\": \"My group 2\",\n \"id\": \"a5b192a709d6ed67ef8fd922\"\n },\n {\n \"groupName\": \"My group 3\",\n \"id\": \"bbb142c709d6ed67ef1cd910\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"d15212a9-7d53-42ef-996e-cbae118ba999","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"431c56cb-581f-459e-a434-b2378dfbb177","name":"Get the list of all admin users - default","request":{"urlPathTemplate":"/corporate/invited/users","method":"GET"},"response":{"status":200,"body":"{\n \"users\": [\n {\n \"email\": \"master-user2@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"download_data\",\n \"create_alerts\",\n \"my_looks\",\n \"explore_create\"\n ],\n \"api_keys\": [\n \"all\"\n ],\n \"apps_management\": [\n \"none\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"all\",\n \"all\"\n ],\n \"sub_organization_groups\": [\n \"create\",\n \"edit_delete\"\n ],\n \"user_management\": [\n \"none\"\n ]\n },\n \"groups\": {\n \"id\": \"a5c4f22c08d9ed37ef1ca342\",\n \"name\": \"My group\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n },\n {\n \"email\": \"master-user3@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"create_alerts\",\n \"my_looks\"\n ],\n \"api_keys\": [\n \"none\"\n ],\n \"apps_management\": [\n \"all\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"none\",\n \"none\"\n ],\n \"sub_organization_groups\": [\n \"edit_delete\"\n ],\n \"user_management\": [\n \"all\"\n ]\n },\n \"groups\": {\n \"id\": \"a5c4f22c08d9ed37ef1ca342\",\n \"name\": \"My group\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"431c56cb-581f-459e-a434-b2378dfbb177","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"47be7c71-5117-47ca-8146-e166b37fbd89","name":"List of all IPs - default","request":{"urlPathTemplate":"/corporate/ip","method":"GET"},"response":{"status":200,"body":"[\n {\n \"domain\": \"example.com\",\n \"ip\": \"192.168.1.1\",\n \"transactional\": true\n },\n {\n \"domain\": \"example.com\",\n \"ip\": \"192.168.1.2\",\n \"transactional\": false\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"47be7c71-5117-47ca-8146-e166b37fbd89","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c8f6e272-2e8b-4912-b109-ef644f37c748","name":"Get the details of requested master account - default","request":{"urlPathTemplate":"/corporate/masterAccount","method":"GET"},"response":{"status":200,"body":"{\n \"billingInfo\": {\n \"address\": {\n \"countryCode\": \"IN\",\n \"locality\": \"Pandav Nagar, New Delhi\",\n \"postalCode\": \"560048\",\n \"stateCode\": \"UP\",\n \"streetAddress\": \"C-92\"\n },\n \"companyName\": \"Corp Sample 1-1\",\n \"email\": \"sample@example.com\",\n \"name\": {\n \"familyName\": \"Pandit\",\n \"givenName\": \"Uday\"\n }\n },\n \"companyName\": \"Corp Sample 1-1\",\n \"currencyCode\": \"INR\",\n \"email\": \"sample@example.com\",\n \"id\": 1003286,\n \"planInfo\": {\n \"currencyCode\": \"INR\",\n \"features\": [\n {\n \"name\": \"MULTI_USER\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 15\n },\n {\n \"name\": \"ADVANCED_REPORTING\",\n \"quantity\": 12,\n \"remaining\": 11,\n \"unitValue\": \"unitValue\",\n \"used\": 1\n },\n {\n \"name\": \"INBOX\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 10\n },\n {\n \"name\": \"LANDING_PAGE\",\n \"quantity\": 10,\n \"remaining\": 0,\n \"unitValue\": \"unitValue\",\n \"used\": 11\n },\n {\n \"name\": \"RECURRING_CREDITS\",\n \"quantity\": 500,\n \"remaining\": 499,\n \"unitValue\": \"unitValue\",\n \"used\": 1\n }\n ],\n \"nextBillingAt\": 1637739295,\n \"planPeriod\": \"month\",\n \"price\": 2100,\n \"subAccounts\": 15\n },\n \"timezone\": \"Europe/Paris\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c8f6e272-2e8b-4912-b109-ef644f37c748","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8fea4e4d-838b-4875-b315-9790bd457518","name":"Generate SSO token to access admin account - default","request":{"urlPathTemplate":"/corporate/ssoToken","method":"POST"},"response":{"status":200,"body":"{\n \"token\": \"5cadaxxxxxxxxxxxxxxxxxxxx5a179f85a0\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8fea4e4d-838b-4875-b315-9790bd457518","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"45b2935e-aecb-4ad4-8888-9a0e585bcd23","name":"Get the list of all the sub-accounts of the master account. - default","request":{"urlPathTemplate":"/corporate/subAccount","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 3,\n \"subAccounts\": [\n {\n \"active\": true,\n \"companyName\": \"Company1\",\n \"createdAt\": 1631523176,\n \"groups\": [\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a8\",\n \"name\": \"Group 1\"\n },\n {\n \"id\": \"4fbf3c3b1f56a02ac465b1a0\",\n \"name\": \"Group 2\"\n }\n ],\n \"id\": 4043629\n },\n {\n \"active\": true,\n \"companyName\": \"Company2\",\n \"createdAt\": 1629439311,\n \"groups\": [\n {}\n ],\n \"id\": 3984002\n },\n {\n \"active\": true,\n \"companyName\": \"Company3\",\n \"createdAt\": 1614713641,\n \"groups\": [\n {}\n ],\n \"id\": 3524191\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"45b2935e-aecb-4ad4-8888-9a0e585bcd23","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"27e8ff22-470d-462b-a9e2-6cd1c428b361","name":"Create a new sub-account under a master account. - default","request":{"urlPathTemplate":"/corporate/subAccount","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 4109344\n}","headers":{"Content-Type":"application/json"}},"uuid":"27e8ff22-470d-462b-a9e2-6cd1c428b361","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0b1c8ee5-ea29-4bb0-a233-53d0ff4d86fa","name":"Associate an IP to sub-accounts - default","request":{"urlPathTemplate":"/corporate/subAccount/ip/associate","method":"POST"},"response":{"status":201,"body":"{\n \"key\": \"value\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0b1c8ee5-ea29-4bb0-a233-53d0ff4d86fa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b9524079-a627-4ed4-8f2a-abb0390700aa","name":"Dissociate an IP to sub-accounts - default","request":{"urlPathTemplate":"/corporate/subAccount/ip/dissociate","method":"PUT"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b9524079-a627-4ed4-8f2a-abb0390700aa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"69800c09-607d-406d-8817-7c7c51ff5ae1","name":"Create an API key for a sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/key","method":"POST"},"response":{"status":201,"body":"{\n \"key\": \"xkeysib-21881axxxxxcc92e04-mIrexxxx7z\",\n \"status\": \"success\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"69800c09-607d-406d-8817-7c7c51ff5ae1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c6174a85-f3d7-4550-bc89-0e9814e58cfb","name":"Generate SSO token to access sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/ssoToken","method":"POST"},"response":{"status":200,"body":"{\n \"token\": \"5cadaxxxxxxxxxxxxxxxxxxxx5a179f85a0\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c6174a85-f3d7-4550-bc89-0e9814e58cfb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a2fc395f-9a4c-407e-bcf3-5eb067c54991","name":"Get sub-account details - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}","method":"GET","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"companyName\": \"API-Sub-26thOct21-4\",\n \"email\": \"uday+1@brevo.com\",\n \"groups\": [\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a7\",\n \"name\": \"Group 1\"\n },\n {\n \"id\": \"5f8f8c3b5f56a02d4433b3a8\",\n \"name\": \"Group 2\"\n }\n ],\n \"name\": \"Uday Pandit\",\n \"planInfo\": {\n \"credits\": {\n \"emails\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n },\n \"externalFeeds\": {\n \"quantity\": 1,\n \"remaining\": 1\n },\n \"sms\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n },\n \"whatsapp\": {\n \"quantity\": 100,\n \"remaining\": 50\n },\n \"wpSubscribers\": {\n \"quantity\": 2000,\n \"remaining\": 1955\n }\n },\n \"features\": {\n \"inbox\": {\n \"quantity\": 20,\n \"remaining\": 12\n },\n \"landingPage\": {\n \"quantity\": 25,\n \"remaining\": 14\n },\n \"salesUsers\": {\n \"quantity\": 30,\n \"remaining\": 14\n },\n \"users\": {\n \"quantity\": 30,\n \"remaining\": 14\n }\n },\n \"planType\": \"paid\"\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"a2fc395f-9a4c-407e-bcf3-5eb067c54991","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"574c16a0-400c-46fe-aea7-88b6b1a0b812","name":"Delete a sub-account - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"574c16a0-400c-46fe-aea7-88b6b1a0b812","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"769c18cf-d0ef-4284-83e9-bc297f635f71","name":"Enable/disable sub-account application(s) - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}/applications/toggle","method":"PUT","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"769c18cf-d0ef-4284-83e9-bc297f635f71","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"85c53397-13d2-43ec-986d-7d85858e7c8e","name":"Update sub-account plan - default","request":{"urlPathTemplate":"/corporate/subAccount/{id}/plan","method":"PUT","pathParameters":{"id":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"85c53397-13d2-43ec-986d-7d85858e7c8e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"41b0f555-e1b6-4e40-9e6a-17c8bd025f53","name":"Update sub-accounts plan - default","request":{"urlPathTemplate":"/corporate/subAccounts/plan","method":"PUT"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"41b0f555-e1b6-4e40-9e6a-17c8bd025f53","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2d522f1e-c89e-42da-b070-ffb9ff715ec2","name":"Send invitation to an admin user - default","request":{"urlPathTemplate":"/corporate/user/invitation/send","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"659xxxxxxxxxxxxxxxx6ef9c8\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"2d522f1e-c89e-42da-b070-ffb9ff715ec2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d9c935a4-0eec-4d97-9162-0ecfcc38abbb","name":"Resend / cancel admin user invitation - default","request":{"urlPathTemplate":"/corporate/user/invitation/{action}/{email}","method":"PUT","pathParameters":{"action":{"equalTo":"resend"},"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"message\": \"Invitation resent successfully\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d9c935a4-0eec-4d97-9162-0ecfcc38abbb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a6f000f1-1ae0-4b47-842f-edac9954cb1d","name":"Revoke an admin user - default","request":{"urlPathTemplate":"/corporate/user/revoke/{email}","method":"DELETE","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a6f000f1-1ae0-4b47-842f-edac9954cb1d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f295c79b-1b65-4112-8b0c-b6ce9d87d44f","name":"Check admin user permissions - default","request":{"urlPathTemplate":"/corporate/user/{email}/permissions","method":"GET","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"email\": \"invitedUser@company.com\",\n \"feature_access\": {\n \"analytics\": [\n \"download_data\",\n \"create_alerts\",\n \"my_looks\",\n \"explore_create\"\n ],\n \"api_keys\": [\n \"all\"\n ],\n \"apps_management\": [\n \"all\"\n ],\n \"create_sub_organizations\": [\n \"all\"\n ],\n \"manage_sub_organizations\": [\n \"all\"\n ],\n \"my_plan\": [\n \"all\",\n \"all\"\n ],\n \"sub_organization_groups\": [\n \"create\",\n \"edit_delete\"\n ],\n \"user_management\": [\n \"none\"\n ]\n },\n \"groups\": [\n {\n \"id\": \"6543ab3667ffbb00142e4486\",\n \"name\": \"Support\"\n },\n {\n \"id\": \"174bab366732bbce142e4412\",\n \"name\": \"Technical\"\n }\n ],\n \"status\": \"active\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f295c79b-1b65-4112-8b0c-b6ce9d87d44f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c29d9b3d-5506-4699-8d63-cb5be4b098e1","name":"Change admin user permissions - default","request":{"urlPathTemplate":"/corporate/user/{email}/permissions","method":"PUT","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c29d9b3d-5506-4699-8d63-cb5be4b098e1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5b756ab9-0c76-4ea0-86e3-2629a91ee517","name":"Get the list of all your users - default","request":{"urlPathTemplate":"/organization/invited/users","method":"GET"},"response":{"status":200,"body":"{\n \"users\": [\n {\n \"email\": \"owner@company.com\",\n \"feature_access\": {\n \"conversations\": \"owner\",\n \"crm\": \"owner\",\n \"marketing\": \"owner\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n },\n {\n \"email\": \"pendingInvitedUser@company.com\",\n \"feature_access\": {\n \"conversations\": \"none\",\n \"crm\": \"full\",\n \"marketing\": \"custom\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"pending\"\n },\n {\n \"email\": \"connectedInvitedUser@company.com\",\n \"feature_access\": {\n \"conversations\": \"full\",\n \"crm\": \"none\",\n \"marketing\": \"none\"\n },\n \"is_owner\": \"is_owner\",\n \"status\": \"active\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"5b756ab9-0c76-4ea0-86e3-2629a91ee517","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"027416a7-5144-402b-8e13-ff098d91ec53","name":"Revoke user permission - default","request":{"urlPathTemplate":"/organization/user/invitation/revoke/{email}","method":"PUT","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"027416a7-5144-402b-8e13-ff098d91ec53","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3380168e-886f-4ab1-9489-1f453e144d97","name":"Send invitation to user - default","request":{"urlPathTemplate":"/organization/user/invitation/send","method":"POST"},"response":{"status":200,"body":"{\n \"invoice_id\": \"invoice_id\",\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"3380168e-886f-4ab1-9489-1f453e144d97","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fda4aa42-d57d-4f82-8b2b-30f5d0abffa2","name":"Resend / Cancel invitation - default","request":{"urlPathTemplate":"/organization/user/invitation/{action}/{email}","method":"PUT","pathParameters":{"action":{"equalTo":"resend"},"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fda4aa42-d57d-4f82-8b2b-30f5d0abffa2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e3763191-26a9-488e-9abf-c8b9ca82c709","name":"Update permission for a user - default","request":{"urlPathTemplate":"/organization/user/update/permissions","method":"POST"},"response":{"status":200,"body":"{\n \"credit_notes\": [\n \"TEST-123\"\n ],\n \"invoice_id\": \"invoice_id\",\n \"status\": \"OK\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e3763191-26a9-488e-9abf-c8b9ca82c709","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8d0fdcb2-801b-46ec-98ff-ef29fa70f35d","name":"Check user permission - default","request":{"urlPathTemplate":"/organization/user/{email}/permissions","method":"GET","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"{\n \"email\": \"invitedUser@company.com\",\n \"privileges\": [\n {\n \"feature\": \"Email campaign\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Send / schedule / suspend\"\n ]\n },\n {\n \"feature\": \"Templates\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Activate / deactivate\"\n ]\n },\n {\n \"feature\": \"SMS campaign\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Send / schedule / suspend\"\n ]\n },\n {\n \"feature\": \"Facebook Ads\",\n \"permissions\": [\n \"Schedule / pause\"\n ]\n },\n {\n \"feature\": \"Landing pages\",\n \"permissions\": [\n \"All\"\n ]\n },\n {\n \"feature\": \"Workflows\",\n \"permissions\": [\n \"Create / edit / delete\",\n \"Activate / deactivate / Pause\"\n ]\n },\n {\n \"feature\": \"Contacts\",\n \"permissions\": [\n \"View\",\n \"Contact forms\"\n ]\n },\n {\n \"feature\": \"SMTP & API\",\n \"permissions\": [\n \"SMTP\",\n \"API Keys\",\n \"Authorized IPs\"\n ]\n },\n {\n \"feature\": \"User management\",\n \"permissions\": [\n \"None\"\n ]\n },\n {\n \"feature\": \"Sales Platform\",\n \"permissions\": [\n \"Create / edit / delete owned deals and tasks\",\n \"Manage deals and tasks from other users\",\n \"Reports\",\n \"Settings\"\n ]\n },\n {\n \"feature\": \"Conversations\",\n \"permissions\": [\n \"None\"\n ]\n },\n {\n \"feature\": \"Senders, Domains & Dedicated IPs\",\n \"permissions\": [\n \"Senders management\",\n \"Domains management\",\n \"Dedicated IPs management\"\n ]\n },\n {\n \"feature\": \"Push\",\n \"permissions\": [\n \"View\",\n \"Create / edit / delete\",\n \"Send\",\n \"Settings\"\n ]\n },\n {\n \"feature\": \"Companies\",\n \"permissions\": [\n \"Create / edit / delete owned companies\",\n \"Manage companies from other users\",\n \"Settings\"\n ]\n }\n ],\n \"status\": \"active\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8d0fdcb2-801b-46ec-98ff-ef29fa70f35d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ec86c15f-d950-46af-8cc4-d9670d01ec3e","name":"Get background processes - default","request":{"urlPathTemplate":"/processes","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 198,\n \"processes\": [\n {\n \"id\": 217,\n \"name\": \"IMPORTUSER\",\n \"status\": \"completed\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n },\n {\n \"id\": 213,\n \"name\": \"SEARCH_EXPORT_USERS\",\n \"status\": \"completed\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n },\n {\n \"id\": 212,\n \"name\": \"IMPORTUSER\",\n \"status\": \"queued\",\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:35:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ec86c15f-d950-46af-8cc4-d9670d01ec3e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5cd8a4a8-5754-4b87-aa94-fc464c24ad7a","name":"Get process details - default","request":{"urlPathTemplate":"/processes/{processId}","method":"GET","pathParameters":{"processId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 217,\n \"name\": \"IMPORTUSER\",\n \"status\": \"queued\",\n \"info\": {\n \"import\": {\n \"invalid_emails\": 2,\n \"duplicate_contact_id\": 0,\n \"duplicate_ext_id\": 1,\n \"duplicate_email_id\": 5,\n \"duplicate_phone_id\": 1,\n \"duplicate_whatsapp_id\": 1,\n \"duplicate_landline_number_id\": 1\n },\n \"export\": {\n \"total_records\": 1250,\n \"file_size\": 102400\n }\n },\n \"export_url\": \"https://s3.eu-west-1.amazonaws.com/api-export.example.com/upload/contacts_export.csv\",\n \"error\": \"Processing timeout exceeded after 30 minutes\",\n \"created_at\": \"2024-01-15T10:30:00Z\",\n \"completed_at\": \"2024-01-15T10:32:15Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"5cd8a4a8-5754-4b87-aa94-fc464c24ad7a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6ee5e306-247b-485b-9f81-14d36b3a0bda","name":"Get email senders - default","request":{"urlPathTemplate":"/senders","method":"GET"},"response":{"status":200,"body":"{\n \"senders\": [\n {\n \"active\": true,\n \"email\": \"support@example.com\",\n \"id\": 1,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Support Team\"\n },\n {\n \"active\": false,\n \"email\": \"hello@example.com\",\n \"id\": 3,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Customer Service\"\n },\n {\n \"active\": false,\n \"email\": \"marketing@testcompany.com\",\n \"id\": 5,\n \"ips\": [\n {\n \"domain\": \"example.com\",\n \"ip\": \"203.0.113.100\",\n \"weight\": 50\n }\n ],\n \"name\": \"Marketing Team\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"6ee5e306-247b-485b-9f81-14d36b3a0bda","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"04b1327d-3b58-45aa-a665-8f8430486eca","name":"Create email sender - default","request":{"urlPathTemplate":"/senders","method":"POST"},"response":{"status":201,"body":"{\n \"dkimError\": false,\n \"id\": 15,\n \"spfError\": false\n}","headers":{"Content-Type":"application/json"}},"uuid":"04b1327d-3b58-45aa-a665-8f8430486eca","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"17fe3a57-60da-42b1-a435-e4cf134d171e","name":"getIps - default","request":{"urlPathTemplate":"/senders/ips","method":"GET"},"response":{"status":200,"body":"{\n \"ips\": [\n {\n \"active\": true,\n \"domain\": \"mailing.enterprise.com\",\n \"id\": 3,\n \"ip\": \"192.168.1.100\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"17fe3a57-60da-42b1-a435-e4cf134d171e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a0fc45b1-4252-4d1d-a02e-f542df6bf33e","name":"updateSender - default","request":{"urlPathTemplate":"/senders/{senderId}","method":"PUT","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a0fc45b1-4252-4d1d-a02e-f542df6bf33e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f691a271-1b98-49eb-b4a0-124162e8a7d5","name":"deleteSender - default","request":{"urlPathTemplate":"/senders/{senderId}","method":"DELETE","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f691a271-1b98-49eb-b4a0-124162e8a7d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a90c739a-2ce1-4058-a434-60d316495970","name":"getIpsFromSender - default","request":{"urlPathTemplate":"/senders/{senderId}/ips","method":"GET","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"ips\": [\n {\n \"domain\": \"mailing.enterprise.com\",\n \"id\": 3,\n \"ip\": \"192.168.1.100\",\n \"weight\": 75\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a90c739a-2ce1-4058-a434-60d316495970","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"868b537b-a700-40e2-bc48-c51dfd0ef8ed","name":"validateSenderByOTP - default","request":{"urlPathTemplate":"/senders/{senderId}/validate","method":"PUT","pathParameters":{"senderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"868b537b-a700-40e2-bc48-c51dfd0ef8ed","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6efe0f37-1aad-44ee-a626-e10a2df32e40","name":"getDomains - default","request":{"urlPathTemplate":"/senders/domains","method":"GET"},"response":{"status":200,"body":"{\n \"domains\": [\n {\n \"id\": \"67e57b40130375f045064c45\",\n \"domain_name\": \"mycompany.com\",\n \"authenticated\": true,\n \"verified\": true,\n \"ip\": \"192.168.1.100\",\n \"provider\": \"Cloudflare\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-03-27T16:22:24Z\"\n }\n },\n {\n \"id\": \"67f778570dd65f97c70910ed\",\n \"domain_name\": \"newsletter.mycompany.com\",\n \"authenticated\": false,\n \"verified\": true,\n \"provider\": \"GoDaddy\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-04-10T07:50:47Z\"\n }\n },\n {\n \"id\": \"688cd306d8893504e50ea615\",\n \"domain_name\": \"test.example.com\",\n \"authenticated\": false,\n \"verified\": false,\n \"provider\": \"Other\",\n \"creator\": {\n \"id\": \"62e4fce597550d0b0177cb0c\",\n \"email\": \"admin@mycompany.com\",\n \"creationDate\": \"2025-08-01T14:45:26Z\"\n }\n }\n ],\n \"count\": 3,\n \"current_page\": 1,\n \"total_pages\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"6efe0f37-1aad-44ee-a626-e10a2df32e40","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"d932d31f-c588-47e7-8703-1fc734a1dffd","name":"createDomain - default","request":{"urlPathTemplate":"/senders/domains","method":"POST"},"response":{"status":200,"body":"{\n \"id\": 5,\n \"domain_name\": \"mycompany.com\",\n \"domain_provider\": \"Cloudflare\",\n \"message\": \"Domain added successfully. To authenticate it, add following DNS records\",\n \"dns_records\": {\n \"brevo_code\": {\n \"host_name\": \"@\",\n \"type\": \"TXT\",\n \"value\": \"brevo-code=abc123def456\",\n \"status\": false\n },\n \"dkim_record\": {\n \"host_name\": \"mail._domainkey\",\n \"type\": \"TXT\",\n \"value\": \"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GN...\",\n \"status\": false\n },\n \"dmarc_record\": {\n \"host_name\": \"_dmarc\",\n \"type\": \"TXT\",\n \"value\": \"v=DMARC1; p=none; rua=mailto:dmarc@mycompany.com\",\n \"status\": false\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"d932d31f-c588-47e7-8703-1fc734a1dffd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"184d536e-335a-4ef0-8445-30b9081f5725","name":"getDomainConfiguration - default","request":{"urlPathTemplate":"/senders/domains/{domainName}","method":"GET","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"{\n \"domain\": \"mycompany.com\",\n \"verified\": true,\n \"authenticated\": true,\n \"dns_records\": {\n \"brevo_code\": {\n \"host_name\": \"@\",\n \"type\": \"TXT\",\n \"value\": \"brevo-code=abc123def456\",\n \"status\": true\n },\n \"dkim_record\": {\n \"host_name\": \"mail._domainkey\",\n \"type\": \"TXT\",\n \"value\": \"v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GN...\",\n \"status\": true\n },\n \"dmarc_record\": {\n \"host_name\": \"_dmarc\",\n \"type\": \"TXT\",\n \"value\": \"v=DMARC1; p=quarantine; rua=mailto:dmarc@mycompany.com\",\n \"status\": true\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"184d536e-335a-4ef0-8445-30b9081f5725","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"85cfda0d-d298-48b3-8a8f-fcdc75ac72c2","name":"deleteDomain - default","request":{"urlPathTemplate":"/senders/domains/{domainName}","method":"DELETE","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"85cfda0d-d298-48b3-8a8f-fcdc75ac72c2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9028b6d6-1ed0-4272-bf1a-30fca4d35a1b","name":"authenticateDomain - default","request":{"urlPathTemplate":"/senders/domains/{domainName}/authenticate","method":"PUT","pathParameters":{"domainName":{"equalTo":"domainName"}}},"response":{"status":200,"body":"{\n \"domain_name\": \"mycompany.com\",\n \"message\": \"Domain has been authenticated successfully.\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"9028b6d6-1ed0-4272-bf1a-30fca4d35a1b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"71fd7de8-a010-43ca-bce7-8d0788df718a","name":"getWebhooks - default","request":{"urlPathTemplate":"/webhooks","method":"GET"},"response":{"status":200,"body":"{\n \"webhooks\": [\n {\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"email\",\n \"createdAt\": \"2016-07-18T12:30:09Z\",\n \"description\": \"Webhook triggered on campaign openings\",\n \"events\": [\n \"opened\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 9864,\n \"modifiedAt\": \"2016-07-18T16:00:50Z\",\n \"type\": \"transactional\",\n \"url\": \"https://example.domain.com/webhook/events/kzfxxxxxxxx0uyo1\"\n },\n {\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"sms\",\n \"createdAt\": \"2017-02-20T14:30:00Z\",\n \"description\": \"Webhook triggered on campaign hard bounces\",\n \"events\": [\n \"hardBounces\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 22770,\n \"modifiedAt\": \"2017-02-20T19:00:00Z\",\n \"type\": \"marketing\",\n \"url\": \"http://exmaple.domain.com/15kxxxxxn1\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"71fd7de8-a010-43ca-bce7-8d0788df718a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"657ec845-de7a-4389-887a-888df91d2433","name":"createWebhook - default","request":{"urlPathTemplate":"/webhooks","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"657ec845-de7a-4389-887a-888df91d2433","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0bf6e8dd-41ac-4605-b444-f39fff877649","name":"This endpoint will submit a request to get the history of webhooks in the\nCSV file. The link to download the CSV file will be sent to the webhook that\nwas provided in the notifyURL. - default","request":{"urlPathTemplate":"/webhooks/export","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"0bf6e8dd-41ac-4605-b444-f39fff877649","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"adc43c28-964b-4170-aee2-5bb24add0d04","name":"getWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"GET","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"auth\": {\n \"token\": \"test-auth-token1234\",\n \"type\": \"bearer\"\n },\n \"batched\": true,\n \"channel\": \"sms\",\n \"createdAt\": \"2016-06-07T09:10:10Z\",\n \"description\": \"Webhook triggered on campaign openings and addition of lists\",\n \"events\": [\n \"listAdditions\",\n \"opened\"\n ],\n \"headers\": [\n {\n \"key\": \"cf-secret\",\n \"value\": \"test-header-value\"\n }\n ],\n \"id\": 7287,\n \"modifiedAt\": \"2016-06-08T11:30:00Z\",\n \"type\": \"marketing\",\n \"url\": \"http://example.domain.com/1brxxxxxx5p1\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"adc43c28-964b-4170-aee2-5bb24add0d04","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ffcb1664-4c31-4340-a525-2b616cf4334c","name":"updateWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"PUT","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ffcb1664-4c31-4340-a525-2b616cf4334c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"be23bfc5-4a58-4cb4-8191-aee4cb8f244f","name":"deleteWebhook - default","request":{"urlPathTemplate":"/webhooks/{webhookId}","method":"DELETE","pathParameters":{"webhookId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"be23bfc5-4a58-4cb4-8191-aee4cb8f244f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2a8a03cd-cea2-4501-94e0-c2dccdd68f00","name":"Get all external feeds - default","request":{"urlPathTemplate":"/feeds","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 18,\n \"feeds\": [\n {\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\",\n \"name\": \"Product Catalog Feed\",\n \"alias\": \"product_catalog_feed\",\n \"url\": \"https://api.example.com/products\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": false,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-18T13:29:27Z\",\n \"modifiedAt\": \"2025-09-18T13:29:27Z\"\n },\n {\n \"id\": \"c2d3e4f5-a6b7-48c9-90d1-e2f3a4b5c6d7\",\n \"name\": \"Blog News Feed\",\n \"alias\": \"blog_news_feed\",\n \"url\": \"https://blog.example.com/api/posts\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": true,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-17T16:03:25Z\",\n \"modifiedAt\": \"2025-09-17T16:03:25Z\"\n },\n {\n \"id\": \"d3e4f5a6-b7c8-49d0-91e2-f3a4b5c6d7e8\",\n \"name\": \"Public Data Feed\",\n \"alias\": \"public_data_feed\",\n \"url\": \"https://jsonplaceholder.typicode.com/posts\",\n \"authType\": \"noAuth\",\n \"username\": \"apiuser\",\n \"password\": \"apipass\",\n \"token\": \"abc123token456\",\n \"maxRetries\": 3,\n \"cache\": true,\n \"isInternal\": true,\n \"headers\": [\n {\n \"name\": \"Authorization\",\n \"value\": \"Bearer xyz789\"\n }\n ],\n \"createdAt\": \"2025-09-05T09:06:42Z\",\n \"modifiedAt\": \"2025-09-05T09:06:42Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"2a8a03cd-cea2-4501-94e0-c2dccdd68f00","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"6feaee25-9e8b-4798-b9ee-ae7b3aad1442","name":"Create external feed - default","request":{"urlPathTemplate":"/feeds","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"6feaee25-9e8b-4798-b9ee-ae7b3aad1442","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2239ff35-3a80-42f1-b822-81e1d785db03","name":"Get external feed details - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"{\n \"id\": \"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6\",\n \"name\": \"Product Catalog Feed\",\n \"url\": \"https://api.example.com/products\",\n \"authType\": \"noAuth\",\n \"personalization\": false,\n \"defaultAttr\": \"\",\n \"defaultContact\": \"\",\n \"maxRetries\": 0,\n \"cache\": false,\n \"createdAt\": \"2025-09-18T13:29:27Z\",\n \"modifiedAt\": \"2025-09-18T13:29:27Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"2239ff35-3a80-42f1-b822-81e1d785db03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c1cb8e28-7845-4479-a233-737a81218df9","name":"Update external feed - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"PUT","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c1cb8e28-7845-4479-a233-737a81218df9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"63a2125b-2244-41b0-8f75-6e2eb3cfb682","name":"Delete external feed - default","request":{"urlPathTemplate":"/feeds/{uuid}","method":"DELETE","pathParameters":{"uuid":{"equalTo":"b1c2d3e4-f5a6-47b8-89c0-d1e2f3a4b5c6"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"63a2125b-2244-41b0-8f75-6e2eb3cfb682","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"03da01c2-0cff-47d2-996c-4317cabb22c4","name":"Create/Update object records in bulk - default","request":{"urlPathTemplate":"/objects/{object_type}/batch/upsert","method":"POST","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":202,"body":"{\n \"message\": \"Batch object records are being processed\",\n \"processId\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"03da01c2-0cff-47d2-996c-4317cabb22c4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"90e40ddc-ba7b-4979-8f3d-67bcfe9be80d","name":"Get the list of object records and total records count for an object. - default","request":{"urlPathTemplate":"/objects/{object_type}/records","method":"GET","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":200,"body":"{\n \"count\": 350,\n \"records\": [\n {\n \"associations\": [\n {\n \"object_type\": \"garage\",\n \"records\": [\n {\n \"identifiers\": {\n \"id\": 12345\n }\n }\n ]\n }\n ],\n \"attributes\": {\n \"color\": \"Black\",\n \"engine_type\": \"Hybrid\",\n \"make\": \"Toyoto\",\n \"model\": \"Corolla\",\n \"year\": 2020\n },\n \"createdAt\": \"2025-07-22T10:20:30Z\",\n \"identifiers\": {\n \"ext_id\": \"507f1f77bc\",\n \"id\": 16789\n },\n \"updatedAt\": \"2025-07-22T10:20:30Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"90e40ddc-ba7b-4979-8f3d-67bcfe9be80d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dc28fc32-e60d-4ec0-a256-912ae9ca2cbd","name":"Delete multiple object records (up to 1000) asynchronously - default","request":{"urlPathTemplate":"/objects/{object_type}/batch/delete","method":"POST","pathParameters":{"object_type":{"equalTo":"vehicle"}}},"response":{"status":202,"body":"{\n \"processId\": 21,\n \"message\": \"Batch object records are being processed for deletion.\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"dc28fc32-e60d-4ec0-a256-912ae9ca2cbd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8729f948-4808-4d8f-b027-70b35a734218","name":"Get all the contacts - default","request":{"urlPathTemplate":"/contacts","method":"GET"},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"email\": \"contact1@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 247,\n \"listIds\": [\n 43,\n 58\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-01T17:05:03Z\",\n \"smsBlacklisted\": true\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"email\": \"33058407248@mailin-sms.com\",\n \"emailBlacklisted\": true,\n \"id\": 245,\n \"listIds\": [\n 43,\n 61,\n 58\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-01T17:05:03Z\",\n \"smsBlacklisted\": false\n }\n ],\n \"count\": 3\n}","headers":{"Content-Type":"application/json"}},"uuid":"8729f948-4808-4d8f-b027-70b35a734218","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"fe3c55db-75e2-4d78-85c0-eaed9f642c83","name":"Create a contact - default","request":{"urlPathTemplate":"/contacts","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"fe3c55db-75e2-4d78-85c0-eaed9f642c83","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dd0aa44d-f601-4c28-8481-1c0b25bb46aa","name":"List all attributes - default","request":{"urlPathTemplate":"/contacts/attributes","method":"GET"},"response":{"status":200,"body":"{\n \"attributes\": [\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"LASTNAME\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"FIRSTNAME\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"DOB\",\n \"type\": \"date\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"category\",\n \"enumeration\": [\n {\n \"label\": \"Men\",\n \"value\": 1\n },\n {\n \"label\": \"Women\",\n \"value\": 2\n },\n {\n \"label\": \"Kid\",\n \"value\": 3\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"GENDER\",\n \"type\": \"text\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\"\n ],\n \"name\": \"BDO\",\n \"type\": \"user\"\n },\n {\n \"calculatedValue\": \"COUNT[ORDER_ID,ORDER_DATE,==,NOW(-1)]\",\n \"category\": \"normal\",\n \"enumeration\": [\n {\n \"label\": \"Women\",\n \"value\": 1\n }\n ],\n \"multiCategoryOptions\": [\n \"USA\",\n \"India\",\n \"France\"\n ],\n \"name\": \"COUNTRY\",\n \"type\": \"multiple-choice\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"dd0aa44d-f601-4c28-8481-1c0b25bb46aa","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"1253fdcb-3d6c-4957-88ab-df297d7154ab","name":"Create contact attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"POST","pathParameters":{"attributeCategory":{"equalTo":"normal"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"1253fdcb-3d6c-4957-88ab-df297d7154ab","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f02e59a5-f5b5-400d-8697-22eace5165c5","name":"Update contact attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"PUT","pathParameters":{"attributeCategory":{"equalTo":"category"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f02e59a5-f5b5-400d-8697-22eace5165c5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eed9112c-42ea-4dba-a3c1-5bc5eea04b6a","name":"Delete an attribute - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeCategory}/{attributeName}","method":"DELETE","pathParameters":{"attributeCategory":{"equalTo":"normal"},"attributeName":{"equalTo":"attributeName"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eed9112c-42ea-4dba-a3c1-5bc5eea04b6a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"827de4b0-dfdc-45c9-a27a-819a6acaece3","name":"Delete a multiple-choice attribute option - default","request":{"urlPathTemplate":"/contacts/attributes/{attributeType}/{multipleChoiceAttribute}/{multipleChoiceAttributeOption}","method":"DELETE","pathParameters":{"attributeType":{"equalTo":"multiple-choice"},"multipleChoiceAttribute":{"equalTo":"multipleChoiceAttribute"},"multipleChoiceAttributeOption":{"equalTo":"multipleChoiceAttributeOption"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"827de4b0-dfdc-45c9-a27a-819a6acaece3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6ba8cd16-ea25-49a7-8288-e0cf22a8b065","name":"Update multiple contacts - default","request":{"urlPathTemplate":"/contacts/batch","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"6ba8cd16-ea25-49a7-8288-e0cf22a8b065","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2b7fdfe7-8f83-41bd-81d2-b42f70ff4603","name":"Create Contact via DOI (Double-Opt-In) Flow - default","request":{"urlPathTemplate":"/contacts/doubleOptinConfirmation","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"2b7fdfe7-8f83-41bd-81d2-b42f70ff4603","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1a2d075b-a8de-4135-b0c9-58bcfe31c7e4","name":"Export contacts - default","request":{"urlPathTemplate":"/contacts/export","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"1a2d075b-a8de-4135-b0c9-58bcfe31c7e4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c175e62d-23d7-4d5a-bc46-7093ac21de08","name":"Get all folders - default","request":{"urlPathTemplate":"/contacts/folders","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"folders\": [\n {\n \"id\": 42,\n \"name\": \"Ninja_Form\",\n \"totalBlacklisted\": 98,\n \"totalSubscribers\": 4567,\n \"uniqueSubscribers\": 4665\n },\n {\n \"id\": 29,\n \"name\": \"Prestashop\",\n \"totalBlacklisted\": 10,\n \"totalSubscribers\": 6543,\n \"uniqueSubscribers\": 6553\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"c175e62d-23d7-4d5a-bc46-7093ac21de08","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"40d55e83-c362-440b-9ad3-3cbb47ed0eb0","name":"Create a folder - default","request":{"urlPathTemplate":"/contacts/folders","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"40d55e83-c362-440b-9ad3-3cbb47ed0eb0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"64a96da1-15c5-426f-a455-f6ec46ff0434","name":"Returns a folder's details - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"GET","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 1,\n \"name\": \"Client_Folder\",\n \"totalBlacklisted\": 987,\n \"totalSubscribers\": 16778,\n \"uniqueSubscribers\": 17765\n}","headers":{"Content-Type":"application/json"}},"uuid":"64a96da1-15c5-426f-a455-f6ec46ff0434","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"701dc90d-1130-42e1-93d3-8ef73e8f8596","name":"Update a folder - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"PUT","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"701dc90d-1130-42e1-93d3-8ef73e8f8596","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a33a22a6-f7ae-41f1-9646-c37d999a9421","name":"Delete a folder (and all its lists) - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}","method":"DELETE","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a33a22a6-f7ae-41f1-9646-c37d999a9421","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1bbaf637-2edd-4ded-8338-3f42e8e93b45","name":"Get lists in a folder - default","request":{"urlPathTemplate":"/contacts/folders/{folderId}/lists","method":"GET","pathParameters":{"folderId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"count\": 3,\n \"lists\": [\n {\n \"id\": 46,\n \"name\": \"Reactiv\",\n \"totalBlacklisted\": 0,\n \"totalSubscribers\": 7655,\n \"uniqueSubscribers\": 7655\n },\n {\n \"id\": 41,\n \"name\": \"NY_Area\",\n \"totalBlacklisted\": 23,\n \"totalSubscribers\": 3654,\n \"uniqueSubscribers\": 3677\n },\n {\n \"id\": 22,\n \"name\": \"VIP_Customer\",\n \"totalBlacklisted\": 72,\n \"totalSubscribers\": 8753,\n \"uniqueSubscribers\": 8826\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"1bbaf637-2edd-4ded-8338-3f42e8e93b45","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c104d034-1156-452e-a1f5-90baae3a120e","name":"Import contacts - default","request":{"urlPathTemplate":"/contacts/import","method":"POST"},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"c104d034-1156-452e-a1f5-90baae3a120e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ede870d3-ebf8-4b09-851f-f8abb13c3b81","name":"Get all the lists - default","request":{"urlPathTemplate":"/contacts/lists","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"lists\": [\n {\n \"id\": 53,\n \"name\": \"Spanish_Speakers\",\n \"totalBlacklisted\": 65,\n \"totalSubscribers\": 5432,\n \"uniqueSubscribers\": 5497,\n \"folderId\": 1\n },\n {\n \"id\": 50,\n \"name\": \"Other\",\n \"totalBlacklisted\": 765,\n \"totalSubscribers\": 10976,\n \"uniqueSubscribers\": 11741,\n \"folderId\": 2\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ede870d3-ebf8-4b09-851f-f8abb13c3b81","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ecaaf193-0526-47f7-a447-6866f25d6a35","name":"Create a list - default","request":{"urlPathTemplate":"/contacts/lists","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"ecaaf193-0526-47f7-a447-6866f25d6a35","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d2bcf613-ab25-4a1d-acfc-f9189c9abdce","name":"Get a list's details - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"GET","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"id\": 12,\n \"name\": \"Newsletter_Weekly\",\n \"totalBlacklisted\": 63,\n \"totalSubscribers\": 6533,\n \"uniqueSubscribers\": 6596,\n \"campaignStats\": [\n {\n \"campaignId\": 15,\n \"stats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 789,\n \"complaints\": 0,\n \"deferred\": 0,\n \"delivered\": 6632,\n \"estimatedViews\": 560,\n \"hardBounces\": 4,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 6645,\n \"softBounces\": 34,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 701,\n \"uniqueViews\": 3442,\n \"unsubscriptions\": 4,\n \"viewed\": 4322\n }\n },\n {\n \"campaignId\": 45,\n \"stats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 788,\n \"complaints\": 1,\n \"deferred\": 0,\n \"delivered\": 4078,\n \"estimatedViews\": 560,\n \"hardBounces\": 2,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 4334,\n \"softBounces\": 18,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 654,\n \"uniqueViews\": 987,\n \"unsubscriptions\": 4,\n \"viewed\": 1555\n }\n }\n ],\n \"createdAt\": \"2016-02-26T11:56:08Z\",\n \"dynamicList\": false,\n \"folderId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"d2bcf613-ab25-4a1d-acfc-f9189c9abdce","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fd940864-d48a-47f4-8db8-5960a7657dcc","name":"Update a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"PUT","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fd940864-d48a-47f4-8db8-5960a7657dcc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f9aace2d-f1ee-48cf-9a00-2ce8a8e876de","name":"Delete a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}","method":"DELETE","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f9aace2d-f1ee-48cf-9a00-2ce8a8e876de","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1e736496-14de-4379-b319-5857e47950dc","name":"Get contacts in a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts","method":"GET","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"alex.pain@example.com\",\n \"emailBlacklisted\": false,\n \"id\": 45,\n \"listIds\": [\n 12,\n 9,\n 20\n ],\n \"listUnsubscribed\": [\n 1,\n 2\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": true\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 32,\n \"listIds\": [\n 12\n ],\n \"listUnsubscribed\": [\n 1\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": false\n },\n {\n \"attributes\": {},\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"email\": \"helen.rose@example.com\",\n \"emailBlacklisted\": true,\n \"id\": 65,\n \"listIds\": [\n 12,\n 9,\n 20\n ],\n \"listUnsubscribed\": [\n 1\n ],\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"smsBlacklisted\": false\n }\n ],\n \"count\": 17655\n}","headers":{"Content-Type":"application/json"}},"uuid":"1e736496-14de-4379-b319-5857e47950dc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f1dbcb2f-9c0d-4ccd-a750-28e2c2f9e6f9","name":"Add existing contacts to a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts/add","method":"POST","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":201,"body":"{\n \"contacts\": {\n \"failure\": [\n \"jeff32@example.com, jim56@example.com\"\n ],\n \"processId\": 78,\n \"success\": [\n \"success\"\n ],\n \"total\": 27\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"f1dbcb2f-9c0d-4ccd-a750-28e2c2f9e6f9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"36e0a4db-6281-4b17-bcbe-d10a330348a5","name":"Delete a contact from a list - default","request":{"urlPathTemplate":"/contacts/lists/{listId}/contacts/remove","method":"POST","pathParameters":{"listId":{"equalTo":"1000000"}}},"response":{"status":201,"body":"{\n \"contacts\": {\n \"failure\": [\n \"jeff32@example.com, jim56@example.com\"\n ],\n \"processId\": 78,\n \"success\": [\n \"success\"\n ],\n \"total\": 27\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"36e0a4db-6281-4b17-bcbe-d10a330348a5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dd30aa5c-59ad-4ff0-a95f-bf685d7b279e","name":"Get all the segments - default","request":{"urlPathTemplate":"/contacts/segments","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"segments\": [\n {\n \"categoryName\": \"Name1\",\n \"id\": 53,\n \"segmentName\": \"Segment1\",\n \"updatedAt\": \"2017-03-12T12:30:00Z\"\n },\n {\n \"categoryName\": \"Name2\",\n \"id\": 50,\n \"segmentName\": \"Segment2\",\n \"updatedAt\": \"2017-03-12T12:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"dd30aa5c-59ad-4ff0-a95f-bf685d7b279e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5a0e7075-a413-4c22-a2bf-aa2f8e383d6d","name":"Get a contact's details - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"GET","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"{\n \"attributes\": {},\n \"createdAt\": \"2017-05-02T16:40:31Z\",\n \"email\": \"peggy.rain@example.com\",\n \"emailBlacklisted\": false,\n \"id\": 42,\n \"listIds\": [\n 40\n ],\n \"listUnsubscribed\": [\n 1000000\n ],\n \"modifiedAt\": \"2017-05-02T16:40:31Z\",\n \"smsBlacklisted\": false,\n \"statistics\": {\n \"clicked\": [\n {\n \"campaignId\": 21,\n \"links\": [\n {\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:25:01Z\",\n \"ip\": \"66.249.93.118\",\n \"url\": \"https://url.domain.com/fbe5387ec717e333628380454f68670010b205ff/1/go?uid={EMAIL}&utm_source=brevo&utm_campaign=test_camp&utm_medium=email\"\n }\n ]\n }\n ],\n \"complaints\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"delivered\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T21:24:56Z\"\n }\n ],\n \"hardBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"messagesSent\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T20:15:13Z\"\n },\n {\n \"campaignId\": 42,\n \"eventTime\": \"2016-10-17T10:30:01Z\"\n }\n ],\n \"opened\": [\n {\n \"campaignId\": 21,\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:24:56Z\",\n \"ip\": \"66.249.93.118\"\n },\n {\n \"campaignId\": 68,\n \"count\": 1,\n \"eventTime\": \"2017-01-30T13:56:40Z\",\n \"ip\": \"66.249.93.217\"\n }\n ],\n \"softBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"transacAttributes\": [\n {}\n ],\n \"unsubscriptions\": {\n \"adminUnsubscription\": [\n {\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ],\n \"userUnsubscription\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ]\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"5a0e7075-a413-4c22-a2bf-aa2f8e383d6d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"75a6a0e6-ae00-42cb-82ae-0bbe1f8bd2d1","name":"Update a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"PUT","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"75a6a0e6-ae00-42cb-82ae-0bbe1f8bd2d1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fb8d40ed-00fd-4acc-88a7-32580773691f","name":"Delete a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fb8d40ed-00fd-4acc-88a7-32580773691f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9797e88c-e80c-4130-9605-8986d5de0403","name":"Get email campaigns' statistics for a contact - default","request":{"urlPathTemplate":"/contacts/{identifier}/campaignStats","method":"GET","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"{\n \"clicked\": [\n {\n \"campaignId\": 21,\n \"links\": [\n {\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:25:01Z\",\n \"ip\": \"66.249.93.118\",\n \"url\": \"https://url.domain.com/fbe5387ec717e333628380454f68670010b205ff/1/go?uid={EMAIL}&utm_source=brevo&utm_campaign=test_camp&utm_medium=email\"\n }\n ]\n }\n ],\n \"complaints\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"delivered\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T21:24:56Z\"\n }\n ],\n \"hardBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"messagesSent\": [\n {\n \"campaignId\": 21,\n \"eventTime\": \"2016-05-03T20:15:13Z\"\n },\n {\n \"campaignId\": 42,\n \"eventTime\": \"2016-10-17T10:30:01Z\"\n },\n {\n \"campaignId\": 45,\n \"eventTime\": \"2016-11-09T11:45:02Z\"\n }\n ],\n \"opened\": [\n {\n \"campaignId\": 21,\n \"count\": 2,\n \"eventTime\": \"2016-05-03T21:24:56Z\",\n \"ip\": \"66.249.93.118\"\n },\n {\n \"campaignId\": 45,\n \"count\": 1,\n \"eventTime\": \"2017-01-30T13:56:40Z\",\n \"ip\": \"66.249.93.217\"\n }\n ],\n \"softBounces\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\"\n }\n ],\n \"transacAttributes\": [\n {\n \"orderDate\": \"2017-03-12\",\n \"orderId\": 248,\n \"orderPrice\": 24.99\n }\n ],\n \"unsubscriptions\": {\n \"adminUnsubscription\": [\n {\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ],\n \"userUnsubscription\": [\n {\n \"campaignId\": 3,\n \"eventTime\": \"2017-03-12T20:15:13Z\",\n \"ip\": \"165.87.3.15\"\n }\n ]\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"9797e88c-e80c-4130-9605-8986d5de0403","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"989a2ce4-8788-48cc-963d-3d86cc2b2dd2","name":"Sets agentβs status to online for 2-3 minutes - default","request":{"urlPathTemplate":"/conversations/agentOnlinePing","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"989a2ce4-8788-48cc-963d-3d86cc2b2dd2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0b2458f6-3c0f-4f03-9f63-8051466d793b","name":"Send a message as an agent - default","request":{"urlPathTemplate":"/conversations/messages","method":"POST"},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0b2458f6-3c0f-4f03-9f63-8051466d793b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"73c7e27f-534f-4bff-ae89-6508af694971","name":"Get a message - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"73c7e27f-534f-4bff-ae89-6508af694971","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"92155bd1-c19b-4aad-99c9-8a69133fc185","name":"Update a message sent by an agent - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1482512803740,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Hello! How can I help you?\",\n \"id\": \"eYBEm3gq3zc5ayE2g\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": false,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Hello! How can I help you?\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"92155bd1-c19b-4aad-99c9-8a69133fc185","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"55448424-484f-42a8-b091-f8c24234f898","name":"Delete a message sent by an agent - default","request":{"urlPathTemplate":"/conversations/messages/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"55448424-484f-42a8-b091-f8c24234f898","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7da39f40-5660-4486-b572-835f3f204973","name":"Send an automated message to a visitor - default","request":{"urlPathTemplate":"/conversations/pushedMessages","method":"POST"},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"7da39f40-5660-4486-b572-835f3f204973","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"12a96082-f3dc-4674-b4a6-a2fc4b6aea92","name":"Get an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 3325 9667 4328 88\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"12a96082-f3dc-4674-b4a6-a2fc4b6aea92","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"88f6c974-0fa5-4c85-bd4a-2c306144fb5a","name":"Update an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"PUT","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"agentId\": \"d9nKoegKSjmCtyK78\",\n \"agentName\": \"Liz\",\n \"agentUserpic\": \"https://www.brevo.com/\",\n \"attachments\": [\n {\n \"fileName\": \"fileName\",\n \"inlineId\": \"inlineId\",\n \"isImage\": true,\n \"isInline\": \"isInline\",\n \"size\": 1000000,\n \"url\": \"url\"\n }\n ],\n \"bcc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"cc\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"createdAt\": 1470222622433,\n \"file\": {\n \"filename\": \"conversations.png\",\n \"imageInfo\": {\n \"height\": 525,\n \"previewUrl\": \"https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/\",\n \"width\": 1129\n },\n \"isImage\": true,\n \"size\": 15538,\n \"url\": \"https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/\"\n },\n \"forwardedToSourceStatus\": {\n \"error\": \"error\",\n \"isSuccess\": true\n },\n \"from\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"html\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 4668 7775 9233 54\",\n \"id\": \"AXCR3k9bpSY7bpuh7\",\n \"integrations\": {\n \"key\": \"value\"\n },\n \"isBot\": true,\n \"isMissed\": false,\n \"isMissedByVisitor\": false,\n \"isPushed\": true,\n \"isTrigger\": false,\n \"rawUnsafeHtml\": \"Good morning!
How can I help you?\",\n \"receivedFrom\": \"SuperAwesomeHelpdesk\",\n \"replyTo\": {\n \"email\": \"email\",\n \"name\": \"name\"\n },\n \"sourceMessageId\": \"sourceMessageId\",\n \"subject\": \"Invitation to a meeting\",\n \"text\": \"Your order has shipped! Hereβs your tracking number: 9114 5847 4668 7775 9233 54\",\n \"to\": [\n {\n \"email\": \"email\",\n \"name\": \"name\"\n }\n ],\n \"type\": \"agent\",\n \"visitorId\": \"kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"88f6c974-0fa5-4c85-bd4a-2c306144fb5a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a43cca1b-0cb5-4197-ad31-8ce0e455a7fe","name":"Delete an automated message - default","request":{"urlPathTemplate":"/conversations/pushedMessages/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a43cca1b-0cb5-4197-ad31-8ce0e455a7fe","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"27ddcd9f-5f2e-408f-a518-a4e395c047ee","name":"Set visitor group assignment - default","request":{"urlPathTemplate":"/conversations/visitorGroup","method":"PUT"},"response":{"status":200,"body":"{\n \"groupId\": \"PjRBMhWGen6aRHjif\",\n \"visitorId\": \"AXCR3k9bpSY7bpuh7\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"27ddcd9f-5f2e-408f-a518-a4e395c047ee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6e38c169-881b-465d-ae5b-201dfe4364a5","name":"Return all your categories - default","request":{"urlPathTemplate":"/categories","method":"GET"},"response":{"status":200,"body":"{\n \"categories\": [\n {\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"id\": \"C19\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2022-03-03T14:48:31.867Z\",\n \"name\": \"Food\",\n \"url\": \"http://mydomain.com/category/food\"\n },\n {\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"id\": \"C20\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2022-03-03T14:48:31.867Z\",\n \"name\": \"clothing\",\n \"url\": \"http://mydomain.com/category/clothing\"\n }\n ],\n \"count\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"6e38c169-881b-465d-ae5b-201dfe4364a5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c1c0c1db-676d-40e5-954f-ce7abd8fa780","name":"Create/Update a category - default","request":{"urlPathTemplate":"/categories","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"c1c0c1db-676d-40e5-954f-ce7abd8fa780","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3355346d-e446-4635-9316-d9de9c0c8459","name":"Create categories in batch - default","request":{"urlPathTemplate":"/categories/batch","method":"POST"},"response":{"status":201,"body":"{\n \"createdCount\": 2,\n \"updatedCount\": 7\n}","headers":{"Content-Type":"application/json"}},"uuid":"3355346d-e446-4635-9316-d9de9c0c8459","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e9a3bc64-c4fb-42bc-a44c-51ff0565f57d","name":"Get a category details - default","request":{"urlPathTemplate":"/categories/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"id\": \"C11\",\n \"isDeleted\": true,\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"name\": \"Electronics\",\n \"url\": \"http://mydomain.com/category/clothing\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e9a3bc64-c4fb-42bc-a44c-51ff0565f57d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4aa9f4f1-3b05-446e-a5c8-175ce020f7dd","name":"Activate the eCommerce app - default","request":{"urlPathTemplate":"/ecommerce/activate","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"4aa9f4f1-3b05-446e-a5c8-175ce020f7dd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ef76fef3-dd84-4cf8-9fa5-ff136eea6618","name":"Get attribution metrics for one or more Brevo campaigns or workflows - default","request":{"urlPathTemplate":"/ecommerce/attribution/metrics","method":"GET"},"response":{"status":200,"body":"{\n \"results\": [\n {\n \"averageBasket\": 3,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 300,\n \"revenue\": 900\n },\n {\n \"averageBasket\": 4,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 200,\n \"revenue\": 800\n }\n ],\n \"totals\": {\n \"averageBasket\": 3.4,\n \"ordersCount\": 500,\n \"revenue\": 1700\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"ef76fef3-dd84-4cf8-9fa5-ff136eea6618","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a673ac7e-f9a7-4c21-bd80-b49ff3c73efc","name":"Get detailed attribution metrics for a single Brevo campaign or workflow - default","request":{"urlPathTemplate":"/ecommerce/attribution/metrics/{conversionSource}/{conversionSourceId}","method":"GET","pathParameters":{"conversionSource":{"equalTo":"email_campaign"},"conversionSourceId":{"equalTo":"sale"}}},"response":{"status":200,"body":"{\n \"averageBasket\": 1.1,\n \"conversionSource\": \"email_campaign\",\n \"id\": 1.1,\n \"ordersCount\": 1.1,\n \"revenue\": 1.1,\n \"newCustomersCount\": 1.1\n}","headers":{"Content-Type":"application/json"}},"uuid":"a673ac7e-f9a7-4c21-bd80-b49ff3c73efc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d80e42ab-4376-47f6-9971-baead08cd9ec","name":"Get attributed product sales for a single Brevo campaign or workflow - default","request":{"urlPathTemplate":"/ecommerce/attribution/products/{conversionSource}/{conversionSourceId}","method":"GET","pathParameters":{"conversionSource":{"equalTo":"email_campaign"},"conversionSourceId":{"equalTo":"sale"}}},"response":{"status":200,"body":"{\n \"products\": [\n {\n \"id\": \"1\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"name\": \"Milky Way Galaxy\",\n \"ordersCount\": 200,\n \"price\": 1000,\n \"revenue\": 999.99,\n \"sku\": \"sku-1\",\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d80e42ab-4376-47f6-9971-baead08cd9ec","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ab816e77-ae78-42da-b0ac-c9e2a426dd38","name":"Get the ISO 4217 compliant display currency code for your Brevo account - default","request":{"urlPathTemplate":"/ecommerce/config/displayCurrency","method":"GET"},"response":{"status":200,"body":"{\n \"code\": \"EUR\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"ab816e77-ae78-42da-b0ac-c9e2a426dd38","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c8c71b7b-bc9d-4d4f-83d0-1d4a57463596","name":"Set the ISO 4217 compliant display currency code for your Brevo account - default","request":{"urlPathTemplate":"/ecommerce/config/displayCurrency","method":"POST"},"response":{"status":200,"body":"{\n \"code\": \"EUR\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c8c71b7b-bc9d-4d4f-83d0-1d4a57463596","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a36a1140-3b78-405a-bb99-4be25b0e6f61","name":"Get order details - default","request":{"urlPathTemplate":"/orders","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 1,\n \"orders\": [\n {\n \"amount\": 2000,\n \"billing\": {\n \"address\": \"Sec 62, Noida\",\n \"city\": \"Noida\",\n \"country\": \"India\",\n \"countryCode\": \"IN\",\n \"paymentMethod\": \"Net banking\",\n \"phone\": 9238283982,\n \"postCode\": 110001,\n \"region\": \"North India\"\n },\n \"contact_id\": 2,\n \"coupons\": [\n \"flat50\",\n \"flat40\"\n ],\n \"createdAt\": \"2021-12-31T11:42:35.638Z\",\n \"email\": \"testvisitor@sendinblue.com\",\n \"id\": \"order1803\",\n \"identifiers\": {\n \"ext_id\": \"ab12\",\n \"loyalty_subscription_id\": \"1234\"\n },\n \"products\": [\n {\n \"price\": 100,\n \"productId\": 21,\n \"quantity\": 2,\n \"quantityFloat\": 0,\n \"variantId\": \"P100\"\n },\n {\n \"price\": 100,\n \"productId\": 21,\n \"quantity\": 0,\n \"quantityFloat\": 2.52,\n \"variantId\": \"P15756\"\n }\n ],\n \"status\": \"complete\",\n \"storeId\": \"123\",\n \"updatedAt\": \"2022-03-03T14:48:31.867Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a36a1140-3b78-405a-bb99-4be25b0e6f61","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"7063107e-0ad5-4bbd-97ec-def7bdb05465","name":"Managing the status of the order - default","request":{"urlPathTemplate":"/orders/status","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"7063107e-0ad5-4bbd-97ec-def7bdb05465","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1d3a52e5-1eb4-4b21-9a58-9136f4d6cdda","name":"Create orders in batch - default","request":{"urlPathTemplate":"/orders/status/batch","method":"POST"},"response":{"status":202,"body":"{\n \"batchId\": 1.1,\n \"count\": 17655\n}","headers":{"Content-Type":"application/json"}},"uuid":"1d3a52e5-1eb4-4b21-9a58-9136f4d6cdda","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fd7eae8c-354e-4a43-8cea-0aa947291dea","name":"Return all your products - default","request":{"urlPathTemplate":"/products","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"products\": [\n {\n \"categories\": [\n \"279638835374\",\n \"279502848174\"\n ],\n \"createdAt\": \"2022-06-30T10:29:16.078Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2022-06-30T10:29:16.078Z\",\n \"name\": \"Alpina Panoma Classic\",\n \"parentId\": \"parentId\",\n \"price\": 49.95,\n \"s3Original\": \"https://img-ecom.mailinblue.com/path-to-original/img.jpg\",\n \"s3ThumbAnalytics\": \"https://img-ecom.mailinblue.com/path-to-analytics/img.jpg\",\n \"s3ThumbEditor\": \"https://img-ecom.mailinblue.com/path-to-editor/img.jpg\",\n \"sku\": \"186622-9\",\n \"stock\": 100,\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic\"\n },\n {\n \"categories\": [\n \"2d79638835374\",\n \"27d9502848174\"\n ],\n \"createdAt\": \"2022-06-30T10:29:16.078Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2022-06-30T10:29:16.078Z\",\n \"name\": \"Alpina Panoma Classic2\",\n \"parentId\": \"parentId\",\n \"price\": 49.95,\n \"s3Original\": \"https://img-ecom.mailinblue.com/path-to-original/img.jpg\",\n \"s3ThumbAnalytics\": \"https://img-ecom.mailinblue.com/path-to-analytics/img.jpg\",\n \"s3ThumbEditor\": \"https://img-ecom.mailinblue.com/path-to-editor/img.jpg\",\n \"sku\": \"186622-9\",\n \"stock\": 350,\n \"url\": \"https://mydomain.com/products/alpina-panoma-classic2\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"fd7eae8c-354e-4a43-8cea-0aa947291dea","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8a42981c-cdd8-404e-bdb0-edaac19b7e0c","name":"Create/Update a product - default","request":{"urlPathTemplate":"/products","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 21\n}","headers":{"Content-Type":"application/json"}},"uuid":"8a42981c-cdd8-404e-bdb0-edaac19b7e0c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5f2f0859-18a7-463c-bee7-4afb4ba092b0","name":"Create products in batch - default","request":{"urlPathTemplate":"/products/batch","method":"POST"},"response":{"status":201,"body":"{\n \"createdCount\": 2,\n \"updatedCount\": 7\n}","headers":{"Content-Type":"application/json"}},"uuid":"5f2f0859-18a7-463c-bee7-4afb4ba092b0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dcc8be20-9ebc-41b7-a9e0-2e9b9004756a","name":"Get a product's details - default","request":{"urlPathTemplate":"/products/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"categories\": [\n \"categories\"\n ],\n \"createdAt\": \"2017-05-12T12:30:00Z\",\n \"id\": \"P11\",\n \"imageUrl\": \"http://mydomain.com/product-absoulte-url/img.jpeg\",\n \"isDeleted\": true,\n \"metaInfo\": {\n \"brand\": \"addidas\",\n \"description\": \"Shoes for sports\"\n },\n \"modifiedAt\": \"2017-05-12T12:30:00Z\",\n \"name\": \"Iphone 11\",\n \"parentId\": \"parentId\",\n \"price\": 1.1,\n \"s3Original\": \"s3Original\",\n \"s3ThumbAnalytics\": \"s3ThumbAnalytics\",\n \"s3ThumbEditor\": \"s3ThumbEditor\",\n \"sku\": \"sku\",\n \"stock\": 100,\n \"url\": \"http://mydomain.com/product/electronics/product1\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"dcc8be20-9ebc-41b7-a9e0-2e9b9004756a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e82388ef-e4d4-4ac5-874c-2f802a602bed","name":"Create a product alert for a contact - default","request":{"urlPathTemplate":"/products/{id}/alerts/{type}","method":"POST","pathParameters":{"id":{"equalTo":"id"},"type":{"equalTo":"back_in_stock"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e82388ef-e4d4-4ac5-874c-2f802a602bed","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1afa5f6e-118c-4482-b744-5ef2a9799cf5","name":"Get all your coupon collections - default","request":{"urlPathTemplate":"/couponCollections","method":"GET"},"response":{"status":200,"body":"{\n \"createdAt\": \"2023-01-06T05:03:47Z\",\n \"defaultCoupon\": \"10 OFF\",\n \"expirationDate\": \"2024-01-01T00:00:00Z\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\",\n \"remainingCoupons\": 5000,\n \"remainingCouponsAlert\": 5,\n \"remainingDaysAlert\": 5,\n \"totalCoupons\": 10000\n}","headers":{"Content-Type":"application/json"}},"uuid":"1afa5f6e-118c-4482-b744-5ef2a9799cf5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e6cacd7a-7ba8-4b0a-822c-0d6971f40073","name":"Create Π° coupon collection - default","request":{"urlPathTemplate":"/couponCollections","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e6cacd7a-7ba8-4b0a-822c-0d6971f40073","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"dff4a2fb-73ac-479f-ab4c-2c9110fd1537","name":"Get a coupon collection by id - default","request":{"urlPathTemplate":"/couponCollections/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2023-01-06T05:03:47Z\",\n \"defaultCoupon\": \"10 OFF\",\n \"expirationDate\": \"2024-01-01T00:00:00Z\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\",\n \"remainingCoupons\": 5000,\n \"remainingCouponsAlert\": 5,\n \"remainingDaysAlert\": 5,\n \"totalCoupons\": 10000\n}","headers":{"Content-Type":"application/json"}},"uuid":"dff4a2fb-73ac-479f-ab4c-2c9110fd1537","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e28907c7-b011-4634-bb47-d32e210b128b","name":"Update a coupon collection by id - default","request":{"urlPathTemplate":"/couponCollections/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"defaultCoupon\": \"10 OFF\",\n \"id\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"name\": \"SummerPromotions\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e28907c7-b011-4634-bb47-d32e210b128b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eef10e8c-75d8-4adc-9fb0-8c2daeb31145","name":"Create coupons for a coupon collection - default","request":{"urlPathTemplate":"/coupons","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eef10e8c-75d8-4adc-9fb0-8c2daeb31145","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"35f2e6da-c185-4829-b6ce-3bd466f76681","name":"Create a payment request - default","request":{"urlPathTemplate":"/payments/requests","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 122,\n \"url\": \"https://pay.brevo.com/payment/6d4ec0b2b48ef803df4103ve\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"35f2e6da-c185-4829-b6ce-3bd466f76681","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"173baf22-0f60-411a-b5e3-f68c427c3a5d","name":"Get payment request details - default","request":{"urlPathTemplate":"/payments/requests/{id}","method":"GET","pathParameters":{"id":{"equalTo":"050db7b0-9bb7-4c1e-9c68-5a8dace8c1dc"}}},"response":{"status":200,"body":"{\n \"cart\": {\n \"currency\": \"EUR\",\n \"specificAmount\": 1200\n },\n \"configuration\": {\n \"customSuccessUrl\": \"https://my-company.com/payment-success\"\n },\n \"contactId\": 43,\n \"notification\": {\n \"channel\": \"email\",\n \"text\": \"Please pay for your yoga class.\"\n },\n \"numberOfRemindersSent\": 5,\n \"reference\": \"Invoice #INV0001\\n\",\n \"status\": \"paid\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"173baf22-0f60-411a-b5e3-f68c427c3a5d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"87ef813d-0336-4656-a5b5-e0899662397f","name":"Delete a payment request. - default","request":{"urlPathTemplate":"/payments/requests/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"9ae7d68a-565c-4695-9381-d8fb3e3a14cc"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"87ef813d-0336-4656-a5b5-e0899662397f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"aed029ff-9be1-4acb-9dcf-a4c3e218a560","name":"Create an event - default","request":{"urlPathTemplate":"/events","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"aed029ff-9be1-4acb-9dcf-a4c3e218a560","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"09aa7143-15a9-433c-a1e0-3444863bbf64","name":"Get the list of all the events for the received emails. - default","request":{"urlPathTemplate":"/inbound/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2017-03-11T12:30:00Z\",\n \"recipient\": \"alexa@example.com\",\n \"sender\": \"john@example.com\",\n \"uuid\": \"1a825d56-029b-4a41-b8e4-1a825d56\"\n },\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"recipient\": \"bob@example.com\",\n \"sender\": \"alice@example.com\",\n \"uuid\": \"1a825d56-029b-4a41-b8e4-61670463431b\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"09aa7143-15a9-433c-a1e0-3444863bbf64","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ee4248db-9736-4af1-a32a-5a7de6f5328a","name":"Fetch all events history for one particular received email. - default","request":{"urlPathTemplate":"/inbound/events/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"uuid"}}},"response":{"status":200,"body":"{\n \"attachments\": [\n {\n \"contentLength\": 12345,\n \"contentType\": \"application/pdf\",\n \"name\": \"invoice.pdf\"\n }\n ],\n \"deliveredAt\": \"2017-03-12T12:31:00Z\",\n \"logs\": [\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"type\": \"received\"\n },\n {\n \"date\": \"2017-03-12T12:30:04Z\",\n \"type\": \"webhookFailed\"\n },\n {\n \"date\": \"2017-03-12T12:31:04Z\",\n \"type\": \"webhookDelivered\"\n }\n ],\n \"messageId\": \"\",\n \"receivedAt\": \"2017-03-12T12:30:00Z\",\n \"recipient\": \"bob@example.com\",\n \"sender\": \"alice@example.com\",\n \"subject\": \"Re: Question about your API\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"ee4248db-9736-4af1-a32a-5a7de6f5328a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3426b7cd-c7c6-4cd0-8359-916c1482c4a3","name":"Retrieve inbound attachment with download token. - default","request":{"urlPathTemplate":"/inbound/attachments/{downloadToken}","method":"GET","pathParameters":{"downloadToken":{"equalTo":"downloadToken"}}},"response":{"status":200,"body":"{\n \"key\": \"value\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"3426b7cd-c7c6-4cd0-8359-916c1482c4a3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b8273ac4-3d1a-4b9a-b003-bb49ef16337f","name":"Get Active Balances API - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/active-balance","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"b8273ac4-3d1a-4b9a-b003-bb49ef16337f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7ed4ff5a-868f-45ef-a95a-550b62f69d5a","name":"Get balance definition list - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"7ed4ff5a-868f-45ef-a95a-550b62f69d5a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9db15f6f-dd09-4033-bff7-9d94ef6ae471","name":"Create balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"9db15f6f-dd09-4033-bff7-9d94ef6ae471","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5171ff4c-8ab1-4886-96b9-72845239dcb2","name":"Get balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"5171ff4c-8ab1-4886-96b9-72845239dcb2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1da76c71-d209-4641-9094-43a7214838ef","name":"Update balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceAvailabilityDurationModifier\": \"startOfPeriod\",\n \"balanceAvailabilityDurationUnit\": \"balanceAvailabilityDurationUnit\",\n \"balanceAvailabilityDurationValue\": 1,\n \"balanceExpirationDate\": \"2024-01-15T09:30:00Z\",\n \"balanceOptionAmountOvertakingStrategy\": \"balanceOptionAmountOvertakingStrategy\",\n \"balanceOptionCreditRounding\": \"balanceOptionCreditRounding\",\n \"balanceOptionDebitRounding\": \"balanceOptionDebitRounding\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"deletedAt\": \"deletedAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"imageRef\": \"imageRef\",\n \"maxAmount\": 1.1,\n \"maxCreditAmountLimit\": 1.1,\n \"maxDebitAmountLimit\": 1.1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"minAmount\": 1.1,\n \"name\": \"name\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"1da76c71-d209-4641-9094-43a7214838ef","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a3817b26-f6c9-4900-86c4-6d4869b41b38","name":"Delete balance definition - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a3817b26-f6c9-4900-86c4-6d4869b41b38","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d2118a4-5218-46f1-8513-ef75d832d7d5","name":"Create balance limits - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d2118a4-5218-46f1-8513-ef75d832d7d5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5def443d-7ef0-4c5c-99d3-9e38a21ed142","name":"Get balance limits - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"5def443d-7ef0-4c5c-99d3-9e38a21ed142","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3c24feb3-061c-4954-a12f-81100122b866","name":"Updates balance limit - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"constraintType\": \"constraintType\",\n \"createdAt\": \"createdAt\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"id\": \"id\",\n \"slidingSchedule\": true,\n \"transactionType\": \"transactionType\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3c24feb3-061c-4954-a12f-81100122b866","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"60e7789f-ecdc-4330-96f5-426c8865aa02","name":"Delete balance limit - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/balance-definitions/{bdid}/limits/{blid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"bdid":{"equalTo":"bdid"},"blid":{"equalTo":"blid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"60e7789f-ecdc-4330-96f5-426c8865aa02","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a00ea68f-14e1-4bbc-a3ad-1f4c555dbd92","name":"Get balance list - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/contact-balances","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"balances\": [\n {\n \"contactId\": 1,\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1\n }\n ],\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"a00ea68f-14e1-4bbc-a3ad-1f4c555dbd92","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"24af1e00-9fca-4515-89c5-bce7048b3f2e","name":"Create balance order - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/create-order","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"dueAt\": \"dueAt\",\n \"expiresAt\": \"expiresAt\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"processedAt\": \"processedAt\",\n \"transactionid\": \"transactionid\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"24af1e00-9fca-4515-89c5-bce7048b3f2e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"bd77b0ff-3379-4930-aa93-f8cc25163bee","name":"Get subscription balances - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/subscriptions/{cid}/balances","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"}}},"response":{"status":200,"body":"{\n \"balance\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"value\": 1.1\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"bd77b0ff-3379-4930-aa93-f8cc25163bee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"06abbd3e-aec8-48f0-9c90-49887599e5ac","name":"Create subscription balances - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/subscriptions/{cid}/balances","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"consumedAt\": \"consumedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"expiresAt\": \"expiresAt\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"organizationId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"06abbd3e-aec8-48f0-9c90-49887599e5ac","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d806b377-c3f2-46e1-af10-826fc8cb7a77","name":"Get Transaction History API - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transaction-history","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"contactId\": 1,\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"transactionHistory\": [\n {\n \"amount\": 1.1,\n \"balanceExpirationDate\": \"balanceExpirationDate\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"createdAt\": \"createdAt\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d806b377-c3f2-46e1-af10-826fc8cb7a77","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"01dd65f2-fc30-4f9a-94e7-cf908b0c0b6a","name":"Create new transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"01dd65f2-fc30-4f9a-94e7-cf908b0c0b6a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"bd42f484-63b7-431c-9d4b-a149ff9cd0b8","name":"Cancel transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions/{tid}/cancel","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"bd42f484-63b7-431c-9d4b-a149ff9cd0b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fbed8bbf-cc97-48fb-a7f6-e56e37f2cf2e","name":"Complete transaction - default","request":{"urlPathTemplate":"/loyalty/balance/programs/{pid}/transactions/{tid}/complete","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"amount\": 1.1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"cancelledAt\": \"cancelledAt\",\n \"completedAt\": \"completedAt\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"eventTime\": \"eventTime\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"rejectedAt\",\n \"status\": \"status\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fbed8bbf-cc97-48fb-a7f6-e56e37f2cf2e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"26205d6c-548c-4928-8845-8eb6528a066d","name":"Get loyalty program list - default","request":{"urlPathTemplate":"/loyalty/config/programs","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"26205d6c-548c-4928-8845-8eb6528a066d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"58d70d75-ea78-49d2-a9d6-beab3075e797","name":"Create loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs","method":"POST"},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"58d70d75-ea78-49d2-a9d6-beab3075e797","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c0fa09f4-d2b6-46f5-9560-abd8eb19c934","name":"Get loyalty program Info - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c0fa09f4-d2b6-46f5-9560-abd8eb19c934","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"861e512a-8f3c-4e67-9519-b050d07984c6","name":"Update loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"861e512a-8f3c-4e67-9519-b050d07984c6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a87fbb4c-71e6-4806-9622-174c92be89d1","name":"Delete Loyalty Program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a87fbb4c-71e6-4806-9622-174c92be89d1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8a2689f4-70a0-4e02-8ce4-3c55e07bc708","name":"Partially update loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}","method":"PATCH","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"codeCount\": 1,\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"documentId\": \"documentId\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"state\": \"inactive\",\n \"subscriptionGeneratorId\": \"subscriptionGeneratorId\",\n \"subscriptionPoolId\": \"subscriptionPoolId\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"8a2689f4-70a0-4e02-8ce4-3c55e07bc708","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d32199cf-9ffa-4318-a330-2e9fda3da2d2","name":"Get Subscription Data - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/account-info","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"balance\": {\n \"balances\": [\n {}\n ],\n \"contactId\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\"\n },\n \"members\": [\n {\n \"createdAt\": \"createdAt\",\n \"memberContactId\": 1,\n \"updatedAt\": \"updatedAt\"\n }\n ],\n \"reward\": [\n {\n \"code\": \"code\",\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"updatedAt\"\n }\n ],\n \"tier\": [\n {\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"groupId\": \"groupId\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"tierId\": \"tierId\",\n \"updatedAt\": \"updatedAt\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"d32199cf-9ffa-4318-a330-2e9fda3da2d2","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0878ece4-9fe9-491a-9a7c-daaf7cf9c341","name":"Delete subscription - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/contact/{cid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"1"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"0878ece4-9fe9-491a-9a7c-daaf7cf9c341","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e628ecea-6ac2-4237-bf4e-d3e911f50954","name":"Publish loyalty program - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/publish","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e628ecea-6ac2-4237-bf4e-d3e911f50954","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c63d1aae-db4f-4b4c-b82f-19e95683e037","name":"Create subscription member - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscription-members","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"createdAt\",\n \"memberContactIds\": [\n 1\n ],\n \"organizationId\": 1,\n \"ownerContactId\": 1,\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c63d1aae-db4f-4b4c-b82f-19e95683e037","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"efc3a783-b09a-41eb-8c6f-6f3f03271ef4","name":"Delete subscription member - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscription-members","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"efc3a783-b09a-41eb-8c6f-6f3f03271ef4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c73cc6cc-b51b-4e8a-ae72-3446029b9ec5","name":"Create subscription - default","request":{"urlPathTemplate":"/loyalty/config/programs/{pid}/subscriptions","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1,\n \"createdAt\": \"createdAt\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\",\n \"organizationId\": 1,\n \"updatedAt\": \"updatedAt\",\n \"versionId\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"c73cc6cc-b51b-4e8a-ae72-3446029b9ec5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"da280697-1454-4e11-996a-89c499cf8d7f","name":"Get code count - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/code-pools/{cpid}/codes-count","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"cpid":{"equalTo":"cpid"}}},"response":{"status":200,"body":"{\n \"count\": 1000000\n}","headers":{"Content-Type":"application/json"}},"uuid":"da280697-1454-4e11-996a-89c499cf8d7f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d324fa9-3782-4213-ab50-8574dc117f03","name":"Get Reward Page API - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/offers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"endDate\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"publicImage\": \"publicImage\",\n \"startDate\": \"2024-01-15T09:30:00Z\",\n \"state\": \"state\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"totalCount\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d324fa9-3782-4213-ab50-8574dc117f03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e24ddc18-7dbb-4302-828c-d6e53ebb4a34","name":"Create a reward - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/offers","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"publicDescription\": \"publicDescription\",\n \"publicImage\": \"publicImage\",\n \"publicName\": \"publicName\",\n \"updatedAt\": \"updatedAt\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e24ddc18-7dbb-4302-828c-d6e53ebb4a34","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"661c8611-a50c-4e77-aad2-b152b4a15e63","name":"Create a voucher - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/attribute","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"code\": \"code\",\n \"consumedAt\": \"consumedAt\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"expirationDate\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"value\": 1.1\n}","headers":{"Content-Type":"application/json"}},"uuid":"661c8611-a50c-4e77-aad2-b152b4a15e63","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"aa8692b0-126d-488d-b643-8fe0de2f8405","name":"Create redeem voucher request - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/redeem","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"cancelledAt\": \"2024-01-15T09:30:00Z\",\n \"completedAt\": \"2024-01-15T09:30:00Z\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"debitTransactionId\": \"debitTransactionId\",\n \"expiresAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"2024-01-15T09:30:00Z\",\n \"rewardAttributionId\": \"rewardAttributionId\",\n \"status\": \"status\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"aa8692b0-126d-488d-b643-8fe0de2f8405","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"99e6b97f-e193-4c85-b833-07efab4f9b5b","name":"Complete redeem voucher request - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/redeem/{tid}/complete","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"cancelledAt\": \"2024-01-15T09:30:00Z\",\n \"completedAt\": \"2024-01-15T09:30:00Z\",\n \"contactId\": 1000000,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"debitTransactionId\": \"debitTransactionId\",\n \"expiresAt\": \"2024-01-15T09:30:00Z\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rejectReason\": \"rejectReason\",\n \"rejectedAt\": \"2024-01-15T09:30:00Z\",\n \"rewardAttributionId\": \"rewardAttributionId\",\n \"status\": \"status\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"99e6b97f-e193-4c85-b833-07efab4f9b5b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"919890cf-9d52-46fe-87bc-03565bdc4697","name":"Revoke vouchers - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/revoke","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"919890cf-9d52-46fe-87bc-03565bdc4697","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"53d2fcd5-6b39-4fa3-a257-21f60d24efc5","name":"Validate a reward - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/validate","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"authorize\": true\n}","headers":{"Content-Type":"application/json"}},"uuid":"53d2fcd5-6b39-4fa3-a257-21f60d24efc5","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"66e13a60-2e6c-4f3b-9ff7-fc1cdcc147b8","name":"Get reward information - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/rewards/{rid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"rid":{"equalTo":"rid"}}},"response":{"status":200,"body":"{\n \"attributionPerConsumer\": 1,\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"code\": \"code\",\n \"codeCount\": 1000000,\n \"codeGeneratorId\": \"codeGeneratorId\",\n \"codePoolId\": \"codePoolId\",\n \"config\": \"config\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"disabledAt\": \"2024-01-15T09:30:00Z\",\n \"endDate\": \"2024-01-15T09:30:00Z\",\n \"expirationDate\": \"2024-01-15T09:30:00Z\",\n \"expirationModifier\": \"startOfPeriod\",\n \"expirationUnit\": \"expirationUnit\",\n \"expirationValue\": 1,\n \"generator\": {\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"id\": \"id\",\n \"name\": \"name\",\n \"pattern\": \"pattern\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n },\n \"id\": \"id\",\n \"limits\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"durationUnit\": \"durationUnit\",\n \"durationValue\": 1,\n \"limitValue\": 1,\n \"rewardLimitId\": \"rewardLimitId\",\n \"slidingSchedule\": true,\n \"type\": \"type\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"products\": [\n {\n \"createdAt\": \"createdAt\",\n \"imageRef\": \"imageRef\",\n \"productId\": \"productId\",\n \"value\": \"value\"\n }\n ],\n \"publicDescription\": \"publicDescription\",\n \"publicImage\": \"publicImage\",\n \"publicName\": \"publicName\",\n \"redeemPerConsumer\": 1,\n \"redeemRules\": [\n \"redeemRules\"\n ],\n \"rewardConfigs\": {\n \"attribution\": \"attribution\",\n \"code\": \"code\",\n \"value\": \"value\"\n },\n \"rule\": {\n \"condition\": {\n \"op\": \"op\"\n },\n \"createdAt\": \"createdAt\",\n \"description\": \"description\",\n \"event\": {\n \"name\": \"name\",\n \"source\": \"source\"\n },\n \"isInternal\": true,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltyVersionId\": 1,\n \"meta\": {\n \"key\": \"value\"\n },\n \"name\": \"name\",\n \"results\": [\n {}\n ],\n \"ruleId\": \"ruleId\",\n \"ruleType\": \"ruleType\",\n \"updatedAt\": \"updatedAt\"\n },\n \"startDate\": \"2024-01-15T09:30:00Z\",\n \"subtractBalanceDefinitionId\": \"subtractBalanceDefinitionId\",\n \"subtractBalanceStrategy\": \"subtractBalanceStrategy\",\n \"subtractBalanceValue\": 1,\n \"subtractTotalBalance\": true,\n \"totalAttribution\": 1,\n \"totalRedeem\": 1,\n \"triggerId\": \"triggerId\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1,\n \"valueType\": \"valueType\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"66e13a60-2e6c-4f3b-9ff7-fc1cdcc147b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"950e340e-ab9c-42c4-8c85-9ea1bd43113d","name":"Get voucher for a contact - default","request":{"urlPathTemplate":"/loyalty/offer/programs/{pid}/vouchers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1000000,\n \"contactRewards\": [\n {\n \"code\": \"code\",\n \"consumedAt\": \"consumedAt\",\n \"createdAt\": \"createdAt\",\n \"expirationDate\": \"expirationDate\",\n \"id\": \"id\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"rewardId\": \"rewardId\",\n \"unit\": \"unit\",\n \"updatedAt\": \"updatedAt\",\n \"value\": 1.1\n }\n ],\n \"count\": 1,\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"loyaltySubscriptionId\": \"loyaltySubscriptionId\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"950e340e-ab9c-42c4-8c85-9ea1bd43113d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f3e1d26e-fbde-4b7e-afe4-fabb4960ff71","name":"Assign a tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/contacts/{cid}/tiers/{tid}","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"cid":{"equalTo":"cid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"contactId\": 1,\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"meta\": {\n \"key\": \"value\"\n },\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f3e1d26e-fbde-4b7e-afe4-fabb4960ff71","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e6fc762d-7440-4454-beb1-ff71f4a9080e","name":"List tier groups - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e6fc762d-7440-4454-beb1-ff71f4a9080e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d33f2b3b-2dd3-4911-8200-e4b4ef965933","name":"Create a tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups","method":"POST","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d33f2b3b-2dd3-4911-8200-e4b4ef965933","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"562fecbb-8cc8-46ae-b519-3fd2825bb107","name":"Get tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"GET","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"562fecbb-8cc8-46ae-b519-3fd2825bb107","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"67f29817-d31a-4186-b787-9277e465e139","name":"Update tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"downgradeStrategy\": \"real_time\",\n \"id\": \"id\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierOrder\": [\n \"tierOrder\"\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\",\n \"upgradeStrategy\": \"real_time\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"67f29817-d31a-4186-b787-9277e465e139","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a9e14ece-a957-40e8-b723-4b89904599dd","name":"Delete tier group - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a9e14ece-a957-40e8-b723-4b89904599dd","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d2b435bf-764a-46a6-a860-04672e2611c0","name":"Create a tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tier-groups/{gid}/tiers","method":"POST","pathParameters":{"pid":{"equalTo":"pid"},"gid":{"equalTo":"gid"}}},"response":{"status":200,"body":"{\n \"accessConditions\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"minimumValue\": 1,\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"d2b435bf-764a-46a6-a860-04672e2611c0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e335b644-b3a8-4e92-9222-a80f9a8dd3ab","name":"List tiers - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers","method":"GET","pathParameters":{"pid":{"equalTo":"pid"}}},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"accessConditions\": [\n {}\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {}\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e335b644-b3a8-4e92-9222-a80f9a8dd3ab","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"c299567a-50ff-4db3-a919-280c95c9de65","name":"Update tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers/{tid}","method":"PUT","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"{\n \"accessConditions\": [\n {\n \"balanceDefinitionId\": \"balanceDefinitionId\",\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"minimumValue\": 1,\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"groupId\": \"groupId\",\n \"imageRef\": \"imageRef\",\n \"loyaltyProgramId\": \"loyaltyProgramId\",\n \"name\": \"name\",\n \"tierId\": \"tierId\",\n \"tierRewards\": [\n {\n \"createdAt\": \"2024-01-15T09:30:00Z\",\n \"rewardId\": \"rewardId\",\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n }\n ],\n \"updatedAt\": \"2024-01-15T09:30:00Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"c299567a-50ff-4db3-a919-280c95c9de65","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"05e6afcc-fb74-4457-a108-1dc6a10a5be7","name":"Delete tier - default","request":{"urlPathTemplate":"/loyalty/tier/programs/{pid}/tiers/{tid}","method":"DELETE","pathParameters":{"pid":{"equalTo":"pid"},"tid":{"equalTo":"tid"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"05e6afcc-fb74-4457-a108-1dc6a10a5be7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"cec8c14d-adf6-497f-95ee-c48ab1d6503d","name":"Return all your created email campaigns - default","request":{"urlPathTemplate":"/emailCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"abTesting\": true,\n \"id\": 12,\n \"name\": \"EN - Sales Summer 2017\",\n \"previewText\": \"Don't miss the sale!\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"sent\",\n \"subject\": \"20% OFF for 2017 Summer Sales\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"marketing@mycompany.com\",\n \"id\": 26,\n \"name\": \"Marketing\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://example.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": true,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 5\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 5,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"statsByDevice\": {},\n \"statsByDomain\": {\n \"hotmail.co.uk\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2720,\n \"complaints\": 5,\n \"deferred\": 30,\n \"delivered\": 117056,\n \"estimatedViews\": 560,\n \"hardBounces\": 0,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 117055,\n \"softBounces\": 111,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 1970,\n \"uniqueViews\": 21111,\n \"unsubscriptions\": 105,\n \"viewed\": 35251\n },\n \"yahoo.com\": {\n \"appleMppOpens\": 10,\n \"clickers\": 533,\n \"complaints\": 0,\n \"deferred\": 30,\n \"delivered\": 25596,\n \"estimatedViews\": 560,\n \"hardBounces\": 0,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 25601,\n \"softBounces\": 5,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 298,\n \"uniqueViews\": 3527,\n \"unsubscriptions\": 17,\n \"viewed\": 5255\n }\n }\n }\n },\n {\n \"abTesting\": true,\n \"id\": 22,\n \"name\": \"Weekly - 1\",\n \"previewText\": \"your weekly newsletter!\",\n \"scheduledAt\": \"\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"draft\",\n \"subject\": \"Week 1 - Newsletter\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"newsletter@mycompany.com\",\n \"id\": 26,\n \"name\": \"Newsletter\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://example.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": false,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 45\n ],\n \"lists\": [\n 10\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 10,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.42,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"statsByDevice\": {},\n \"statsByDomain\": {\n \"aol\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"gmail\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n }\n }\n }\n ],\n \"count\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"cec8c14d-adf6-497f-95ee-c48ab1d6503d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"3d7c577e-d169-438f-b91c-d1f90d441dee","name":"Create an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d7c577e-d169-438f-b91c-d1f90d441dee","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b6e00948-fca2-4a11-addd-d16045c94c90","name":"Upload an image to your account's image gallery - default","request":{"urlPathTemplate":"/emailCampaigns/images","method":"POST"},"response":{"status":201,"body":"{\n \"url\": \"https://img.mailinblue.com/100000/images/rnb/original/62casdase8wewq9df1c2f27c.jpeg\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"b6e00948-fca2-4a11-addd-d16045c94c90","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"da8f0483-4951-4e2d-a495-15906071e018","name":"Get an email campaign report - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"abTesting\": true,\n \"id\": 22,\n \"name\": \"Weekly - 1\",\n \"previewText\": \"your weekly newsletter\",\n \"scheduledAt\": \"2017-09-22T12:30:00Z\",\n \"sendAtBestTime\": true,\n \"splitRule\": 25,\n \"status\": \"draft\",\n \"subject\": \"Week 1 - Newsletter\",\n \"subjectA\": \"Discover the New Collection!\",\n \"subjectB\": \"Want to discover the New Collection?\",\n \"type\": \"classic\",\n \"winnerCriteria\": \"open\",\n \"winnerDelay\": 50,\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"footer\": \"[DEFAULT_FOOTER]\",\n \"header\": \"[DEFAULT_HEADER]\",\n \"htmlContent\": \"This is my HTML Content\",\n \"inlineImageActivation\": true,\n \"mirrorActive\": true,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"recurring\": false,\n \"replyTo\": \"replyto@domain.com\",\n \"returnBounce\": 5,\n \"sender\": {\n \"email\": \"newsletter@mycompany.com\",\n \"id\": 26,\n \"name\": \"Newsletter\"\n },\n \"sentDate\": \"2018-12-01T16:30:00Z\",\n \"shareLink\": \"http://dhh.brevo.com/fhsgccc.html?t=9865448900\",\n \"tag\": \"Newsletter\",\n \"testSent\": false,\n \"toField\": \"{FNAME} {LNAME}\",\n \"utmCampaignValue\": \"myutm\",\n \"utmIDActive\": true,\n \"utmMedium\": \"EMAIL\",\n \"utmSource\": \"Brevo\",\n \"recipients\": {\n \"exclusionLists\": [\n 45\n ],\n \"lists\": [\n 22\n ]\n },\n \"statistics\": {\n \"campaignStats\": [\n {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 22,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n ],\n \"globalStats\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 24.59,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n },\n \"linksStats\": {},\n \"mirrorClick\": 120,\n \"remaining\": 1000,\n \"statsByBrowser\": {\n \"internetExplorer\": {\n \"clickers\": 0,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"safari\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"thunderbird\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n }\n },\n \"statsByDevice\": {\n \"desktop\": {\n \"mac\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 1,\n \"viewed\": 2\n }\n },\n \"mobile\": {\n \"androidMobile\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 1\n },\n \"iPhone\": {\n \"clickers\": 1,\n \"uniqueClicks\": 0,\n \"uniqueViews\": 0,\n \"viewed\": 2\n }\n },\n \"tablet\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n },\n \"unknown\": {\n \"key\": {\n \"clickers\": 2665,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"viewed\": 8999\n }\n }\n },\n \"statsByDomain\": {\n \"gmail\": {\n \"appleMppOpens\": 10,\n \"clickers\": 2665,\n \"complaints\": 1,\n \"deferred\": 30,\n \"delivered\": 19765,\n \"estimatedViews\": 560,\n \"hardBounces\": 87,\n \"listId\": 2,\n \"opensRate\": 29.54,\n \"returnBounce\": 5,\n \"sent\": 19887,\n \"softBounces\": 100,\n \"trackableViews\": 5661,\n \"trackableViewsRate\": 23.45,\n \"uniqueClicks\": 2300,\n \"uniqueViews\": 7779,\n \"unsubscriptions\": 2,\n \"viewed\": 8999\n }\n }\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"da8f0483-4951-4e2d-a495-15906071e018","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"27d7a953-713c-4dcc-a03d-a5fcd5fbc134","name":"Update an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"27d7a953-713c-4dcc-a03d-a5fcd5fbc134","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"28dbcc0e-eed7-4b02-a7d8-2aab0a25c731","name":"Delete an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"28dbcc0e-eed7-4b02-a7d8-2aab0a25c731","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"969348eb-29d3-48ab-82d1-c46a8412178e","name":"Get an A/B test email campaign results - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/abTestCampaignResult","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"clickRate\": \"50%\",\n \"clickedLinks\": {\n \"Version A\": [\n {\n \"clickRate\": \"0%\",\n \"clicksCount\": 0,\n \"link\": \"https://google.com\"\n },\n {\n \"clickRate\": \"0%\",\n \"clicksCount\": 0,\n \"link\": \"https://youtube.com\"\n }\n ],\n \"Version B\": [\n {\n \"clickRate\": \"40%\",\n \"clicksCount\": 2,\n \"link\": \"http://www.github.com\"\n },\n {\n \"clickRate\": \"60%\",\n \"clicksCount\": 3,\n \"link\": \"http://www.stackoverflow.com\"\n }\n ]\n },\n \"openRate\": \"100%\",\n \"statistics\": {\n \"clicks\": {\n \"Version A\": \"0%\",\n \"Version B\": \"50%\"\n },\n \"complaints\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"hardBounces\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"openers\": {\n \"Version A\": \"20%\",\n \"Version B\": \"100%\"\n },\n \"softBounces\": {\n \"Version A\": \"0%\",\n \"Version B\": \"0%\"\n },\n \"unsubscribed\": {\n \"Version A\": \"20%\",\n \"Version B\": \"0%\"\n }\n },\n \"winningCriteria\": \"Click\",\n \"winningSubjectLine\": \"Subject Line A\",\n \"winningVersion\": \"B\",\n \"winningVersionRate\": \"0%\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"969348eb-29d3-48ab-82d1-c46a8412178e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"93e3be61-a737-4896-a697-7417b837b571","name":"Export the recipients of an email campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/exportRecipients","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"93e3be61-a737-4896-a697-7417b837b571","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b0b17959-d743-449c-8bdd-ab28a42870cc","name":"Send an email campaign immediately, based on campaignId - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendNow","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b0b17959-d743-449c-8bdd-ab28a42870cc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"57eba48c-9a52-4e90-a12c-fa89a469f035","name":"Send the report of a campaign - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendReport","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"57eba48c-9a52-4e90-a12c-fa89a469f035","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fc668b8b-10da-4f83-ae38-5004f0a64ae7","name":"Send an email campaign to your test list - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sendTest","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"fc668b8b-10da-4f83-ae38-5004f0a64ae7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6bc6114e-fc20-4aa2-ba22-7e7fe7f95244","name":"Get a shared template url - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/sharedUrl","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"sharedUrl\": \"https://my.brevo.com/pt2YU7R5W_guXlowgumy_VX4pFsKu._zd0Gjj96x1_GMmzc1Qps5ZIpj6nx-\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"6bc6114e-fc20-4aa2-ba22-7e7fe7f95244","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"8d661344-163b-4798-a243-ba10bd08cbe9","name":"Update an email campaign status - default","request":{"urlPathTemplate":"/emailCampaigns/{campaignId}/status","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"8d661344-163b-4798-a243-ba10bd08cbe9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ffedd57d-0198-49a4-9112-ce7ae8751ebc","name":"Returns the information for all your created SMS campaigns - default","request":{"urlPathTemplate":"/smsCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"content\": \"Visit our Store and get some discount !\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 2,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"PROMO CODE\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"sent\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n },\n {\n \"content\": \"Summer Sale is starting tomorrow. Get extra 10% with this code:SUM17\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 10,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"SUMMER SALE\",\n \"scheduledAt\": \"2017-08-04T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"draft\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n }\n ],\n \"count\": 12\n}","headers":{"Content-Type":"application/json"}},"uuid":"ffedd57d-0198-49a4-9112-ce7ae8751ebc","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"ff5b73cc-83d1-4d1c-9038-f01bc11a604e","name":"Creates an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"ff5b73cc-83d1-4d1c-9038-f01bc11a604e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"9ff5c02a-8b74-486b-aca9-7ac003b1838c","name":"Get an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"content\": \"Visit our Store and get some discount !\",\n \"createdAt\": \"2017-06-01T12:30:00Z\",\n \"id\": 2,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"PROMO CODE\",\n \"scheduledAt\": \"2017-06-01T12:30:00Z\",\n \"sender\": \"MyCompany\",\n \"status\": \"sent\",\n \"recipients\": {\n \"exclusionLists\": [\n 13\n ],\n \"lists\": [\n 21\n ]\n },\n \"statistics\": {\n \"answered\": 2,\n \"delivered\": 2987,\n \"hardBounces\": 1,\n \"processing\": 0,\n \"sent\": 3000,\n \"softBounces\": 3,\n \"unsubscriptions\": 3\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"9ff5c02a-8b74-486b-aca9-7ac003b1838c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"828e0b76-55ec-4b20-83fd-ff0d9c6a807f","name":"Update an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"828e0b76-55ec-4b20-83fd-ff0d9c6a807f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0938f276-c211-4150-91ac-9ea5e3ddf7fe","name":"Delete an SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"0938f276-c211-4150-91ac-9ea5e3ddf7fe","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"daaeea82-c583-43fb-b4c7-a6bbc940fc47","name":"Export an SMS campaign's recipients - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/exportRecipients","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":202,"body":"{\n \"processId\": 78\n}","headers":{"Content-Type":"application/json"}},"uuid":"daaeea82-c583-43fb-b4c7-a6bbc940fc47","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b7dd5175-f7a0-4b5e-9224-203d4fae1c4d","name":"Send your SMS campaign immediately - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendNow","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b7dd5175-f7a0-4b5e-9224-203d4fae1c4d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"64e8bd39-5b33-477a-ae7f-0501cb5a6140","name":"Send an SMS campaign's report - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendReport","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"64e8bd39-5b33-477a-ae7f-0501cb5a6140","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"734d1bda-9010-4188-9a00-57d5b302eee4","name":"Send a test SMS campaign - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/sendTest","method":"POST","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"734d1bda-9010-4188-9a00-57d5b302eee4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"694adffd-8af9-45be-8225-5e44e17d7454","name":"Update a campaign's status - default","request":{"urlPathTemplate":"/smsCampaigns/{campaignId}/status","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"694adffd-8af9-45be-8225-5e44e17d7454","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"03183785-7a99-4733-896c-eb489047065c","name":"Return all your created WhatsApp campaigns - default","request":{"urlPathTemplate":"/whatsappCampaigns","method":"GET"},"response":{"status":200,"body":"{\n \"campaigns\": [\n {\n \"campaignName\": \"campaign_22\",\n \"campaignStatus\": \"sent\",\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"errorReason\": \"NONE\",\n \"id\": 1672035851100690,\n \"invalidatedContacts\": 0,\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"readPercentage\": 28.57,\n \"scheduledAt\": \"2022-12-27T09:50:00Z\",\n \"stats\": {\n \"delivered\": 3,\n \"notSent\": 4,\n \"read\": 2,\n \"sent\": 3,\n \"unsubscribe\": 0\n },\n \"templateId\": \"templateId\"\n }\n ],\n \"count\": 23\n}","headers":{"Content-Type":"application/json"}},"uuid":"03183785-7a99-4733-896c-eb489047065c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5fc3f144-a51f-454f-a5d0-019b38ba3c15","name":"Create and Send a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"5fc3f144-a51f-454f-a5d0-019b38ba3c15","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"cc80c9bc-ff82-4140-9b7a-dfb84c8e99a7","name":"Get your WhatsApp API account information - default","request":{"urlPathTemplate":"/whatsappCampaigns/config","method":"GET"},"response":{"status":200,"body":"{\n \"businessStatus\": \"verified\",\n \"phoneNumberNameStatus\": \"APPROVED\",\n \"phoneNumberQuality\": \"GREEN\",\n \"sendingLimit\": \"TIER_1K\",\n \"whatsappBusinessAccountId\": \"whatsappBusinessAccountId\",\n \"whatsappBusinessAccountStatus\": \"APPROVED\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"cc80c9bc-ff82-4140-9b7a-dfb84c8e99a7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"5217f5cb-e270-45d2-bf41-0aa3651c5839","name":"Create a WhatsApp template - default","request":{"urlPathTemplate":"/whatsappCampaigns/template","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"5217f5cb-e270-45d2-bf41-0aa3651c5839","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e541402c-10e0-447d-ab89-e9102a312296","name":"Return all your created WhatsApp templates - default","request":{"urlPathTemplate":"/whatsappCampaigns/template-list","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"templates\": [\n {\n \"category\": \"MARKETING\",\n \"createdAt\": \"2017-05-01T12:30:00Z\",\n \"errorReason\": \"NONE\",\n \"id\": 235,\n \"language\": \"en\",\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"campaign_22\",\n \"status\": \"approved\"\n },\n {\n \"category\": \"MARKETING\",\n \"createdAt\": \"2017-0\",\n \"errorReason\": \"NONE\",\n \"id\": 124,\n \"language\": \"\",\n \"modifiedAt\": \"2017-05-01T12:30:00Z\",\n \"name\": \"test-template\",\n \"status\": \"draft\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"e541402c-10e0-447d-ab89-e9102a312296","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"c47467e5-3355-486f-b83b-ecf963b249b4","name":"Send your WhatsApp template for approval - default","request":{"urlPathTemplate":"/whatsappCampaigns/template/approval/{templateId}","method":"POST","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"c47467e5-3355-486f-b83b-ecf963b249b4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"6d437255-9beb-48aa-9616-0b438eb437f6","name":"Get a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"GET","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"campaignName\": \"Test WhatsApp Campaign\",\n \"campaignStatus\": \"sent\",\n \"createdAt\": \"2022-12-26T06:50:00Z\",\n \"id\": 1672035851100690,\n \"modifiedAt\": \"2022-12-26T08:50:00Z\",\n \"scheduledAt\": \"2022-12-27T09:50:00Z\",\n \"senderNumber\": \"senderNumber\",\n \"stats\": {\n \"delivered\": 3,\n \"notSent\": 4,\n \"read\": 2,\n \"sent\": 3,\n \"unsubscribe\": 0\n },\n \"template\": {\n \"body_variables\": [\n {\n \"datatype\": \"text\",\n \"default\": \"INVALID_HEADER\",\n \"name\": \"FIRSTNAME\"\n }\n ],\n \"button_type\": \"CALL_TO_ACTION\",\n \"category\": \"MARKETING\",\n \"components\": [\n {\n \"text\": \"making it look like readable English.\",\n \"type\": \"BODY\"\n },\n {\n \"text\": \"Life is a long lesson in humility\",\n \"type\": \"BUTTONS\"\n }\n ],\n \"contains_button\": true,\n \"display_header\": false,\n \"header_type\": \"text\",\n \"header_variables\": [\n {\n \"datatype\": \"text\",\n \"default\": \"INVALID HEADER\",\n \"name\": \"FIRSTNAME\"\n }\n ],\n \"hide_footer\": true,\n \"language\": \"en\",\n \"name\": \"official_campaign8\"\n }\n}","headers":{"Content-Type":"application/json"}},"uuid":"6d437255-9beb-48aa-9616-0b438eb437f6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eb75a9a4-36c5-4126-9a14-85044f19f2c1","name":"Update a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"PUT","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"eb75a9a4-36c5-4126-9a14-85044f19f2c1","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b4ef121d-89fa-4fb6-984d-39467bf9fd6b","name":"Delete a WhatsApp campaign - default","request":{"urlPathTemplate":"/whatsappCampaigns/{campaignId}","method":"DELETE","pathParameters":{"campaignId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b4ef121d-89fa-4fb6-984d-39467bf9fd6b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"eb31fc6b-22fd-431f-ba7e-59e0d7773487","name":"Get all Companies - default","request":{"urlPathTemplate":"/companies","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"eb31fc6b-22fd-431f-ba7e-59e0d7773487","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e17f5536-5a6b-4a26-8102-3170dd47ae3d","name":"Create a company - default","request":{"urlPathTemplate":"/companies","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"e17f5536-5a6b-4a26-8102-3170dd47ae3d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f390d3a7-6a70-4b45-ad33-f4f3d3000538","name":"Import companies(creation and updation) - default","request":{"urlPathTemplate":"/companies/import","method":"POST"},"response":{"status":200,"body":"{\n \"processId\": 50\n}","headers":{"Content-Type":"application/json"}},"uuid":"f390d3a7-6a70-4b45-ad33-f4f3d3000538","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"708feaed-27c0-429f-8086-5e7c5e4ecd8d","name":"Link and Unlink company with contact and deal - default","request":{"urlPathTemplate":"/companies/link-unlink/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"708feaed-27c0-429f-8086-5e7c5e4ecd8d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"00aba53e-3870-4157-ace9-c2d252198e11","name":"Get a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"00aba53e-3870-4157-ace9-c2d252198e11","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ed72bcbe-33c2-48e2-93e4-756a46e8fd90","name":"Delete a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ed72bcbe-33c2-48e2-93e4-756a46e8fd90","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"3d37f940-80db-41f6-9f83-1f3a2c69804b","name":"Update a company - default","request":{"urlPathTemplate":"/companies/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"created_at\": \"2022-01-13T19:04:24.376+05:30\",\n \"domain\": \"xyz\",\n \"last_updated_at\": \"2022-04-01T18:47:48.283+05:30\",\n \"name\": \"text\",\n \"number_of_contacts\": 0,\n \"owner\": \"62260474111b1101704a9d85\",\n \"owner_assign_date\": \"2022-04-01T18:21:13.379+05:30\",\n \"phone_number\": 8171844192,\n \"revenue\": 10\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ],\n \"linkedDealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"3d37f940-80db-41f6-9f83-1f3a2c69804b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1a24ce32-7c2c-41a5-80a9-1681d05767ad","name":"Create a company/deal attribute - default","request":{"urlPathTemplate":"/crm/attributes","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad07\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"1a24ce32-7c2c-41a5-80a9-1681d05767ad","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"360c88d6-c7bb-4c00-b1ab-146f803e9eff","name":"Delete an attribute - default","request":{"urlPathTemplate":"/crm/attributes/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"360c88d6-c7bb-4c00-b1ab-146f803e9eff","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a9790cec-51da-4b91-ae52-a3b58fa8c717","name":"Update an attribute - default","request":{"urlPathTemplate":"/crm/attributes/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"a9790cec-51da-4b91-ae52-a3b58fa8c717","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"696b098d-c426-490d-993d-82b72a9a6eec","name":"Get company attributes - default","request":{"urlPathTemplate":"/crm/attributes/companies","method":"GET"},"response":{"status":200,"body":"[\n {\n \"attributeOptions\": [\n {\n \"key\": \"custom key\",\n \"value\": \"custom label\"\n }\n ],\n \"attributeTypeName\": \"text\",\n \"internalName\": \"name\",\n \"isRequired\": true,\n \"label\": \"Company Name\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"696b098d-c426-490d-993d-82b72a9a6eec","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"3db982e0-00b7-41af-bc9d-fe3f54d90a12","name":"Get deal attributes - default","request":{"urlPathTemplate":"/crm/attributes/deals","method":"GET"},"response":{"status":200,"body":"[\n {\n \"attributeOptions\": [\n {\n \"key\": \"custom key\",\n \"value\": \"custom label\"\n }\n ],\n \"attributeTypeName\": \"text\",\n \"internalName\": \"deal_name\",\n \"isRequired\": true,\n \"label\": \"Deal Name\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"3db982e0-00b7-41af-bc9d-fe3f54d90a12","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"4ee2c155-e8d9-4aee-b095-699a2c9a6263","name":"Get all deals - default","request":{"urlPathTemplate":"/crm/deals","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"attributes\": {\n \"amount\": 12,\n \"created_at\": \"2022-05-30T07:42:05.671Z\",\n \"deal_name\": \"testname\",\n \"deal_owner\": \"6093d2425a9b436e9519d034\",\n \"deal_stage\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"last_activity_date\": \"2022-06-06T08:38:36.000Z\",\n \"last_updated_date\": \"2022-06-06T08:38:36.761Z\",\n \"number_of_activities\": 0,\n \"number_of_contacts\": 1,\n \"pipeline\": \"6093d296ad1e9c5cf2140a58\",\n \"stage_updated_at\": \"2022-05-30T07:42:05.671Z\"\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedCompaniesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ]\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"4ee2c155-e8d9-4aee-b095-699a2c9a6263","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"21216821-874f-4e2a-a690-4b805b03c721","name":"Create a deal - default","request":{"urlPathTemplate":"/crm/deals","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"21216821-874f-4e2a-a690-4b805b03c721","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ce9e7723-550c-4f51-af88-6cde553f45b7","name":"Import deals(creation and updation) - default","request":{"urlPathTemplate":"/crm/deals/import","method":"POST"},"response":{"status":200,"body":"{\n \"processId\": 50\n}","headers":{"Content-Type":"application/json"}},"uuid":"ce9e7723-550c-4f51-af88-6cde553f45b7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f89fa5e6-0434-46e0-8c77-535bea98fc1a","name":"Link and Unlink a deal with contacts and companies - default","request":{"urlPathTemplate":"/crm/deals/link-unlink/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f89fa5e6-0434-46e0-8c77-535bea98fc1a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"a3513f5b-5df8-443d-aa67-5efd91e58f3d","name":"Get a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"attributes\": {\n \"amount\": 12,\n \"created_at\": \"2022-05-30T07:42:05.671Z\",\n \"deal_name\": \"testname\",\n \"deal_owner\": \"6093d2425a9b436e9519d034\",\n \"deal_stage\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"last_activity_date\": \"2022-06-06T08:38:36.000Z\",\n \"last_updated_date\": \"2022-06-06T08:38:36.761Z\",\n \"next_activity_date\": {\n \"key\": \"value\"\n },\n \"number_of_activities\": 0,\n \"number_of_contacts\": 1,\n \"pipeline\": \"6093d296ad1e9c5cf2140a58\",\n \"stage_updated_at\": \"2022-05-30T07:42:05.671Z\"\n },\n \"id\": \"629475917295261d9b1f4403\",\n \"linkedCompaniesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"linkedContactsIds\": [\n 1,\n 2,\n 3\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a3513f5b-5df8-443d-aa67-5efd91e58f3d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"54ba1660-4170-41b9-86d2-963468e28812","name":"Delete a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"54ba1660-4170-41b9-86d2-963468e28812","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"e555066b-bfb4-4582-9f37-6eec50af9fe4","name":"Update a deal - default","request":{"urlPathTemplate":"/crm/deals/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e555066b-bfb4-4582-9f37-6eec50af9fe4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"00d065e6-8a4f-4ac9-a849-298a81551e9c","name":"Get pipeline stages - default","request":{"urlPathTemplate":"/crm/pipeline/details","method":"GET"},"response":{"status":200,"body":"{\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"00d065e6-8a4f-4ac9-a849-298a81551e9c","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e75093b9-5f73-46e0-a2af-1f7c47922829","name":"Get all pipelines - default","request":{"urlPathTemplate":"/crm/pipeline/details/all","method":"GET"},"response":{"status":200,"body":"[\n {\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"e75093b9-5f73-46e0-a2af-1f7c47922829","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"2882799f-edf8-4d3b-826d-3692f300d025","name":"Get a pipeline - default","request":{"urlPathTemplate":"/crm/pipeline/details/{pipelineID}","method":"GET","pathParameters":{"pipelineID":{"equalTo":"pipelineID"}}},"response":{"status":200,"body":"[\n {\n \"pipeline\": \"5ea675e3da0dd085acaea610\",\n \"pipeline_name\": \"Sales Pipeline\",\n \"stages\": [\n {\n \"id\": \"9e577ff7-8e42-4ab3-be26-2b5e01b42518\",\n \"name\": \"New\"\n }\n ]\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"2882799f-edf8-4d3b-826d-3692f300d025","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"2e96e9dc-f52d-4354-a185-de3257903a02","name":"Get all files - default","request":{"urlPathTemplate":"/crm/files","method":"GET"},"response":{"status":200,"body":"[\n {\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"2e96e9dc-f52d-4354-a185-de3257903a02","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"54153a26-e96d-4b54-acab-08a1b6bb6027","name":"Upload a file - default","request":{"urlPathTemplate":"/crm/files","method":"POST"},"response":{"status":201,"body":"{\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"54153a26-e96d-4b54-acab-08a1b6bb6027","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fea850a9-ab2c-4fee-89b8-e564df22e53a","name":"Download a file - default","request":{"urlPathTemplate":"/crm/files/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"fileUrl\": \"https://storage.googleapis.com/brevo-app-crm.......-sample.pdf\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"fea850a9-ab2c-4fee-89b8-e564df22e53a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"38b72322-9ea0-47f2-b639-7d466c243b82","name":"Delete a file - default","request":{"urlPathTemplate":"/crm/files/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"38b72322-9ea0-47f2-b639-7d466c243b82","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1ee1505b-b76c-47f3-addc-8d237075f2a3","name":"Get file details - default","request":{"urlPathTemplate":"/crm/files/{id}/data","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"authorId\": \"61a5ce58y5d4795761045991\",\n \"companyId\": \"61a5ce58c5d4795761045991\",\n \"contactId\": 1,\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealId\": \"61a5ce58c5d4795761045991\",\n \"name\": \"example.png\",\n \"size\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"1ee1505b-b76c-47f3-addc-8d237075f2a3","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"608a87de-9e4a-45e5-bb3a-e0683eb220b8","name":"Get all notes - default","request":{"urlPathTemplate":"/crm/notes","method":"GET"},"response":{"status":200,"body":"[\n {\n \"authorId\": {\n \"email\": \"johndoe@example.com\",\n \"id\": \"61a5ce58y5d4795761045991\",\n \"locale\": \"en_GB\",\n \"name\": {\n \"fullName\": \"John Doe\"\n },\n \"timezone\": \"Asia/Kolkata\"\n },\n \"contactIds\": [\n 247,\n 1,\n 2\n ],\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad09\",\n \"text\": \"In communication with client_dev for resolution of queries.\",\n \"updatedAt\": \"2017-05-01T17:05:03Z\"\n }\n]","headers":{"Content-Type":"application/json"}},"uuid":"608a87de-9e4a-45e5-bb3a-e0683eb220b8","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"0ceb328a-0b27-4d1d-8ba3-3abc8979d485","name":"Create a note - default","request":{"urlPathTemplate":"/crm/notes","method":"POST"},"response":{"status":200,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad09\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"0ceb328a-0b27-4d1d-8ba3-3abc8979d485","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f9cf8ca7-3372-4b74-854e-93a3d45c5d56","name":"Get a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"authorId\": {\n \"email\": \"johndoe@example.com\",\n \"id\": \"61a5ce58y5d4795761045991\",\n \"locale\": \"en_GB\",\n \"name\": {\n \"fullName\": \"John Doe\"\n },\n \"timezone\": \"Asia/Kolkata\"\n },\n \"contactIds\": [\n 247,\n 1,\n 2\n ],\n \"createdAt\": \"2017-05-01T17:05:03Z\",\n \"dealIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad09\",\n \"text\": \"In communication with client_dev for resolution of queries.\",\n \"updatedAt\": \"2017-05-01T17:05:03Z\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"f9cf8ca7-3372-4b74-854e-93a3d45c5d56","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"b382d16e-0455-423c-9dd1-42efa255a495","name":"Delete a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"b382d16e-0455-423c-9dd1-42efa255a495","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"458a7a9b-298d-44e2-a117-63db0c9047f0","name":"Update a note - default","request":{"urlPathTemplate":"/crm/notes/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"458a7a9b-298d-44e2-a117-63db0c9047f0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ce9a81b3-1605-4c76-bf79-fc52ff6a2653","name":"Get all tasks - default","request":{"urlPathTemplate":"/crm/tasks","method":"GET"},"response":{"status":200,"body":"{\n \"items\": [\n {\n \"companiesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"contactsIds\": [\n 1,\n 2,\n 3\n ],\n \"dealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad06\",\n \"name\": \"Task: Connect with client_dev\",\n \"taskTypeId\": \"61a5cd07ca1347c82306ad09\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"ce9a81b3-1605-4c76-bf79-fc52ff6a2653","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"60ee1139-00c5-4746-b240-523605d43bb4","name":"Create a task - default","request":{"urlPathTemplate":"/crm/tasks","method":"POST"},"response":{"status":201,"body":"{\n \"id\": \"61a5cd07ca1347c82306ad06\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"60ee1139-00c5-4746-b240-523605d43bb4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"909b9f4c-1f5b-4271-82fe-a4e4847db6c7","name":"Get a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"GET","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"{\n \"companiesIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"contactsIds\": [\n 1,\n 2,\n 3\n ],\n \"dealsIds\": [\n \"61a5ce58c5d4795761045990\",\n \"61a5ce58c5d4795761045991\",\n \"61a5ce58c5d4795761045992\"\n ],\n \"id\": \"61a5cd07ca1347c82306ad06\",\n \"name\": \"Task: Connect with client_dev\",\n \"taskTypeId\": \"61a5cd07ca1347c82306ad09\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"909b9f4c-1f5b-4271-82fe-a4e4847db6c7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"040ca6a6-b7b7-4cfd-95b2-a493ccc1691e","name":"Delete a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"DELETE","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"040ca6a6-b7b7-4cfd-95b2-a493ccc1691e","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"90199d04-c868-46bf-8e40-5e330c257e75","name":"Update a task - default","request":{"urlPathTemplate":"/crm/tasks/{id}","method":"PATCH","pathParameters":{"id":{"equalTo":"id"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"90199d04-c868-46bf-8e40-5e330c257e75","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"667b0721-7004-49d8-9017-b6d086394c2f","name":"Get all task types - default","request":{"urlPathTemplate":"/crm/tasktypes","method":"GET"},"response":{"status":200,"body":"{\n \"id\": \"61a88a2eb7a574180261234\",\n \"title\": \"Email\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"667b0721-7004-49d8-9017-b6d086394c2f","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"22a7a09a-6fad-41dd-aed4-b8806c57a34a","name":"Send a WhatsApp message - default","request":{"urlPathTemplate":"/whatsapp/sendMessage","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"22a7a09a-6fad-41dd-aed4-b8806c57a34a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"fab3ac15-a813-4c2f-9673-e64845544c00","name":"Get all your WhatsApp activity (unaggregated events) - default","request":{"urlPathTemplate":"/whatsapp/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"sent\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"error\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"error reason\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"Hi! I am a reply\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"soft-bounce\",\n \"mediaUrl\": \"https://example.com/media.png\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"invalid whatsapp contact\",\n \"senderNumber\": \"senderNumber\"\n },\n {\n \"body\": \"body only in case of text reply & url will be empty\",\n \"contactNumber\": \"contactNumber\",\n \"date\": \"2017-03-12T12:30:00Z\",\n \"event\": \"reply\",\n \"mediaUrl\": \"media url only in case media reply & body will be empty\",\n \"messageId\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"reason\": \"23befbae-1505-47a8-bd27-e30ef739f32c\",\n \"senderNumber\": \"senderNumber\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"fab3ac15-a813-4c2f-9673-e64845544c00","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"28f43c06-69ca-463d-ad60-4a71c61a0440","name":"Get the list of blocked or unsubscribed transactional contacts - default","request":{"urlPathTemplate":"/smtp/blockedContacts","method":"GET"},"response":{"status":200,"body":"{\n \"contacts\": [\n {\n \"blockedAt\": \"2017-05-01T12:30:00Z\",\n \"email\": \"abc@xyz.com\",\n \"reason\": {\n \"code\": \"adminBlocked\",\n \"message\": \"Admin blocked\"\n },\n \"senderEmail\": \"ez312@gmal.com\"\n }\n ],\n \"count\": 1\n}","headers":{"Content-Type":"application/json"}},"uuid":"28f43c06-69ca-463d-ad60-4a71c61a0440","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"e81c8495-0ef3-44b1-a9ce-45cc2bef7798","name":"Unblock or resubscribe a transactional contact - default","request":{"urlPathTemplate":"/smtp/blockedContacts/{email}","method":"DELETE","pathParameters":{"email":{"equalTo":"email"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"e81c8495-0ef3-44b1-a9ce-45cc2bef7798","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0aab435d-618c-452b-8545-7c35e9088c78","name":"Get the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains","method":"GET"},"response":{"status":200,"body":"{\n \"domains\": [\n \"example.com\",\n \"testdomain.com\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0aab435d-618c-452b-8545-7c35e9088c78","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"350fd1cc-de1c-4197-ae49-46ce6a1d6c03","name":"Add a new domain to the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"350fd1cc-de1c-4197-ae49-46ce6a1d6c03","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"f5e28407-a9c3-4231-b722-a6b8bbd8af4a","name":"Unblock an existing domain from the list of blocked domains - default","request":{"urlPathTemplate":"/smtp/blockedDomains/{domain}","method":"DELETE","pathParameters":{"domain":{"equalTo":"domain"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"f5e28407-a9c3-4231-b722-a6b8bbd8af4a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"d0e027cd-c123-40e7-9aad-30cdce7cf01d","name":"Delete hardbounces - default","request":{"urlPathTemplate":"/smtp/deleteHardbounces","method":"POST"},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"d0e027cd-c123-40e7-9aad-30cdce7cf01d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4682dc2f-8d22-401b-bb70-9d7939f0b7f7","name":"Send a transactional email - default","request":{"urlPathTemplate":"/smtp/email","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": \"<201798300811.5787683@relay.domain.com>\",\n \"messageIds\": [\n \"messageIds\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"4682dc2f-8d22-401b-bb70-9d7939f0b7f7","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"5b6bfccd-a5f9-44e8-ab53-d5429f8f9e49","name":"Delete scheduled emails by batchId or messageId - default","request":{"urlPathTemplate":"/smtp/email/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"4320f270-a4e3-4a2e-b591-edfe30a5e627"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"5b6bfccd-a5f9-44e8-ab53-d5429f8f9e49","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"7b3f5d29-5b44-4d25-ba1b-9b35d7e1bb44","name":"Fetch scheduled emails by batchId or messageId - default","request":{"urlPathTemplate":"/smtp/emailStatus/{identifier}","method":"GET","pathParameters":{"identifier":{"equalTo":"4320f270-a4e3-4a2e-b591-edfe30a5e627"}}},"response":{"status":200,"body":"{\n \"batches\": [\n {\n \"createdAt\": \"2022-02-26T11:36:43Z\",\n \"scheduledAt\": \"2022-02-28T11:36:43Z\",\n \"status\": \"queued\"\n },\n {\n \"createdAt\": \"2022-02-24T11:36:43Z\",\n \"scheduledAt\": \"2022-02-25T11:36:43Z\",\n \"status\": \"processed\"\n },\n {\n \"createdAt\": \"2022-02-25T11:36:43Z\",\n \"scheduledAt\": \"2022-02-26T11:36:43Z\",\n \"status\": \"inProgress\"\n }\n ],\n \"count\": 3\n}","headers":{"Content-Type":"application/json"}},"uuid":"7b3f5d29-5b44-4d25-ba1b-9b35d7e1bb44","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"59d3278a-2ea0-47c9-9d55-a4046d1b1377","name":"Get the list of transactional emails on the basis of allowed filters - default","request":{"urlPathTemplate":"/smtp/emails","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 120,\n \"transactionalEmails\": [\n {\n \"date\": \"2019-05-25T11:53:26Z\",\n \"email\": \"abc@xyz.com\",\n \"from\": \"diana.doe@example.com\",\n \"messageId\": \"<201798300811.5787683@relay.domain.com>\",\n \"subject\": \"summer camp\",\n \"tags\": [\n \"tag1\"\n ],\n \"templateId\": 15,\n \"uuid\": \"5a78c-209ok98262910-std2341\"\n },\n {\n \"date\": \"2019-05-25T07:28:11Z\",\n \"email\": \"test@test.com\",\n \"from\": \"diana.doe@example.com\",\n \"messageId\": \"<201798300811.5700093@relay.domain.com>\",\n \"subject\": \"details verification\",\n \"tags\": [\n \"tag1\"\n ],\n \"templateId\": 15,\n \"uuid\": \"5a78c-209ok98262910-s99a341\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"59d3278a-2ea0-47c9-9d55-a4046d1b1377","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"242bc913-9644-453e-a76b-b6898985c451","name":"Get the personalized content of a sent transactional email - default","request":{"urlPathTemplate":"/smtp/emails/{uuid}","method":"GET","pathParameters":{"uuid":{"equalTo":"uuid"}}},"response":{"status":200,"body":"{\n \"attachmentCount\": 2,\n \"body\": \" Greetings from the team
This is the actual html content sent
\",\n \"date\": \"2016-02-25T11:53:26Z\",\n \"email\": \"abc@example.com\",\n \"events\": [\n {\n \"name\": \"sent\",\n \"time\": \"2016-02-25T11:53:26Z\"\n },\n {\n \"name\": \"delivered\",\n \"time\": \"2016-02-25T11:55:26Z\"\n },\n {\n \"name\": \"opened\",\n \"time\": \"2016-02-26T09:53:26Z\"\n }\n ],\n \"subject\": \"Summer Camps\",\n \"templateId\": 12\n}","headers":{"Content-Type":"application/json"}},"uuid":"242bc913-9644-453e-a76b-b6898985c451","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"1060a95a-b193-4fcb-a2c0-82a02a746067","name":"Delete an SMTP transactional log - default","request":{"urlPathTemplate":"/smtp/log/{identifier}","method":"DELETE","pathParameters":{"identifier":{"equalTo":"identifier"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"1060a95a-b193-4fcb-a2c0-82a02a746067","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"4506e73c-7b47-483f-9ffc-09cb13f3d99a","name":"Get your transactional email activity aggregated over a period of time - default","request":{"urlPathTemplate":"/smtp/statistics/aggregatedReport","method":"GET"},"response":{"status":200,"body":"{\n \"blocked\": 2,\n \"clicks\": 9987,\n \"delivered\": 18996,\n \"hardBounces\": 234,\n \"invalid\": 0,\n \"opens\": 17654,\n \"range\": \"2016-09-08|2017-04-28\",\n \"requests\": 19887,\n \"softBounces\": 1533,\n \"spamReports\": 1,\n \"uniqueClicks\": 8766,\n \"uniqueOpens\": 13688,\n \"unsubscribed\": 2\n}","headers":{"Content-Type":"application/json"}},"uuid":"4506e73c-7b47-483f-9ffc-09cb13f3d99a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a81e1c33-f793-49d1-adb6-8083ca10de20","name":"Get all your transactional email activity (unaggregated events) - default","request":{"urlPathTemplate":"/smtp/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2017-03-12T12:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"event\": \"deferred\",\n \"from\": \"john@example.com\",\n \"ip\": \"165.87.3.15\",\n \"link\": \"https://www.someexamplelink.com\",\n \"messageId\": \"<201798300811.5787683@example.domain.com>\",\n \"reason\": \"Error connection timeout\",\n \"subject\": \"Sib client_dev test\",\n \"tag\": \"OrderConfirmation\",\n \"templateId\": 4\n },\n {\n \"date\": \"2017-03-13T16:30:00Z\",\n \"email\": \"john.smith@example.com\",\n \"event\": \"delivered\",\n \"from\": \"john@example.com\",\n \"ip\": \"165.87.3.15\",\n \"link\": \"https://www.someexamplelink.com\",\n \"messageId\": \"<201798300811.5787683@example.domain.com>\",\n \"reason\": \"Error connection timeout\",\n \"subject\": \"Sib client_dev test\",\n \"tag\": \"OrderConfirmation\",\n \"templateId\": 5\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"a81e1c33-f793-49d1-adb6-8083ca10de20","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"0d36a3c1-9ba5-4da3-9f9a-5d81dcb8cbc6","name":"Get your transactional email activity aggregated per day - default","request":{"urlPathTemplate":"/smtp/statistics/reports","method":"GET"},"response":{"status":200,"body":"{\n \"reports\": [\n {\n \"blocked\": 519,\n \"clicks\": 1026,\n \"date\": \"2017-04-30\",\n \"delivered\": 10103,\n \"hardBounces\": 21,\n \"invalid\": 1,\n \"opens\": 5091,\n \"requests\": 10756,\n \"softBounces\": 137,\n \"spamReports\": 0,\n \"uniqueClicks\": 720,\n \"uniqueOpens\": 2318,\n \"unsubscribed\": 0\n },\n {\n \"blocked\": 920,\n \"clicks\": 1514,\n \"date\": \"2017-05-01\",\n \"delivered\": 17499,\n \"hardBounces\": 34,\n \"invalid\": 2,\n \"opens\": 10089,\n \"requests\": 18812,\n \"softBounces\": 254,\n \"spamReports\": 0,\n \"uniqueClicks\": 1090,\n \"uniqueOpens\": 4393,\n \"unsubscribed\": 3\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0d36a3c1-9ba5-4da3-9f9a-5d81dcb8cbc6","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"81e1ac28-8b42-4ff7-a4f4-ad4a4fe0d149","name":"Generate the rendered preview of transactional template - default","request":{"urlPathTemplate":"/smtp/template/preview","method":"POST"},"response":{"status":200,"body":"{\n \"fromEmail\": \"fromEmail\",\n \"fromName\": \"fromName\",\n \"html\": \"html\",\n \"previewText\": \"previewText\",\n \"subject\": \"subject\",\n \"usedFeedNames\": [\n \"usedFeedNames\",\n \"usedFeedNames\"\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"81e1ac28-8b42-4ff7-a4f4-ad4a4fe0d149","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"0e4d0a9a-9763-4d0b-92ab-7b1483ddd81b","name":"Get the list of email templates - default","request":{"urlPathTemplate":"/smtp/templates","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 2,\n \"templates\": [\n {\n \"createdAt\": \"2016-02-24T14:44:24Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 1\",\n \"id\": 5,\n \"isActive\": false,\n \"modifiedAt\": \"2016-02-24T15:37:11Z\",\n \"name\": \"ChristomasTimeTemplate\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Merry Christmas\",\n \"tag\": \"Festival\",\n \"testSent\": false,\n \"toField\": \"\"\n },\n {\n \"createdAt\": \"2016-02-25T11:53:26Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 2\",\n \"id\": 12,\n \"isActive\": true,\n \"modifiedAt\": \"2016-02-25T11:53:26Z\",\n \"name\": \"SummerSales2017Template\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Enjoy our summer Sales !\",\n \"tag\": \"Summer\",\n \"testSent\": false,\n \"toField\": \"\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"0e4d0a9a-9763-4d0b-92ab-7b1483ddd81b","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"a7314e1c-958e-4335-9dd3-e65802b21168","name":"Create an email template - default","request":{"urlPathTemplate":"/smtp/templates","method":"POST"},"response":{"status":201,"body":"{\n \"id\": 5\n}","headers":{"Content-Type":"application/json"}},"uuid":"a7314e1c-958e-4335-9dd3-e65802b21168","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"845ecf0d-a02f-461d-908b-25fe3eab4ec9","name":"Returns the template information - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"GET","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"{\n \"createdAt\": \"2016-02-25T11:53:26Z\",\n \"doiTemplate\": false,\n \"htmlContent\": \"HTML CONTENT 4\",\n \"id\": 33,\n \"isActive\": true,\n \"modifiedAt\": \"2016-02-25T11:53:26Z\",\n \"name\": \"OrderConfirmation\",\n \"replyTo\": \"replyto@domain.com\",\n \"sender\": {\n \"email\": \"john.smith@example.com\",\n \"id\": \"43\",\n \"name\": \"John\"\n },\n \"subject\": \"Order Confirmation : Thanks for your Purchase !\",\n \"tag\": \"\",\n \"testSent\": false,\n \"toField\": \"\"\n}","headers":{"Content-Type":"application/json"}},"uuid":"845ecf0d-a02f-461d-908b-25fe3eab4ec9","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"65a53a30-7428-4b1a-b0a4-88869d5b8d78","name":"Update an email template - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"PUT","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"65a53a30-7428-4b1a-b0a4-88869d5b8d78","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"ee12d2af-6eea-4dd3-b43d-ca1463b36b14","name":"Delete an inactive email template - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}","method":"DELETE","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"ee12d2af-6eea-4dd3-b43d-ca1463b36b14","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"10979c60-afa4-4a94-a43e-5fc9613e22da","name":"Send a template to your test list - default","request":{"urlPathTemplate":"/smtp/templates/{templateId}/sendTest","method":"POST","pathParameters":{"templateId":{"equalTo":"1000000"}}},"response":{"status":200,"body":"\"\"","headers":{"Content-Type":"application/json"}},"uuid":"10979c60-afa4-4a94-a43e-5fc9613e22da","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"df5bc4e6-ca5e-4cd7-809c-269c0845b24d","name":"Send SMS message asynchronously to a mobile number - default","request":{"urlPathTemplate":"/transactionalSMS/send","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": 1511882900176220\n}","headers":{"Content-Type":"application/json"}},"uuid":"df5bc4e6-ca5e-4cd7-809c-269c0845b24d","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"70d5f369-4f59-482d-a10b-be3e50b4a40a","name":"Send SMS message to a mobile number - default","request":{"urlPathTemplate":"/transactionalSMS/sms","method":"POST"},"response":{"status":201,"body":"{\n \"messageId\": 1511882900176220,\n \"reference\": \"ab1cde2fgh3i4jklmno\",\n \"remainingCredits\": 82.85,\n \"smsCount\": 2,\n \"usedCredits\": 0.7\n}","headers":{"Content-Type":"application/json"}},"uuid":"70d5f369-4f59-482d-a10b-be3e50b4a40a","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}}},{"id":"31feec95-40fc-4b7e-9c08-86c997f2dfb0","name":"Get your SMS activity aggregated over a period of time - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/aggregatedReport","method":"GET"},"response":{"status":200,"body":"{\n \"accepted\": 6,\n \"blocked\": 4,\n \"delivered\": 16,\n \"hardBounces\": 5,\n \"range\": \"2015-05-22|2017-11-29\",\n \"rejected\": 14,\n \"replied\": 8,\n \"requests\": 54,\n \"skipped\": 1,\n \"softBounces\": 26,\n \"unsubscribed\": 10\n}","headers":{"Content-Type":"application/json"}},"uuid":"31feec95-40fc-4b7e-9c08-86c997f2dfb0","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"8bec6502-a4a6-4405-88f8-c7b97f2bc0e4","name":"Get all your SMS activity (unaggregated events) - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/events","method":"GET"},"response":{"status":200,"body":"{\n \"events\": [\n {\n \"date\": \"2015-05-20T12:30:00Z\",\n \"event\": \"sent\",\n \"messageId\": \"1473139351170140\",\n \"phoneNumber\": \"phoneNumber\",\n \"reason\": \"Recipient is currently unreachable\",\n \"reply\": \"reply\",\n \"tag\": \"cabWaiting\"\n },\n {\n \"date\": \"2015-05-20T16:30:00Z\",\n \"event\": \"delivered\",\n \"messageId\": \"1473139351170140\",\n \"phoneNumber\": \"phoneNumber\",\n \"reason\": \"Recipient is currently unreachable\",\n \"reply\": \"reply\",\n \"tag\": \"cabRequest\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"8bec6502-a4a6-4405-88f8-c7b97f2bc0e4","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"34ebfec8-ca13-4071-9f58-e116c00c6446","name":"Get your SMS activity aggregated per day - default","request":{"urlPathTemplate":"/transactionalSMS/statistics/reports","method":"GET"},"response":{"status":200,"body":"{\n \"reports\": [\n {\n \"accepted\": 2318,\n \"blocked\": 1026,\n \"date\": \"2017-04-30\",\n \"delivered\": 10103,\n \"hardBounces\": 21,\n \"rejected\": 0,\n \"replied\": 5091,\n \"requests\": 10756,\n \"skipped\": 1,\n \"softBounces\": 137,\n \"unsubscribed\": 720\n },\n {\n \"accepted\": 4393,\n \"blocked\": 1514,\n \"date\": \"2017-05-01\",\n \"delivered\": 17499,\n \"hardBounces\": 34,\n \"rejected\": 0,\n \"replied\": 10089,\n \"requests\": 18812,\n \"skipped\": 0,\n \"softBounces\": 254,\n \"unsubscribed\": 1090\n },\n {\n \"accepted\": 4689,\n \"blocked\": 1646,\n \"date\": \"2017-05-02\",\n \"delivered\": 13427,\n \"hardBounces\": 16,\n \"rejected\": 0,\n \"replied\": 11563,\n \"requests\": 14321,\n \"skipped\": 1,\n \"softBounces\": 176,\n \"unsubscribed\": 1170\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"34ebfec8-ca13-4071-9f58-e116c00c6446","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]},{"id":"b2c77971-5a16-41bb-99c4-62a5707d47bb","name":"Return all your created SMS templates - default","request":{"urlPathTemplate":"/transactionalSMS/templates","method":"GET"},"response":{"status":200,"body":"{\n \"count\": 1,\n \"templates\": [\n {\n \"id\": 4,\n \"name\": \"Order Confirmation - EN\",\n \"short_url_enabled\": false,\n \"message\": \"Thanks for your order !\",\n \"compliance\": {\n \"compliance_toggle\": true,\n \"organisation_prefix\": \"BREVO\",\n \"stop_keyword\": \"STOP\"\n },\n \"encryption\": true,\n \"unicode_sms\": true,\n \"media_file\": \"brv-logo.png\",\n \"media_file_size\": \"media_file_size\",\n \"media_url\": \"https://img-st2.mailinblue.com/1232/images/content_library/original/69282fe28f55fd22de6e0cf9.png\",\n \"createdAt\": \"2025-05-01T12:30:00Z\",\n \"updatedAt\": \"2025-05-01T12:30:00Z\"\n }\n ]\n}","headers":{"Content-Type":"application/json"}},"uuid":"b2c77971-5a16-41bb-99c4-62a5707d47bb","persistent":true,"priority":3,"metadata":{"mocklab":{"created":{"at":"2020-01-01T00:00:00.000Z","via":"SYSTEM"}}},"postServeActions":[]}],"meta":{"total":282}}
\ No newline at end of file