Brevo

Email marketing and transactional email platform

developers.brevo.com ↗
Version
3.0.0
OpenAPI
3.0.1
Endpoints
227
Schemas
264
76
Quality
Updated
3 days ago
Email email marketing communications
Use this API in your AI agent

Query structured spec data via REST or MCP. Get exactly what your agent needs.

Get API Key

Server URLs

https://api.brevo.com/v3

Endpoints

Account 2 endpoints

GET /account
operationId: Account_informationDetails

Responses

200

account informations

GET /account
GET /organization/activities
operationId: Account_getUserActivityLogs

Parameters

Name In Required Type Description
startDate query optional string

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.

endDate query optional string

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.

limit query optional integer

Number of documents per page

offset query optional integer

Index of the first document in the page.

Responses

200

list of user activity logs

400

bad request

GET /organization/activities

Companies 7 endpoints

GET /companies
operationId: Companies_getAll

Parameters

Name In Required Type Description
filters query optional string

Filter by attrbutes. If you have filter for owner on your side please send it as {“attributes.owner”:”6299dcf3874a14eacbc65c46”}

linkedContactsIds query optional integer

Filter by linked contacts ids

linkedDealsIds query optional string

Filter by linked Deals ids

page query optional integer

Index of the first document of the page

limit query optional integer

Number of documents per page

sort query optional string

Sort the results in the ascending/descending order. Default order is descending by creation if sort is not passed

sortBy query optional string

The field used to sort field names.

Responses

200

Returns companies list with filters

400

Returned when query params are invalid

GET /companies
POST /companies
operationId: Companies_createCompany

Request Body

required

Company create data.

application/json
schema CompaniesCreateCompanyRequest
Property Type Required
name string required
attributes object optional
countryCode integer optional

Responses

200

Created new Company

400

Returned when invalid data posted

POST /companies
GET /companies/attributes
operationId: Companies_getAttributes

Responses

200

Returns list of company attributes

GET /companies/attributes
PATCH /companies/link-unlink/{id}
operationId: Companies_linkUnlinkWithContactDeal

Parameters

Name In Required Type Description
id path required string

Request Body

required

Linked / Unlinked contacts and deals ids.

application/json
schema CompaniesLinkUnlinkWithContactDealRequest
Property Type Required
linkDealsIds array optional
linkContactIds array optional
unlinkDealsIds array optional
unlinkContactIds array optional

Responses

204

Successfully linked/unlinked contacts/deals with the company.

400

Returned when query params are invalid or invalid data provided in request.

PATCH /companies/link-unlink/{id}
DELETE /companies/{id}
operationId: Companies_deleteCompany

Parameters

Name In Required Type Description
id path required string

Company ID to delete

Responses

204

When company deleted

400

Returned when invalid data posted

404

Returned when item not found

DELETE /companies/{id}
GET /companies/{id}
operationId: Companies_getCompanyById

Parameters

Name In Required Type Description
id path required string

Get Company Details

Responses

200

Returns the Company

400

Returned when invalid data posted

404

Returned when item not found

GET /companies/{id}
PATCH /companies/{id}
operationId: Companies_updateCompany

Parameters

Name In Required Type Description
id path required string

Request Body

required

Updated company details.

application/json
schema CompaniesUpdateCompanyRequest
Property Type Required
name string optional
attributes object optional
countryCode integer optional

Responses

200

Company updated successfully

400

Returned when invalid data posted

404

Returned when company id is not found

PATCH /companies/{id}

Contacts 29 endpoints

GET /contacts
operationId: Contacts_getAllContacts

Parameters

Name In Required Type Description
limit query optional integer

Number of documents per page

offset query optional integer

Index of the first document of the page

modifiedSince query optional string

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.

createdSince query optional string

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 query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

segmentId query optional integer

Id of the segment. Either listIds or segmentId can be passed.

listIds query optional array

Ids of the list. Either listIds or segmentId can be passed.

Responses

200

All contacts listed

400

bad request

GET /contacts
POST /contacts
operationId: Contacts_createNewContact

Request Body

required

Values to create a contact

application/json
schema createContact
Property Type Required
email string optional
ext_id string optional
listIds array optional
attributes object optional
updateEnabled boolean optional
smsBlacklisted boolean optional
emailBlacklisted boolean optional
smtpBlacklistSender array optional

Responses

201

Contact created

204

Contact updated

400

bad request

POST /contacts
GET /contacts/attributes
operationId: Contacts_listAttributes

Responses

200

Attributes listed

GET /contacts/attributes
DELETE /contacts/attributes/{attributeCategory}/{attributeName}
operationId: Contacts_removeAttribute

Parameters

Name In Required Type Description
attributeCategory path required string

Category of the attribute

attributeName path required string

Name of the existing attribute

Responses

204

Attribute deleted

400

bad request

404

Attribute not found

DELETE /contacts/attributes/{attributeCategory}/{attributeName}
POST /contacts/attributes/{attributeCategory}/{attributeName}
operationId: Contacts_createAttribute

Parameters

Name In Required Type Description
attributeCategory path required string

Category of the attribute

attributeName path required string

Name of the attribute

Request Body

required

Values to create an attribute

application/json
schema createAttribute
Property Type Required
type string optional
value string optional
enumeration array optional
label string required
value integer required
isRecurring boolean optional

Responses

201

Attribute created

400

bad request

POST /contacts/attributes/{attributeCategory}/{attributeName}
PUT /contacts/attributes/{attributeCategory}/{attributeName}
operationId: Contacts_updateAttribute

Parameters

Name In Required Type Description
attributeCategory path required string

Category of the attribute

attributeName path required string

Name of the existing attribute

Request Body

required

Values to update an attribute

application/json
schema updateAttribute
Property Type Required
value string optional
enumeration array optional
label string required
value integer required

Responses

204

Attribute updated

400

bad request

404

Attribute not found

PUT /contacts/attributes/{attributeCategory}/{attributeName}
POST /contacts/batch
operationId: Contacts_updateMultiple

Request Body

required

Values to update multiple contacts

application/json
schema updateBatchContacts
Property Type Required
contacts array optional
id integer optional
sms string optional
email string optional
ext_id string optional
listIds array optional
attributes object optional
unlinkListIds array optional
smsBlacklisted boolean optional
emailBlacklisted boolean optional
smtpBlacklistSender array optional

Responses

204

All contacts updated

400

bad request

POST /contacts/batch
POST /contacts/doubleOptinConfirmation
operationId: Contacts_createDoubleOptInContact

Request Body

required

Values to create the Double opt-in (DOI) contact

application/json
schema createDoiContact
Property Type Required
email string required
attributes object optional
templateId integer required
excludeListIds array optional
includeListIds array required
redirectionUrl string required

Responses

201

DOI Contact created

204

DOI Contact updated

400

bad request

POST /contacts/doubleOptinConfirmation
POST /contacts/export

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.

operationId: Contacts_exportProcessId

Request Body

required

Values to request a contact export

application/json
schema requestContactExport
Property Type Required
notifyUrl string optional
exportAttributes array optional
customContactFilter object required
listId integer optional
smsCampaignId integer optional
emailCampaignId integer optional
actionForContacts string optional
actionForSmsCampaigns string optional
actionForEmailCampaigns string optional

Responses

202
400

bad request

POST /contacts/export
GET /contacts/folders
operationId: Contacts_getAllFolders

Parameters

Name In Required Type Description
limit query required integer

Number of documents per page

offset query required integer

Index of the first document of the page

sort query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

Responses

200

Folders informations

400

bad request

GET /contacts/folders
POST /contacts/folders
operationId: Contacts_createFolder

Request Body

required

Name of the folder

application/json
schema createUpdateFolder
Property Type Required
name string optional

Responses

201
400

bad request

POST /contacts/folders
DELETE /contacts/folders/{folderId}
operationId: Contacts_deleteFolder

Parameters

Name In Required Type Description
folderId path required integer

Id of the folder

Responses

204

Folder deleted

400

bad request

404

Folder ID not found

DELETE /contacts/folders/{folderId}
GET /contacts/folders/{folderId}
operationId: Contacts_getFolderDetails

Parameters

Name In Required Type Description
folderId path required integer

id of the folder

Responses

200

Folder details

400

bad request

404

Folder ID not found

GET /contacts/folders/{folderId}
PUT /contacts/folders/{folderId}
operationId: Contacts_updateFolder

Parameters

Name In Required Type Description
folderId path required integer

Id of the folder

Request Body

required

Name of the folder

application/json
schema createUpdateFolder
Property Type Required
name string optional

Responses

204

Folder updated

400

bad request

404

Folder ID not found

PUT /contacts/folders/{folderId}
GET /contacts/folders/{folderId}/lists
operationId: Contacts_getFolderLists

Parameters

Name In Required Type Description
folderId path required integer

Id of the folder

limit query optional integer

Number of documents per page

offset query optional integer

Index of the first document of the page

sort query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

Responses

200

Folder’s Lists details

400

bad request

404

Folder ID not found

GET /contacts/folders/{folderId}/lists
POST /contacts/import

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.
operationId: Contacts_importContactsProcess

Request Body

required

Values to import contacts in Brevo. To know more about the expected format, please have a look at https://help.brevo.com/hc/en-us/articles/209499265-Build-contacts-lists-for-your-email-marketing-campaigns

application/json
schema requestContactImport
Property Type Required
fileUrl string optional
listIds array optional
newList object optional
folderId integer optional
listName string optional
fileBody string optional
jsonBody array optional
email string optional
attributes object optional
notifyUrl string optional
smsBlacklist boolean optional
emailBlacklist boolean optional
disableNotification boolean optional
updateExistingContacts boolean optional
emptyContactsAttributes boolean optional

Responses

202
400

bad request

POST /contacts/import
GET /contacts/lists
operationId: Contacts_getAllLists

Parameters

Name In Required Type Description
limit query optional integer

Number of documents per page

offset query optional integer

Index of the first document of the page

sort query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

Responses

200

Lists informations

400

bad request

GET /contacts/lists
POST /contacts/lists
operationId: Contacts_createList

Request Body

required

Values to create a list

application/json
schema createList
Property Type Required
name string required
folderId integer required

Responses

201
400

bad request

POST /contacts/lists
DELETE /contacts/lists/{listId}
operationId: Contacts_deleteList

Parameters

Name In Required Type Description
listId path required integer

Id of the list

Responses

204

List deleted

400

bad request

404

List ID not found

DELETE /contacts/lists/{listId}
GET /contacts/lists/{listId}
operationId: Contacts_getListDetails

Parameters

Name In Required Type Description
listId path required integer

Id of the list

startDate query optional string

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

endDate query optional string

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

Responses

200

List informations

400

bad request

404

List ID not found

GET /contacts/lists/{listId}
PUT /contacts/lists/{listId}
operationId: Contacts_updateList

Parameters

Name In Required Type Description
listId path required integer

Id of the list

Request Body

required

Values to update a list

application/json
schema updateList
Property Type Required
name string optional
folderId integer optional

Responses

204

List updated

400

bad request

404

List ID not found

PUT /contacts/lists/{listId}
GET /contacts/lists/{listId}/contacts
operationId: Contacts_getListContacts

Parameters

Name In Required Type Description
listId path required integer

Id of the list

modifiedSince query optional string

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 query optional integer

Number of documents per page

offset query optional integer

Index of the first document of the page

sort query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

Responses

200

Contact informations

400

bad request

404

List ID not found

GET /contacts/lists/{listId}/contacts
POST /contacts/lists/{listId}/contacts/add
operationId: Contacts_addToList

Parameters

Name In Required Type Description
listId path required integer

Id of the list

Request Body

required

Emails addresses OR IDs of the contacts

application/json
schema ContactsAddToListRequest

Responses

201

All contacts have been added successfully to the list with details of failed ones

400

bad request

404

List ID not found

POST /contacts/lists/{listId}/contacts/add
POST /contacts/lists/{listId}/contacts/remove
operationId: Contacts_removeContactFromList

Parameters

Name In Required Type Description
listId path required integer

Id of the list

Request Body

required

Emails adresses OR IDs of the contacts OR ‘all’ true

application/json
schema ContactsRemoveContactFromListRequest

Responses

201

All contacts have been removed successfully from the list with details of failed ones

400

bad request

404

List ID not found

POST /contacts/lists/{listId}/contacts/remove
GET /contacts/segments
operationId: Contacts_getAllSegments

Parameters

Name In Required Type Description
limit query optional integer

Number of documents per page

offset query optional integer

Index of the first document of the page

sort query optional string

Sort the results in the ascending/descending order of record creation. Default order is descending if sort is not passed

Responses

200

Segments informations

400

bad request

GET /contacts/segments
DELETE /contacts/{identifier}
operationId: Contacts_deleteContact

Parameters

Name In Required Type Description
identifier path required

Email (urlencoded) OR ID of the contact

Responses

204

Contact deleted

400

bad request

404

Contact not found

405

You’re not allowed to delete registered email contact with Brevo

DELETE /contacts/{identifier}
GET /contacts/{identifier}

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.

operationId: Contacts_getDetails

Parameters

Name In Required Type Description
identifier path required

Email (urlencoded) OR ID of the contact OR its SMS attribute value

startDate query optional string

Mandatory if endDate is used. Starting date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be lower than equal to endDate

endDate query optional string

Mandatory if startDate is used. Ending date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be greater than equal to startDate.

Responses

200

Contact informations

400

bad request

404

Contact’s email not found

GET /contacts/{identifier}
PUT /contacts/{identifier}
operationId: Contacts_updateContactById

Parameters

Name In Required Type Description
identifier path required

Email (urlencoded) OR ID of the contact

Request Body

required

Values to update a contact

application/json
schema updateContact
Property Type Required
ext_id string optional
listIds array optional
attributes object optional
unlinkListIds array optional
smsBlacklisted boolean optional
emailBlacklisted boolean optional
smtpBlacklistSender array optional

Responses

204

Contact updated

400

bad request

404

Contact’s email not found

PUT /contacts/{identifier}
GET /contacts/{identifier}/campaignStats
operationId: Contacts_getEmailCampaignStats

Parameters

Name In Required Type Description
identifier path required

Email (urlencoded) OR ID of the contact

startDate query optional string

Mandatory if endDate is used. Starting date (YYYY-MM-DD) of the statistic events specific to campaigns. Must be lower than equal to endDate

endDate query optional string

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

Responses

200

Contact campaign statistics informations

400

bad request

404

Contact’s email not found

GET /contacts/{identifier}/campaignStats

Conversations 9 endpoints

POST /conversations/agentOnlinePing

We recommend pinging this endpoint every minute for as long as the agent has to be considered online.

operationId: Conversations_setAgentOnlineStatus

Request Body

required
application/json
schema ConversationsSetAgentOnlineStatusRequest
Property Type Required
agentId object optional
agentName object optional
agentEmail object optional
receivedFrom object optional

Responses

201

Status of the agent was set successfully. Response body will be empty.

400

Returned when invalid data posted

POST /conversations/agentOnlinePing
POST /conversations/messages
operationId: Conversations_sendMessageAsAgent

Request Body

required
application/json
schema ConversationsSendMessageAsAgentRequest
Property Type Required
text object required
agentId object optional
agentName object optional
visitorId object required
agentEmail object optional
receivedFrom object optional

Responses

200

Newly created message is returned as a response

400

Returned when invalid data posted

POST /conversations/messages
DELETE /conversations/messages/{id}

Only agents’ messages can be deleted.

operationId: Conversations_deleteMessageSentByAgent

Parameters

Name In Required Type Description
id path required string

ID of the message

Responses

204

The message was deleted from the conversation

400

Returned when invalid data posted

404

Returned when item not found

DELETE /conversations/messages/{id}
GET /conversations/messages/{id}
operationId: Conversations_getMessageById

Parameters

Name In Required Type Description
id path required string

ID of the message

Responses

200

Requested message is returned as a response

400

Returned when invalid data posted

404

Returned when item not found

GET /conversations/messages/{id}
PUT /conversations/messages/{id}

Only agents’ messages can be edited.

operationId: Conversations_updateAgentMessage

Parameters

Name In Required Type Description
id path required string

ID of the message

Request Body

required
application/json
schema ConversationsUpdateAgentMessageRequest
Property Type Required
text string required

Responses

200

Updated message is returned as a response

400

Returned when invalid data posted

404

Returned when item not found

PUT /conversations/messages/{id}
POST /conversations/pushedMessages

Example of automated messages: order status, announce new features in your web app, etc.

operationId: Conversations_sendAutomatedMessage

Request Body

required
application/json
schema ConversationsSendAutomatedMessageRequest
Property Type Required
text object required
agentId object optional
groupId object optional
visitorId object required

Responses

200

Newly created message is returned as a response

400

Returned when invalid data posted

POST /conversations/pushedMessages
DELETE /conversations/pushedMessages/{id}
operationId: Conversations_deleteAutomatedMessage

Parameters

Name In Required Type Description
id path required string

ID of the message

Responses

204

The message was deleted from the conversation

400

Returned when invalid data posted

404

Returned when item not found

DELETE /conversations/pushedMessages/{id}
GET /conversations/pushedMessages/{id}
operationId: Conversations_getAutomatedMessage

Parameters

Name In Required Type Description
id path required string

ID of the message sent previously

Responses

200

Requested message is returned as a response

400

Returned when invalid data posted

404

Returned when item not found

GET /conversations/pushedMessages/{id}
PUT /conversations/pushedMessages/{id}
operationId: Conversations_updatePushedMessage

Parameters

Name In Required Type Description
id path required string

ID of the message

Request Body

required
application/json
schema ConversationsUpdatePushedMessageRequest
Property Type Required
text string required

Responses

200

Updated message is returned as a response

400

Returned when invalid data posted

404

Returned when item not found

PUT /conversations/pushedMessages/{id}

Coupons 3 endpoints

GET /couponCollections
operationId: Coupons_listCouponCollections

Parameters

Name In Required Type Description
limit query optional integer

Number of documents returned per page

offset query optional integer

Index of the first document on the page

sort query optional string

Sort the results by creation time in ascending/descending order

sortBy query optional string

The field used to sort coupon collections

Responses

200

Coupon collections

400

bad request

401

unauthorized

GET /couponCollections
POST /couponCollections
operationId: Coupons_createCollection

Request Body

required

Values to create a coupon collection

application/json
schema CouponsCreateCollectionRequest
Property Type Required
name string required
defaultCoupon string required
expirationDate string optional
remainingDaysAlert integer optional
remainingCouponsAlert integer optional

Responses

201

Coupon collection created

400

bad request

401

unauthorized

POST /couponCollections
GET /couponCollections/{id}
operationId: Coupons_getById

Parameters

Name In Required Type Description
id path required string

Id of the collection to return

Responses

200

Coupon collection

400

bad request

401

unauthorized

404

Coupon collection not found

GET /couponCollections/{id}

Schemas

object CompaniesCreateCompanyRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "company",
      "description": "Name of company"
    },
    "attributes": {
      "type": "object",
      "example": {
        "owner": "60e68d60582a3b006f524197",
        "domain": "https://example.com",
        "industry": "Fabric"
      },
      "description": "Attributes for company creation"
    },
    "countryCode": {
      "type": "integer",
      "format": "int64",
      "example": 91,
      "description": "Country code if phone_number is passed in attributes."
    }
  }
}
object CompaniesCreateCompanyResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "61a5cd07ca1347c82306ad06",
      "description": "Unique company id"
    }
  },
  "description": "Created company id"
}
object CompaniesLinkUnlinkWithContactDealRequest
{
  "type": "object",
  "properties": {
    "linkDealsIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045990",
        "61a5ce58c5d4795761045991",
        "61a5ce58c5d4795761045992"
      ],
      "description": "Deal ids for deals to be linked with company"
    },
    "linkContactIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        1,
        2,
        3
      ],
      "description": "Contact ids for contacts to be linked with company"
    },
    "unlinkDealsIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045994",
        "61a5ce58c5d479576104595",
        "61a5ce58c5d4795761045996"
      ],
      "description": "Deal ids for deals to be unlinked from company"
    },
    "unlinkContactIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        4,
        5,
        6
      ],
      "description": "Contact ids for contacts to be unlinked from company"
    }
  }
}
object CompaniesList
{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Company"
      },
      "description": "List of compaies"
    }
  },
  "description": "List of companies"
}
object CompaniesUpdateCompanyRequest
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "company",
      "description": "Name of company"
    },
    "attributes": {
      "type": "object",
      "example": {
        "date": "2022-05-04T00:00:00+05:30",
        "owner": "5b1a17d914b73d35a76ca0c7",
        "domain": "xyz",
        "revenue": 10000.34222,
        "category": "label_2",
        "industry": "flipkart",
        "phone_number": "81718441912",
        "number_of_contacts": 1,
        "number_of_employees": 100
      },
      "description": "Attributes for company update"
    },
    "countryCode": {
      "type": "integer",
      "format": "int64",
      "example": 91,
      "description": "Country code if phone_number is passed in attributes."
    }
  }
}
object Company
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "629475917295261d9b1f4403",
      "description": "Unique comoany id"
    },
    "attributes": {
      "type": "object",
      "example": {
        "name": "text",
        "owner": "62260474111b1101704a9d85",
        "domain": "xyz",
        "revenue": 10,
        "created_at": "2022-01-13T19:04:24.376+05:30",
        "phone_number": 8171844192,
        "last_updated_at": "2022-04-01T18:47:48.283+05:30",
        "owner_assign_date": "2022-04-01T18:21:13.379+05:30",
        "number_of_contacts": 0
      },
      "description": "Company attributes with values"
    },
    "linkedDealsIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "format": "objectID",
      "example": [
        "61a5ce58c5d4795761045990",
        "61a5ce58c5d4795761045991",
        "61a5ce58c5d4795761045992"
      ],
      "description": "Deals ids for companies linked to this company"
    },
    "linkedContactsIds": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "format": "in64",
      "example": [
        1,
        2,
        3
      ],
      "description": "Contact ids for contacts linked to this company"
    }
  },
  "description": "Company Details"
}
array CompanyAttributes
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "label": {
        "type": "string",
        "example": "Company Name"
      },
      "isRequired": {
        "type": "boolean",
        "example": true
      },
      "internalName": {
        "type": "string",
        "example": "name"
      },
      "attributeOptions": {
        "type": "array",
        "items": {
          "type": "object",
          "example": {
            "key": "custom key",
            "value": "custom label"
          }
        }
      },
      "attributeTypeName": {
        "type": "string",
        "example": "text"
      }
    },
    "description": "List of attributes"
  },
  "description": "List of company attributes"
}
object ContactsAddToListRequest
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/addContactToListByEmails"
    },
    {
      "$ref": "#/components/schemas/addContactToListByIDs"
    }
  ]
}
object ContactsRemoveContactFromListRequest
{
  "oneOf": [
    {
      "$ref": "#/components/schemas/removeContactFromListByEmails"
    },
    {
      "$ref": "#/components/schemas/removeContactFromListByIDs"
    },
    {
      "$ref": "#/components/schemas/removeContactFromListByAll"
    }
  ]
}
object ConversationsMessage
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "eYBEm3gq3zc5ayE2g",
      "description": "Message ID. It can be used for further manipulations with the message."
    },
    "file": {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "format": "url",
          "example": "https://ucarecdn.com/cee5c10c-8302-45c1-b1fb-43860ca941a9/",
          "description": "URL of the file"
        },
        "size": {
          "type": "integer",
          "format": "int64",
          "example": 15538,
          "minimum": 0,
          "description": "Size in bytes"
        },
        "isImage": {
          "type": "boolean",
          "example": true,
          "description": "Whether the file is an image"
        },
        "filename": {
          "type": "string",
          "example": "conversations.png",
          "description": "Name of the file"
        },
        "imageInfo": {
          "type": "object",
          "properties": {
            "width": {
              "type": "integer",
              "format": "int64",
              "example": 1129,
              "minimum": 0,
              "description": "Width of the image"
            },
            "height": {
              "type": "integer",
              "format": "int64",
              "example": 525,
              "minimum": 0,
              "description": "height of the image"
            },
            "previewUrl": {
              "type": "string",
              "format": "url",
              "example": "https://ucarecdn.com/03cd56cd-1de9-4f65-996d-08afdf27fa1b/-/preview/800x800/-/quality/lighter/",
              "description": "URL of the preview"
            }
          },
          "description": "image info is passed in case the file is an image"
        }
      }
    },
    "text": {
      "type": "string",
      "example": "Good morning! How can I help you?",
      "description": "Message text or name of the attached file"
    },
    "type": {
      "enum": [
        "agent",
        "visitor"
      ],
      "type": "string",
      "example": "agent",
      "description": "`\"agent\"` for agents’ messages, `\"visitor\"` for visitors’ messages."
    },
    "agentId": {
      "type": "string",
      "example": "d9nKoegKSjmCtyK78",
      "description": "ID of the agent on whose behalf the message was sent (only in messages sent by an agent)."
    },
    "isPushed": {
      "type": "boolean",
      "example": true,
      "description": "`true` for pushed messages"
    },
    "agentName": {
      "type": "string",
      "example": "Liz",
      "description": "Agent’s name as displayed to the visitor. Only in the messages sent by an agent."
    },
    "createdAt": {
      "type": "integer",
      "format": "int64",
      "example": 1470222622433,
      "minimum": 0,
      "description": "Timestamp in milliseconds."
    },
    "visitorId": {
      "type": "string",
      "example": "kZMvWhf8npAu3H6qd57w2Hv6nh6rnxvg",
      "description": "visitor’s ID"
    },
    "receivedFrom": {
      "type": "string",
      "example": "SuperAwesomeHelpdesk",
      "description": "In two-way integrations, messages sent via REST API can be marked with receivedFrom property and then filtered out when received in a webhook to avoid infinite loop."
    }
  },
  "description": "a Conversations message"
}
object ConversationsSendAutomatedMessageRequest
{
  "type": "object",
  "required": [
    "visitorId",
    "text"
  ],
  "properties": {
    "text": {
      "description": "message text"
    },
    "agentId": {
      "description": "agent ID. It can be found on agent’s page or received <a href=\"https://developers.brevo.com/docs/conversations-webhooks\">from a webhook</a>."
    },
    "groupId": {
      "description": "group ID. It can be found on group’s page."
    },
    "visitorId": {
      "description": "visitor’s ID received <a href=\"https://developers.brevo.com/docs/conversations-webhooks\">from a webhook</a> or generated by you to <a href=\"https://developers.brevo.com/docs/customize-the-widget#identifying-existing-users\">bind existing user account to Conversations</a>"
    }
  }
}
object ConversationsSendMessageAsAgentRequest
{
  "type": "object",
  "required": [
    "visitorId",
    "text"
  ],
  "properties": {
    "text": {
      "description": "message text"
    },
    "agentId": {
      "description": "agent ID. It can be found on agent’s page or received <a href=\"https://developers.brevo.com/docs/conversations-webhooks\">from a webhook</a>. Alternatively, you can use `agentEmail` + `agentName` + `receivedFrom` instead (all 3 fields required)."
    },
    "agentName": {
      "description": "agent name"
    },
    "visitorId": {
      "description": "visitor’s ID received <a href=\"https://developers.brevo.com/docs/conversations-webhooks\">from a webhook</a> or generated by you to <a href=\"https://developers.brevo.com/docs/customize-the-widget#identifying-existing-users\">bind existing user account to Conversations</a>"
    },
    "agentEmail": {
      "description": "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."
    },
    "receivedFrom": {
      "description": "mark your messages to distinguish messages created by you from the others."
    }
  }
}
object ConversationsSetAgentOnlineStatusRequest
{
  "type": "object",
  "properties": {
    "agentId": {
      "description": "agent ID. It can be found on agent’s page or received <a href=\"https://developers.brevo.com/docs/conversations-webhooks\">from a webhook</a>. Alternatively, you can use `agentEmail` + `agentName` + `receivedFrom` instead (all 3 fields required)."
    },
    "agentName": {
      "description": "agent name"
    },
    "agentEmail": {
      "description": "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."
    },
    "receivedFrom": {
      "description": "mark your messages to distinguish messages created by you from the others."
    }
  }
}
object ConversationsUpdateAgentMessageRequest
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "description": "edited message text"
    }
  }
}
object ConversationsUpdatePushedMessageRequest
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "text": {
      "type": "string",
      "description": "edited message text"
    }
  }
}
object ConversionSourceMetrics
{
  "type": "object",
  "required": [
    "id",
    "conversionSource",
    "ordersCount",
    "revenue",
    "averageBasket"
  ],
  "properties": {
    "id": {
      "type": "number",
      "format": "integer"
    },
    "revenue": {
      "type": "number",
      "format": "float"
    },
    "ordersCount": {
      "type": "number",
      "format": "integer"
    },
    "averageBasket": {
      "type": "number",
      "format": "float"
    },
    "conversionSource": {
      "enum": [
        "email_campaign"
      ],
      "type": "string"
    }
  }
}
object ConversionSourceProduct
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "1"
    },
    "sku": {
      "type": "string",
      "example": "sku-1"
    },
    "url": {
      "type": "string",
      "example": "https://mydomain.com/products/alpina-panoma-classic"
    },
    "name": {
      "type": "string",
      "example": "Milky Way Galaxy"
    },
    "price": {
      "type": "number",
      "format": "float",
      "example": 1000
    },
    "revenue": {
      "type": "number",
      "format": "float",
      "example": 999.99
    },
    "imageUrl": {
      "type": "string",
      "example": "http://mydomain.com/product-absoulte-url/img.jpeg"
    },
    "ordersCount": {
      "type": "integer",
      "example": 200
    }
  }
}
object CouponsCreateCollectionRequest
{
  "type": "object",
  "required": [
    "name",
    "defaultCoupon"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "10%OFF",
      "description": "Name of the coupons collection"
    },
    "defaultCoupon": {
      "type": "string",
      "example": "Winter",
      "description": "Default coupons collection name"
    },
    "expirationDate": {
      "type": "string",
      "format": "date-time",
      "example": "2022-01-02T00:00:00Z",
      "description": "Specify an expiration date for the coupon collection in RFC3339 format. Use null to remove the expiration date."
    },
    "remainingDaysAlert": {
      "type": "integer",
      "example": 5,
      "description": "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."
    },
    "remainingCouponsAlert": {
      "type": "integer",
      "example": 5,
      "description": "Send a notification alert (email) when the remaining coupons count is equal or fall bellow this number. Use null to disable alerts."
    }
  }
}
object CouponsCreateCollectionResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuidv4",
      "example": "23befbae-1505-47a8-bd27-e30ef739f32c",
      "description": "The id of the created collection"
    }
  }
}
object CouponsCreateCouponCollectionRequest
{
  "type": "object",
  "required": [
    "collectionId",
    "coupons"
  ],
  "properties": {
    "coupons": {
      "type": "array",
      "items": {
        "type": "string",
        "example": "Uf12AF",
        "description": "Name of the coupon"
      },
      "maxItems": 1000,
      "minItems": 1,
      "uniqueItems": true
    },
    "collectionId": {
      "type": "string",
      "format": "uuidv4",
      "example": "23befbae-1505-47a8-bd27-e30ef739f32c",
      "description": "The id of the coupon collection for which the coupons will be created"
    }
  }
}
object CouponsUpdateCouponCollectionByIdRequest
{
  "type": "object",
  "properties": {
    "defaultCoupon": {
      "type": "string",
      "example": "10 OFF",
      "description": "A default coupon to be used in case there are no coupons left"
    },
    "expirationDate": {
      "type": "string",
      "format": "date-time",
      "example": "2024-01-01T00:00:00Z",
      "description": "Specify an expiration date for the coupon collection in RFC3339 format. Use null to remove the expiration date."
    },
    "remainingDaysAlert": {
      "type": "integer",
      "example": 5,
      "description": "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."
    },
    "remainingCouponsAlert": {
      "type": "integer",
      "example": 5,
      "description": "Send a notification alert (email) when the remaining coupons count is equal or fall bellow this number. Use null to disable alerts."
    }
  }
}
object CouponsUpdateCouponCollectionByIdResponse
{
  "type": "object",
  "required": [
    "id",
    "name",
    "defaultCoupon"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuidv4",
      "example": "23befbae-1505-47a8-bd27-e30ef739f32c",
      "description": "The id of the collection"
    },
    "name": {
      "type": "string",
      "format": "uuidv4",
      "example": "SummerPromotions",
      "description": "The name of the collection"
    },
    "defaultCoupon": {
      "type": "string",
      "example": "10 OFF",
      "description": "The default coupon of the collection"
    }
  }
}
object Deal
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "example": "629475917295261d9b1f4403",
      "description": "Unique deal id"
    },
    "attributes": {
      "type": "object",
      "example": {
        "amount": 12,
        "pipeline": "6093d296ad1e9c5cf2140a58",
        "deal_name": "testname",
        "created_at": "2022-05-30T07:42:05.671Z",
        "deal_owner": "6093d2425a9b436e9519d034",
        "deal_stage": "9e577ff7-8e42-4ab3-be26-2b5e01b42518",
        "stage_updated_at": "2022-05-30T07:42:05.671Z",
        "last_updated_date": "2022-06-06T08:38:36.761Z",
        "last_activity_date": "2022-06-06T08:38:36.000Z",
        "next_activity_date": null,
        "number_of_contacts": 1,
        "number_of_activities": 0
      },
      "description": "Deal attributes with values"
    },
    "linkedContactsIds": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "example": [
        1,
        2,
        3
      ],
      "description": "Contact ids for contacts linked to this deal"
    },
    "linkedCompaniesIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045990",
        "61a5ce58c5d4795761045991",
        "61a5ce58c5d4795761045992"
      ],
      "description": "Companies ids for companies linked to this deal"
    }
  },
  "description": "Deal Details"
}
array DealAttributes
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "label": {
        "type": "string",
        "example": "Deal Name"
      },
      "isRequired": {
        "type": "boolean",
        "example": true
      },
      "internalName": {
        "type": "string",
        "example": "deal_name"
      },
      "attributeOptions": {
        "type": "array",
        "items": {
          "type": "object",
          "example": {
            "key": "custom key",
            "value": "custom label"
          }
        }
      },
      "attributeTypeName": {
        "type": "string",
        "example": "text"
      }
    },
    "description": "List of attributes"
  },
  "description": "List of deal attributes"
}
object DealsCreateNewDealRequest
{
  "type": "object",
  "required": [
    "name"
  ],
  "properties": {
    "name": {
      "type": "string",
      "example": "Deal: Connect with company",
      "description": "Name of deal"
    },
    "attributes": {
      "type": "object",
      "example": {
        "amount": 12,
        "deal_owner": "6093d2425a9b436e9519d034"
      },
      "description": "Attributes for deal creation\n\nTo assign owner of a Deal you can send attributes.deal_owner and utilize the account email or ID.\n\nIf you want to create a deal on a specific pipeline and stage you can use the following attributes `pipeline` and `deal_stage`.\n\nPipeline and deal_stage are ids you can fetch using this endpoint `/crm/pipeline/details/{pipelineID}`\n"
    }
  }
}
object DealsCreateNewDealResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "61a5cd07ca1347c82306ad06",
      "description": "Unique deal id"
    }
  },
  "description": "Created deal id"
}
object DealsLinkUnlinkPatchRequest
{
  "type": "object",
  "properties": {
    "linkCompanyIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045990",
        "61a5ce58c5d4795761045991",
        "61a5ce58c5d4795761045992"
      ],
      "description": "Company ids to be linked with deal"
    },
    "linkContactIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        1,
        2,
        3
      ],
      "description": "Contact ids for contacts to be linked with deal"
    },
    "unlinkCompanyIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045994",
        "61a5ce58c5d479576104595",
        "61a5ce58c5d4795761045996"
      ],
      "description": "Company ids to be unlinked from deal"
    },
    "unlinkContactIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        4,
        5,
        6
      ],
      "description": "Contact ids for contacts to be unlinked from deal"
    }
  }
}
object DealsList
{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/Deal"
      },
      "description": "List of deals"
    }
  },
  "description": "List of Deals"
}
object DealsUpdateDealByIdRequest
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "Deal: Connect with client",
      "description": "Name of deal"
    },
    "attributes": {
      "type": "object",
      "example": {
        "amount": 12,
        "deal_owner": "6093d2425a9b436e9519d034"
      },
      "description": "Attributes for deal update\n\nTo assign owner of a Deal you can send attributes.deal_owner and utilize the account email or ID.\n\nIf you wish to update the pipeline of a deal you need to provide the `pipeline` and the `deal_stage`\n\nPipeline and deal_stage are ids you can fetch using this endpoint `/crm/pipeline/details/{pipelineID}`\n"
    }
  }
}
object EcommerceGetAttributedProductSalesResponse
{
  "type": "object",
  "required": [
    "products"
  ],
  "properties": {
    "products": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ConversionSourceProduct",
        "type": "object"
      },
      "description": "List of attributed products"
    }
  }
}
object EcommerceGetAttributionMetrics200Response
{
  "allOf": [
    {
      "$ref": "#/components/schemas/ConversionSourceMetrics"
    },
    {
      "type": "object",
      "required": [
        "newCustomersCount"
      ],
      "properties": {
        "newCustomersCount": {
          "type": "number",
          "format": "integer"
        }
      }
    }
  ]
}
object EcommerceGetAttributionMetricsResponse
{
  "type": "object",
  "required": [
    "results",
    "totals"
  ],
  "properties": {
    "totals": {
      "type": "object",
      "example": {
        "revenue": 1700,
        "ordersCount": 500,
        "averageBasket": 3.4
      },
      "required": [
        "ordersCount",
        "revenue",
        "averageBasket"
      ],
      "properties": {
        "revenue": {
          "type": "number",
          "format": "float"
        },
        "ordersCount": {
          "type": "number",
          "format": "integer"
        },
        "averageBasket": {
          "type": "number",
          "format": "float"
        }
      },
      "description": "Attribution list aggregated totals"
    },
    "results": {
      "type": "array",
      "items": {
        "$ref": "#/components/schemas/ConversionSourceMetrics",
        "type": "object"
      },
      "example": [
        {
          "id": 2,
          "revenue": 900,
          "ordersCount": 300,
          "averageBasket": 3,
          "conversionSource": "email_campaign"
        },
        {
          "id": 1,
          "revenue": 800,
          "ordersCount": 200,
          "averageBasket": 4,
          "conversionSource": "email_campaign"
        }
      ],
      "description": "List of conversion attribution metrics"
    }
  }
}
object EcommerceGetOrdersResponse
{
  "type": "object",
  "example": {
    "count": 1,
    "orders": [
      {
        "id": "order1803X",
        "email": "testvisitor@sendinblue.com",
        "amount": 2000,
        "status": "complete",
        "billing": {
          "city": "Noida",
          "phone": 9238283982,
          "region": "North India",
          "address": "Sec 62, Noida",
          "postCode": 110001,
          "countryCode": "IN",
          "paymentMethod": "Net banking"
        },
        "coupons": [
          "flat50",
          "flat40"
        ],
        "products": [
          {
            "price": 100,
            "quantity": 2,
            "productId": 21,
            "variantId": "P100"
          },
          {
            "price": 100,
            "quantity": 2,
            "productId": 21,
            "variantId": "P15756"
          }
        ],
        "createdAt": "2021-12-31T11:42:35.638Z",
        "updatedAt": "2022-03-03T14:48:31.867Z",
        "contact_id": 2
      }
    ]
  },
  "properties": {
    "count": {
      "type": "number",
      "example": 1
    },
    "orders": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "example": "order1803"
          },
          "email": {
            "type": "string",
            "example": "testvisitor@sendinblue.com"
          },
          "amount": {
            "type": "number",
            "example": 2000
          },
          "status": {
            "type": "string",
            "example": "complete"
          },
          "billing": {
            "type": "object",
            "properties": {
              "city": {
                "type": "string",
                "example": "Noida"
              },
              "phone": {
                "type": "number",
                "example": 9238283982
              },
              "region": {
                "type": "string",
                "example": "North India"
              },
              "address": {
                "type": "string",
                "example": "Sec 62, Noida"
              },
              "postCode": {
                "type": "number",
                "example": 110001
              },
              "countryCode": {
                "type": "string",
                "example": "IN"
              },
              "paymentMethod": {
                "type": "string",
                "example": "Net banking"
              }
            }
          },
          "coupons": {
            "type": "array",
            "items": {
              "type": "string",
              "example": "flat50"
            }
          },
          "products": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "price": {
                  "type": "number",
                  "example": 100
                },
                "quantity": {
                  "type": "number",
                  "example": 2
                },
                "productId": {
                  "type": "number",
                  "example": 21
                },
                "variantId": {
                  "type": "string",
                  "example": "P100"
                }
              }
            }
          },
          "createdAt": {
            "type": "string",
            "example": "2021-12-31T11:42:35.638Z"
          },
          "updatedAt": {
            "type": "string",
            "example": "2022-03-03T14:48:31.867Z"
          },
          "contact_id": {
            "type": "number",
            "example": 2
          }
        }
      }
    }
  }
}
object ExternalFeedsCreateFeedResponse
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuidv4",
      "example": "23befbae-1505-47a8-bd27-e30ef739f32c",
      "description": "ID of the object created"
    }
  }
}
object FileData
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "example": "example.png",
      "description": "Name of uploaded file"
    },
    "size": {
      "type": "integer",
      "format": "int64",
      "example": 10,
      "description": "Size of file in bytes"
    },
    "dealId": {
      "type": "string",
      "example": "61a5ce58c5d4795761045991",
      "description": "Deal id linked to a file"
    },
    "authorId": {
      "type": "string",
      "example": "61a5ce58y5d4795761045991",
      "description": "Account id of user which created the file"
    },
    "companyId": {
      "type": "string",
      "example": "61a5ce58c5d4795761045991",
      "description": "Company id linked to a file"
    },
    "contactId": {
      "type": "integer",
      "format": "int64",
      "example": 1,
      "description": "Contact id of contact on which file is uploaded"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "example": "2017-05-01T17:05:03.000Z",
      "description": "File created date/time"
    }
  },
  "description": "File data that is uploaded"
}
object FileDownloadableLink
{
  "type": "object",
  "properties": {
    "fileUrl": {
      "type": "string",
      "example": "https://storage.googleapis.com/brevo-app-crm.......-sample.pdf",
      "description": "A unique link to download the requested file."
    }
  },
  "description": "Downloadable file link"
}
array FileList
{
  "type": "array",
  "items": {
    "$ref": "#/components/schemas/FileData"
  },
  "description": "List of files"
}
object FilesUploadFileRequest
{
  "type": "object",
  "required": [
    "file"
  ],
  "properties": {
    "file": {
      "type": "string",
      "format": "binary",
      "description": "File data to create a file."
    },
    "dealId": {
      "type": "string"
    },
    "companyId": {
      "type": "string"
    },
    "contactId": {
      "type": "integer",
      "format": "int64"
    }
  }
}
string InboundParsingGetAttachmentByTokenResponse
{
  "type": "string",
  "format": "binary"
}
object MasterAccountCreateGroupOfSubAccountsRequest
{
  "type": "object",
  "required": [
    "groupName"
  ],
  "properties": {
    "groupName": {
      "type": "string",
      "example": "My group",
      "description": "The name of the group of sub-accounts"
    },
    "subAccountIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        234322,
        325553,
        893432
      ],
      "description": "Pass the list of sub-account Ids to be included in the group"
    }
  }
}
object MasterAccountCreateGroupOfSubAccountsResponse
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    }
  }
}
object MasterAccountCreateSubAccountKeyRequest
{
  "type": "object",
  "required": [
    "id",
    "name"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64",
      "example": 3232323,
      "description": "Id of the sub-account organization"
    },
    "name": {
      "type": "string",
      "example": "My Api Key",
      "description": "Name of the API key"
    }
  }
}
object MasterAccountGenerateSsoTokenRequest
{
  "type": "object",
  "required": [
    "email"
  ],
  "properties": {
    "email": {
      "type": "string",
      "example": "vipin+ent-user@brevo.com",
      "description": "User email of admin account"
    }
  }
}
object MasterAccountGenerateSsoTokenRequest1
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "format": "int64",
      "example": 3232323,
      "description": "Id of the sub-account organization"
    },
    "url": {
      "type": "string",
      "example": "https://app.brevo.com/senders/domain/list",
      "description": "Set the full target URL after login success. The user will land directly on this target URL after login"
    },
    "email": {
      "type": "string",
      "example": "vipin+subaccount@brevo.com",
      "description": "User email of sub-account organization"
    },
    "target": {
      "enum": [
        "automation",
        "email_campaign",
        "contacts",
        "landing_pages",
        "email_transactional",
        "senders",
        "sms_campaign",
        "sms_transactional"
      ],
      "type": "string",
      "example": "contacts",
      "description": "**Set target after login success**\n* **automation** - Redirect to Automation after login\n* **email_campaign** - Redirect to Email Campaign after login\n* **contacts** - Redirect to Contacts after login\n* **landing_pages** - Redirect to Landing Pages after login\n* **email_transactional** - Redirect to Email Transactional after login\n* **senders** - Redirect to Senders after login\n* **sms_campaign** - Redirect to Sms Campaign after login\n* **sms_transactional** - Redirect to Sms Transactional after login\n"
    }
  }
}
array MasterAccountListGroupsResponse
{
  "type": "array",
  "items": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "Unique id of the group"
      },
      "groupName": {
        "type": "string",
        "description": "The name of the group of sub-accounts"
      }
    }
  }
}
object MasterAccountResendCancelAdminUserInvitationResponse
{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "description": "Action success message"
    }
  }
}
object MasterAccountSendInvitationToAdminUserResponse
{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    }
  }
}
object MasterAccountUnlinkSubAccountFromGroupRequest
{
  "type": "object",
  "required": [
    "subAccountIds"
  ],
  "properties": {
    "subAccountIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        423432,
        234323,
        87678
      ],
      "description": "List of sub-account ids"
    }
  }
}
object MasterAccountUpdateGroupSubAccountsRequest
{
  "type": "object",
  "properties": {
    "groupName": {
      "type": "string",
      "example": "My group",
      "description": "The name of the group of sub-accounts"
    },
    "subAccountIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "format": "int64"
      },
      "example": [
        234322,
        325553,
        893432
      ],
      "description": "Pass the list of sub-account Ids to be included in the group"
    }
  }
}
object Note
{
  "type": "object",
  "required": [
    "text"
  ],
  "properties": {
    "id": {
      "type": "string",
      "example": "61a5cd07ca1347c82306ad09",
      "description": "Unique note Id"
    },
    "text": {
      "type": "string",
      "example": "In communication with client for resolution of queries.",
      "maxLength": 3000,
      "minLength": 1,
      "description": "Text content of a note"
    },
    "dealIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "example": [
        "61a5ce58c5d4795761045990",
        "61a5ce58c5d4795761045991"
      ],
      "description": "Deal ids linked to a note"
    },
    "authorId": {
      "type": "object",
      "example": {
        "id": "61a5ce58y5d4795761045991",
        "name": {
          "fullName": "John Doe"
        },
        "email": "johndoe@example.com",
        "locale": "en_GB",
        "timezone": "Asia/Kolkata"
      },
      "description": "Account details of user which created the note"
    },
    "createdAt": {
      "type": "string",
      "format": "date-time",
      "example": "2017-05-01T17:05:03.000Z",
      "description": "Note created date/time"
    },
    "updatedAt": {
      "type": "string",
      "format": "date-time",
      "example": "2017-05-01T17:05:03.000Z",
      "description": "Note updated date/time"
    },
    "contactIds": {
      "type": "array",
      "items": {
        "type": "integer"
      },
      "example": [
        247,
        1,
        2
      ],
      "description": "Contact ids linked to a note"
    }
  },
  "description": "Note Details"
}