{"openapi":"3.1.0","info":{"title":"Marketing Campaigns","version":"1.0.0"},"paths":{"/emailCampaigns":{"get":{"operationId":"getEmailCampaigns","summary":"Return all your created email campaigns","description":"<Note>The response payload for this endpoint has changed\nYou now need to specify which type of statistics you would like to retrieve. For more information visit [this page](https://developers.brevo.com/changelog/2023/2/7).</Note>","tags":["emailCampaigns"],"parameters":[{"name":"type","in":"query","description":"Filter on the type of the campaigns","required":false,"schema":{"$ref":"#/components/schemas/EmailCampaignsGetParametersType"}},{"name":"status","in":"query","description":"Filter on the status of the campaign","required":false,"schema":{"$ref":"#/components/schemas/EmailCampaignsGetParametersStatus"}},{"name":"statistics","in":"query","description":"Filter on the type of statistics required. Example: **globalStats** value will only fetch globalStats info of the campaign in the returned response. This option only returns data for events that occurred in the last 6 months. For older campaigns, it is advisable to use the **Get Campaign Report** endpoint.","required":false,"schema":{"$ref":"#/components/schemas/EmailCampaignsGetParametersStatistics"}},{"name":"startDate","in":"query","description":"**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 `status` is not passed or is set to `sent`. The date range between `startDate` and `endDate` must not exceed 2 years. `startDate` must not be in the future.\n","required":false,"schema":{"type":"string"}},{"name":"endDate","in":"query","description":"**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 `status` is not passed or is set to `sent`. The date range between `startDate` and `endDate` must not exceed 2 years. `endDate` must not be in the future.\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of documents per page","required":false,"schema":{"type":"integer","format":"int64","default":50}},{"name":"offset","in":"query","description":"Index of the first document in the page","required":false,"schema":{"type":"integer","format":"int64","default":0}},{"name":"sort","in":"query","description":"Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed","required":false,"schema":{"$ref":"#/components/schemas/EmailCampaignsGetParametersSort","default":"desc"}},{"name":"excludeHtmlContent","in":"query","description":"Use this flag to exclude htmlContent from the response body. If set to **true**, the htmlContent field will be returned as an empty string in the response body.","required":false,"schema":{"type":"boolean"}},{"name":"excludePdfAttachment","in":"query","description":"Use this flag to filter out campaigns that have a PDF attachment. If set to **true**, only campaigns without a PDF attachment (or with no attachment at all) will be returned.","required":false,"schema":{"type":"boolean"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Email campaigns information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_getEmailCampaigns_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailCampaignsRequestBadRequestError"}}}}}},"post":{"operationId":"createEmailCampaign","summary":"Create an email campaign","description":"Create a new email campaign. The campaign requires at minimum a name and sender details, and is created in draft status by default. You must provide email content via one of three mutually exclusive options: htmlContent (inline HTML), htmlUrl (remote URL), or templateId (existing template); additionally, A/B testing can be enabled by setting abTesting to true with subjectA and subjectB, but this is incompatible with sendAtBestTime.","tags":["emailCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_createEmailCampaign_Response_201"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateEmailCampaignRequestBadRequestError"}}}},"405":{"description":"Method not allowed. Returned when using sendAtBestTime or abTesting features without the required premium plan.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}}},"requestBody":{"description":"Values to create a campaign","content":{"application/json":{"schema":{"type":"object","properties":{"abTesting":{"type":"boolean","default":false,"description":"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\n"},"attachmentUrl":{"type":"string","format":"url","description":"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\n"},"emailExpirationDate":{"$ref":"#/components/schemas/EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDate","description":"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":{"type":"string","description":"Footer of the email campaign"},"header":{"type":"string","description":"Header of the email campaign"},"htmlContent":{"type":"string","description":"**Mandatory if htmlUrl and templateId are empty.** Body of the message (HTML). Must have more than 10 characters and be less than 1MB in size. Cannot be used together with `htmlUrl` or `templateId`.\n"},"htmlUrl":{"type":"string","format":"url","description":"**Mandatory if htmlContent and templateId are empty.** URL to the message (HTML). Cannot be used together with `htmlContent` or `templateId`. For example: **https://html.domain.com**\n"},"increaseRate":{"type":"integer","format":"int64","description":"**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%.\n"},"initialQuota":{"type":"integer","format":"int64","description":"**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.\n"},"inlineImageActivation":{"type":"boolean","default":false,"description":"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_\n"},"ipWarmupEnable":{"type":"boolean","default":false,"description":"**Available for dedicated ip clients**. Set this to true if you wish to warm up your ip.\n"},"mirrorActive":{"type":"boolean","description":"Use true to enable the mirror link"},"name":{"type":"string","description":"Name of the campaign"},"params":{"type":"object","additionalProperties":{"description":"Any type"},"description":"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**\n"},"previewText":{"type":"string","description":"Preview text or preheader of the email campaign"},"recipients":{"$ref":"#/components/schemas/EmailCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients","description":"Segment ids and List ids to include/exclude from campaign"},"replyTo":{"type":"string","format":"email","description":"Email on which the campaign recipients will be able to reply to"},"scheduledAt":{"type":"string","description":"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**\n"},"sendAtBestTime":{"type":"boolean","default":false,"description":"Set this to true if you want to send your campaign at best time."},"sender":{"$ref":"#/components/schemas/EmailCampaignsPostRequestBodyContentApplicationJsonSchemaSender","description":"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. Passing both `email` and `id` will result in an error. For example: **{\"name\":\"xyz\", \"email\":\"example@abc.com\"}** or **{\"name\":\"xyz\", \"id\":123}**\n"},"splitRule":{"type":"integer","format":"int64","description":"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\n"},"subject":{"type":"string","description":"Subject of the campaign. **Mandatory if abTesting is false**. Ignored if abTesting is true.\n"},"subjectA":{"type":"string","description":"Subject A of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value\n"},"subjectB":{"type":"string","description":"Subject B of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value\n"},"tag":{"type":"string","description":"Tag of the campaign"},"templateId":{"type":"integer","format":"int64","description":"**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. Cannot be used together with `htmlContent` or `htmlUrl`.\n"},"toField":{"type":"string","description":"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\n"},"unsubscriptionPageId":{"type":"string","description":"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.\n"},"updateFormId":{"type":"string","description":"**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.\n"},"utmCampaign":{"type":"string","description":"Customize the utm_campaign value. If this field is empty, the campaign name will be used. Only alphanumeric characters and spaces are allowed"},"utmContent":{"type":"string","description":"Customize the utm_content value. Appears on outgoing tracking links alongside utm_campaign. Only alphanumeric characters and spaces are allowed"},"utmTerm":{"type":"string","description":"Customize the utm_term value. Appears on outgoing tracking links alongside utm_campaign. Only alphanumeric characters and spaces are allowed"},"winnerCriteria":{"$ref":"#/components/schemas/EmailCampaignsPostRequestBodyContentApplicationJsonSchemaWinnerCriteria","description":"Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed\n"},"winnerDelay":{"type":"integer","format":"int64","description":"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\n"}},"required":["name","sender"]}}}}}},"/emailCampaigns/{campaignId}":{"put":{"operationId":"updateEmailCampaign","summary":"Update an email campaign","description":"Update an existing email campaign''s properties such as name, subject, content, sender, recipients, schedule, and A/B testing configuration. The campaign must exist and the request body must contain at least one valid field to update. Only draft or scheduled campaigns can be modified; if sendAtBestTime is enabled, IP warmup will be automatically disabled.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Email campaign updated","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEmailCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateEmailCampaignRequestNotFoundError"}}}},"405":{"description":"Method not allowed. Returned when using sendAtBestTime or abTesting features without the required premium plan.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}}},"requestBody":{"description":"Values to update a campaign","content":{"application/json":{"schema":{"type":"object","properties":{"abTesting":{"type":"boolean","default":false,"description":"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\n"},"attachmentUrl":{"type":"string","format":"url","description":"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'\n"},"emailExpirationDate":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDate","description":"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":{"type":"string","description":"Footer of the email campaign"},"header":{"type":"string","description":"Header of the email campaign"},"htmlContent":{"type":"string","description":"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**\n"},"htmlUrl":{"type":"string","format":"url","description":"Url which contents the body of the email message. **REQUIRED if htmlContent is empty**\n"},"increaseRate":{"type":"integer","format":"int64","description":"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%.\n"},"initialQuota":{"type":"integer","format":"int64","description":"Set an initial quota greater than 1 for warming up your ip. We recommend you set a value of 3000.\n"},"inlineImageActivation":{"type":"boolean","default":false,"description":"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_.\n"},"ipWarmupEnable":{"type":"boolean","default":false,"description":"**Available for dedicated ip clients**. Set this to true if you wish to warm up your ip.\n"},"mirrorActive":{"type":"boolean","description":"Status of mirror links in campaign. mirrorActive = false means mirror links are deactivated, & mirrorActive = true means mirror links are activated, in the campaign"},"name":{"type":"string","description":"Name of the campaign"},"params":{"type":"object","additionalProperties":{"description":"Any type"},"description":"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**\n"},"previewText":{"type":"string","description":"Preview text or preheader of the email campaign"},"recipients":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients","description":"Segment ids and List ids to include/exclude from campaign"},"recurring":{"type":"boolean","default":false,"description":"**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\n"},"replyTo":{"type":"string","format":"email","description":"Email on which campaign recipients will be able to reply to"},"scheduledAt":{"type":"string","description":"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).\n"},"sendAtBestTime":{"type":"boolean","description":"Set this to true if you want to send your campaign at best time. Note:- **if true, warmup ip will be disabled.**\n"},"sender":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaSender","description":"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}**\n"},"splitRule":{"type":"integer","format":"int64","description":"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\n"},"subject":{"type":"string","description":"Subject of the campaign"},"subjectA":{"type":"string","description":"Subject A of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value\n"},"subjectB":{"type":"string","description":"Subject B of the campaign. **Mandatory if abTesting = true**. subjectA & subjectB should have unique value\n"},"tag":{"type":"string","description":"Tag of the campaign"},"toField":{"type":"string","description":"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\n"},"unsubscriptionPageId":{"type":"string","description":"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.\n"},"updateFormId":{"type":"string","description":"**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.\n"},"utmCampaign":{"type":"string","description":"Customize the utm_campaign value. If this field is empty, the campaign name will be used. Only alphanumeric characters and spaces are allowed"},"utmContent":{"type":"string","description":"Customize the utm_content value. Appears on outgoing tracking links alongside utm_campaign. Only alphanumeric characters and spaces are allowed"},"utmTerm":{"type":"string","description":"Customize the utm_term value. Appears on outgoing tracking links alongside utm_campaign. Only alphanumeric characters and spaces are allowed"},"winnerCriteria":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaWinnerCriteria","description":"Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed\n"},"winnerDelay":{"type":"integer","format":"int64","description":"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\n"}}}}}}},"delete":{"operationId":"deleteEmailCampaign","summary":"Delete an email campaign","description":"Delete an email campaign by its campaign ID. Only campaigns that have not been scheduled can be deleted; attempting to delete a campaign that has already been scheduled will return a 403 permission denied error. Related data in templates, newsletter builder, and schedule collections is also cleaned up.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Email campaign has been deleted","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteEmailCampaignRequestBadRequestError"}}}},"403":{"description":"Permission denied. A campaign that has already been scheduled cannot be deleted.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteEmailCampaignRequestNotFoundError"}}}}}},"get":{"operationId":"getEmailCampaign","summary":"Get an email campaign report","description":"Retrieve detailed information about a specific email campaign by its ID, including recipients, statistics, and HTML content. Use the statistics query parameter to select which statistics to include (globalStats, linksStats, statsByDomain, statsByDevice, or statsByBrowser); statsByDevice and statsByBrowser are only available on this single-campaign endpoint. You can exclude HTML content from the response by setting excludeHtmlContent to true.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"statistics","in":"query","description":"Filter on the type of statistics required. Example: **globalStats** value will only fetch globalStats info of the campaign in the returned response. `statsByDevice` and `statsByBrowser` are only available when retrieving a single campaign (not in the list endpoint).","required":false,"schema":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetParametersStatistics"}},{"name":"excludeHtmlContent","in":"query","description":"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","required":false,"schema":{"type":"boolean"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Email campaign information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_getEmailCampaign_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetEmailCampaignRequestNotFoundError"}}}}}}},"/emailCampaigns/{campaignId}/sendNow":{"post":{"operationId":"sendEmailCampaignNow","summary":"Send an email campaign immediately, based on campaignId","description":"Send an existing email campaign immediately by scheduling it for the current time. The campaign must have valid recipients and content configured before sending. The system verifies your account''s send limit and credit balance before dispatching; if credits are insufficient, a 402 error is returned.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Email campaign has been scheduled","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"Campaign could not be sent","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"402":{"description":"You don't have enough credit to send your campaign. Please update your plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendEmailCampaignNowRequestNotFoundError"}}}}}}},"/emailCampaigns/{campaignId}/sendTest":{"post":{"operationId":"sendTestEmail","summary":"Send an email campaign to your test list","description":"Send a test version of an email campaign to specified email addresses or your entire test list. If the emailTo array is left empty, the test mail will be sent to all addresses in your test list. You can send a maximum of 50 test emails per day.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Test email has been sent successfully to all recipients","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"Test email could not be sent to the following email addresses","content":{"application/json":{"schema":{"$ref":"#/components/schemas/postSendFailed"}}}},"404":{"description":"Campaign ID not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/postSendFailed"}}}}},"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/sendTestEmail"}}}}}},"/emailCampaigns/{campaignId}/status":{"put":{"operationId":"updateCampaignStatus","summary":"Update an email campaign status","description":"Update the status of an email campaign, such as suspending, archiving, or replicating it. Available status values include suspended, archive, darchive, sent, queued, replicate, replicateTemplate, cancel, and draft. Note that the replicateTemplate status is only available for template type campaigns.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"The campaign status has been updated successfully","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCampaignStatusRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCampaignStatusRequestNotFoundError"}}}}},"requestBody":{"description":"Status of the campaign","content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCampaignStatus"}}}}}},"/emailCampaigns/{campaignId}/sharedUrl":{"get":{"operationId":"getSharedTemplateUrl","summary":"Get a shared template url","description":"Get a unique URL to share & import an email template from one Brevo account to another.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign or template","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Shared template URL information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_getSharedTemplateUrl_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSharedTemplateUrlRequestBadRequestError"}}}},"404":{"description":"Campaign/Template ID not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"405":{"description":"Only email campaigns or templates are allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}}}}},"/emailCampaigns/{campaignId}/exportRecipients":{"post":{"operationId":"emailExportRecipients","summary":"Export the recipients of an email campaign","description":"Export the recipients of a sent email campaign as an asynchronous process, filtered by recipient type (e.g. openers, clickers, hardBounces). The recipientsType field is required and determines which subset of recipients to export. An optional notifyURL webhook will be called once the export is complete, and the response returns a processId to track the export status.","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"process id created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_emailExportRecipients_Response_202"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailExportRecipientsRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EmailExportRecipientsRequestNotFoundError"}}}}},"requestBody":{"description":"Values to send for a recipient export request","content":{"application/json":{"schema":{"type":"object","properties":{"notifyURL":{"type":"string","format":"url","description":"Webhook called once the export process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479"},"recipientsType":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType","description":"Type of recipients to export for a campaign"}},"required":["recipientsType"]}}}}}},"/emailCampaigns/{campaignId}/sendReport":{"post":{"operationId":"sendReport","summary":"Send the report of a campaign","description":"A PDF will be sent to the specified email addresses","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Report has been successfully sent to the defined recipients","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReportRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendReportRequestNotFoundError"}}}}},"requestBody":{"description":"Values for send a report","content":{"application/json":{"schema":{"$ref":"#/components/schemas/sendReport"}}}}}},"/emailCampaigns/{campaignId}/abTestCampaignResult":{"get":{"operationId":"getAbTestCampaignResult","summary":"Get an A/B test email campaign results","description":"Obtain winning version of an A/B test email campaign","tags":["emailCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the A/B test campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"A/B test email campaign Result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_getAbTestCampaignResult_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetAbTestCampaignResultRequestBadRequestError"}}}},"404":{"description":"A/B test Email Campaign not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}}}}},"/emailCampaigns/images":{"post":{"operationId":"uploadImageToGallery","summary":"Upload an image to your account's image gallery","description":"Upload an image to your account''s image gallery by providing an absolute URL to the image. The maximum allowed image size is 2MB and supported formats are jpeg, jpg, png, bmp, and gif; local file uploads are not supported.","tags":["emailCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"Image has been successfully uploaded","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Email Campaigns_uploadImageToGallery_Response_201"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UploadImageToGalleryRequestBadRequestError"}}}}},"requestBody":{"description":"Parameters to upload an image","content":{"application/json":{"schema":{"type":"object","properties":{"imageUrl":{"type":"string","description":"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.\n"},"name":{"type":"string","description":"Name of the image."}},"required":["imageUrl"]}}}}}},"/smsCampaigns":{"get":{"operationId":"getSmsCampaigns","summary":"Returns the information for all your created SMS campaigns","description":"Retrieve a paginated list of all your SMS campaigns with their statistics and recipient information. Results can be filtered by status and date range, with a default limit of 500 and maximum of 1000 per page. The sort order defaults to descending by creation date; date filters are only available when status is not passed or is set to sent.","tags":["smsCampaigns"],"parameters":[{"name":"status","in":"query","description":"Status of campaign.","required":false,"schema":{"$ref":"#/components/schemas/SmsCampaignsGetParametersStatus"}},{"name":"startDate","in":"query","description":"**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 `status` is not passed or is set to `sent`. `startDate` must not be in the future.\n","required":false,"schema":{"type":"string"}},{"name":"endDate","in":"query","description":"**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 `status` is not passed or is set to `sent`. `endDate` must not be in the future.\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of documents per page","required":false,"schema":{"type":"integer","format":"int64","default":500}},{"name":"offset","in":"query","description":"Beginning point in the list to retrieve from.","required":false,"schema":{"type":"integer","format":"int64","default":0}},{"name":"sort","in":"query","description":"Sort the results in the ascending/descending order of record creation. Default order is **descending** if `sort` is not passed","required":false,"schema":{"$ref":"#/components/schemas/SmsCampaignsGetParametersSort","default":"desc"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"SMS campaigns information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SMS Campaigns_getSmsCampaigns_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSmsCampaignsRequestBadRequestError"}}}}}},"post":{"operationId":"createSmsCampaign","summary":"Creates an SMS campaign","description":"Create a new SMS campaign with the required name, sender, and content fields. The sender name is limited to 11 alphanumeric characters or 15 numeric characters, and the content should stay within 160 characters per SMS segment. If a scheduledAt date is provided, listIds in recipients become mandatory; accounts under validation are limited to 4 total campaigns and campaigns with more than 10 recipients will be saved as draft.","tags":["smsCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SMS Campaigns_createSmsCampaign_Response_201"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSmsCampaignRequestBadRequestError"}}}}},"requestBody":{"description":"Values to create an SMS Campaign","content":{"application/json":{"schema":{"type":"object","properties":{"content":{"type":"string","description":"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.\n"},"name":{"type":"string","description":"Name of the campaign"},"organisationPrefix":{"type":"string","description":"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":{"$ref":"#/components/schemas/SmsCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients"},"scheduledAt":{"type":"string","description":"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.**\n"},"sender":{"type":"string","description":"Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**\n"},"unicodeEnabled":{"type":"boolean","default":false,"description":"Format of the message. It indicates whether the content should be treated as unicode or not.\n"},"unsubscribeInstruction":{"type":"string","description":"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.**"}},"required":["content","name","sender"]}}}}}},"/smsCampaigns/{campaignId}":{"get":{"operationId":"getSmsCampaign","summary":"Get an SMS campaign","description":"Retrieve detailed information about a specific SMS campaign by its ID, including campaign content, sender, recipients with list names, statistics (delivered, sent, bounces, unsubscriptions, answered), and tags. Unlike the list endpoint, recipients are returned as objects with id and name fields rather than plain IDs.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the SMS campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"SMS campaign information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SMS Campaigns_getSmsCampaign_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSmsCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetSmsCampaignRequestNotFoundError"}}}}}},"put":{"operationId":"updateSmsCampaign","summary":"Update an SMS campaign","description":"Update an existing SMS campaign''s properties such as name, sender, content, recipients, scheduled date, organisation prefix, and unsubscribe instructions. The request body must contain at least one valid field to update. The campaign must exist and must be of type SMS; if a scheduledAt is provided, valid recipients must be present either in the request or already configured on the campaign.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the SMS campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"SMS campaign updated","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSmsCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSmsCampaignRequestNotFoundError"}}}}},"requestBody":{"description":"Values to update an SMS Campaign","content":{"application/json":{"schema":{"type":"object","properties":{"content":{"type":"string","description":"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\n"},"name":{"type":"string","description":"Name of the campaign"},"organisationPrefix":{"type":"string","description":"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":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients"},"scheduledAt":{"type":"string","description":"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.**\n"},"sender":{"type":"string","description":"Name of the sender. **The number of characters is limited to 11 for alphanumeric characters and 15 for numeric characters**\n"},"unicodeEnabled":{"type":"boolean","default":false,"description":"Format of the message. It indicates whether the content should be treated as unicode or not.\n"},"unsubscribeInstruction":{"type":"string","description":"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.**"}}}}}}},"delete":{"operationId":"deleteSmsCampaign","summary":"Delete an SMS campaign","description":"Delete an SMS campaign by its campaign ID. Only campaigns that have not been scheduled or sent can be deleted; attempting to delete a campaign that is queued, in process, or has been sent with recipients will return a 403 permission denied error.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the SMS campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"SMS campaign has been deleted","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteSmsCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteSmsCampaignRequestNotFoundError"}}}}}}},"/smsCampaigns/{campaignId}/sendNow":{"post":{"operationId":"sendSmsCampaignNow","summary":"Send your SMS campaign immediately","description":"Send an existing SMS campaign immediately by scheduling it for the current time. The system verifies your account''s SMS credit balance before dispatching; if credits are insufficient or the remaining credit is less than the number of recipients, a 402 error is returned. The campaign must have valid recipients and content already configured.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"SMS campaign has been scheduled","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"SMS Campaign could not be sent","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"402":{"description":"You don't have enough credit to send your campaign. Please update your plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/errorModel"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSmsCampaignNowRequestNotFoundError"}}}}}}},"/smsCampaigns/{campaignId}/status":{"put":{"operationId":"updateSmsCampaignStatus","summary":"Update a campaign's status","description":"Update the status of an SMS campaign, such as suspending, archiving, or replicating it. Available status values include suspended, archive, darchive, sent, queued, replicate, replicateTemplate, cancel, and draft. Note that the replicateTemplate status is only available for template type campaigns.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"The campaign status has been updated successfully","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSmsCampaignStatusRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSmsCampaignStatusRequestNotFoundError"}}}}},"requestBody":{"description":"Status of the campaign.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/updateCampaignStatus"}}}}}},"/smsCampaigns/{campaignId}/sendTest":{"post":{"operationId":"sendTestSms","summary":"Send a test SMS campaign","description":"Send a test SMS to a specified phone number to preview the campaign before sending it to all recipients. The phone number must belong to one of your existing contacts in your Brevo account and must not be blacklisted. The number should include the country code (e.g. 33689965433).","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the SMS campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Test SMS has been sent successfully to the recipient","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"Test SMS could not be sent to the following email addresses","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendTestSmsRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendTestSmsRequestNotFoundError"}}}}},"requestBody":{"description":"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**\n","content":{"application/json":{"schema":{"type":"object","properties":{"phoneNumber":{"type":"string","description":"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**\n"}}}}}}}},"/smsCampaigns/{campaignId}/exportRecipients":{"post":{"operationId":"requestSmsRecipientExport","summary":"Export an SMS campaign's recipients","description":"It returns the background process ID which on completion calls the notify URL that you have set in the input.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"202":{"description":"process id created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SMS Campaigns_requestSmsRecipientExport_Response_202"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestSmsRecipientExportRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestSmsRecipientExportRequestNotFoundError"}}}}},"requestBody":{"description":"Values to send for a recipient export request","content":{"application/json":{"schema":{"type":"object","properties":{"notifyURL":{"type":"string","format":"url","description":"URL that will be called once the export process is finished. For reference, https://help.brevo.com/hc/en-us/articles/360007666479"},"recipientsType":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType","description":"Filter the recipients based on how they interacted with the campaign"}},"required":["recipientsType"]}}}}}},"/smsCampaigns/{campaignId}/sendReport":{"post":{"operationId":"sendSmsReport","summary":"Send an SMS campaign's report","description":"Send report of Sent and Archived campaign, to the specified email addresses, with respective data and a pdf attachment in detail.","tags":["smsCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"Report has been successfully sent to the defined recipients","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSmsReportRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendSmsReportRequestNotFoundError"}}}}},"requestBody":{"description":"Values for send a report","content":{"application/json":{"schema":{"$ref":"#/components/schemas/sendReport"}}}}}},"/whatsappCampaigns/{campaignId}":{"get":{"operationId":"getWhatsAppCampaign","summary":"Get a WhatsApp campaign","description":"<Note>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.\n[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>\n<Note>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.\n[Get all the Lists](https://developers.brevo.com/reference/getlists-1)\n[Get all the Segments](https://developers.brevo.com/reference/getsegments)</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"Id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Get whatsApp campaign information on the basis of campaignId","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_getWhatsAppCampaign_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWhatsAppCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWhatsAppCampaignRequestNotFoundError"}}}}}},"delete":{"operationId":"deleteWhatsAppCampaign","summary":"Delete a WhatsApp campaign","description":"Delete a WhatsApp campaign by its campaign ID. The campaign must exist; if the campaign ID is not found, a 404 error is returned. This action is permanent and cannot be undone.","tags":["whatsAppCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"WhatsApp campaign has been deleted","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWhatsAppCampaignRequestBadRequestError"}}}},"404":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteWhatsAppCampaignRequestNotFoundError"}}}}}},"put":{"operationId":"updateWhatsAppCampaign","summary":"Update a WhatsApp campaign","description":"<Note>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.\n[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>\n<Note>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.\n[Get all the Lists](https://developers.brevo.com/reference/getlists-1)\n[Get all the Segments](https://developers.brevo.com/reference/getsegments)</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"campaignId","in":"path","description":"id of the campaign","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"204":{"description":"WhatsApp campaign has been deleted","content":{"application/json":{"schema":{"type":"object","properties":{}}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateWhatsAppCampaignRequestBadRequestError"}}}}},"requestBody":{"description":"Values to update a WhatsApp Campaign","content":{"application/json":{"schema":{"type":"object","properties":{"campaignName":{"type":"string","description":"Name of the campaign"},"campaignStatus":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaCampaignStatus","default":"scheduled","description":"Status of the campaign"},"recipients":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients","description":"Segment ids and List ids to include/exclude from campaign"},"rescheduleFor":{"type":"string","description":"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.\n"}}}}}}}},"/whatsappCampaigns/template-list":{"get":{"operationId":"getWhatsAppTemplates","summary":"Return all your created WhatsApp templates","description":"Retrieve a paginated list of all your WhatsApp templates with their status, category, language, and metadata. Results can be filtered by creation date range and optionally by source (Automation or Conversations), with a default limit of 50 and maximum of 100 per page. The sort order defaults to descending by modification date.","tags":["whatsAppCampaigns"],"parameters":[{"name":"startDate","in":"query","description":"**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**\n","required":false,"schema":{"type":"string"}},{"name":"endDate","in":"query","description":"**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**\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of documents per page","required":false,"schema":{"type":"integer","format":"int64","default":50}},{"name":"offset","in":"query","description":"Index of the first document in the page","required":false,"schema":{"type":"integer","format":"int64","default":0}},{"name":"sort","in":"query","description":"Sort the results in the ascending/descending order of record modification. Default order is **descending** if `sort` is not passed","required":false,"schema":{"$ref":"#/components/schemas/WhatsappCampaignsTemplateListGetParametersSort","default":"desc"}},{"name":"source","in":"query","description":"source of the template","required":false,"schema":{"$ref":"#/components/schemas/WhatsappCampaignsTemplateListGetParametersSource"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"WhatsApp templates informations","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_getWhatsAppTemplates_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWhatsAppTemplatesRequestBadRequestError"}}}}}}},"/whatsappCampaigns":{"post":{"operationId":"createWhatsAppCampaign","summary":"Create and Send a WhatsApp campaign","description":"<Note>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.\n[Activating Whatsapp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>\n<Note>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.\n[Get all the Lists](https://developers.brevo.com/reference/getlists-1)\n[Get all the Segments](https://developers.brevo.com/reference/getsegments)</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_createWhatsAppCampaign_Response_201"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWhatsAppCampaignRequestBadRequestError"}}}}},"requestBody":{"description":"Values to create a WhatsApp Campaign","content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","description":"Name of the WhatsApp campaign creation"},"recipients":{"$ref":"#/components/schemas/WhatsappCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients","description":"Segment ids and List ids to include/exclude from campaign"},"scheduledAt":{"type":"string","description":"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**\n"},"templateId":{"type":"integer","description":"Id of the WhatsApp template in **approved** state"}},"required":["name","recipients","scheduledAt","templateId"]}}}}},"get":{"operationId":"getWhatsAppCampaigns","summary":"Return all your created WhatsApp campaigns","description":"Retrieve a paginated list of all your WhatsApp campaigns with their statistics and metadata. Results can be filtered by creation date range using startDate and endDate, with a default limit of 50 and maximum of 100 per page. The sort order defaults to descending by modification date.","tags":["whatsAppCampaigns"],"parameters":[{"name":"startDate","in":"query","description":"**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**\n","required":false,"schema":{"type":"string"}},{"name":"endDate","in":"query","description":"**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**\n","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","description":"Number of documents per page","required":false,"schema":{"type":"integer","format":"int64","default":50}},{"name":"offset","in":"query","description":"Index of the first document in the page","required":false,"schema":{"type":"integer","format":"int64","default":0}},{"name":"sort","in":"query","description":"Sort the results in the ascending/descending order of record modification. Default order is **descending** if `sort` is not passed","required":false,"schema":{"$ref":"#/components/schemas/WhatsappCampaignsGetParametersSort","default":"desc"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"WhatsApp campaigns information","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_getWhatsAppCampaigns_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWhatsAppCampaignsRequestBadRequestError"}}}}}}},"/whatsappCampaigns/config":{"get":{"operationId":"getWhatsAppConfig","summary":"Get your WhatsApp API account information","description":"<Note>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.\n[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Get all the information of your WhatsApp API account","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_getWhatsAppConfig_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetWhatsAppConfigRequestBadRequestError"}}}}}}},"/whatsappCampaigns/template":{"post":{"operationId":"createWhatsAppTemplate","summary":"Create a WhatsApp template","description":"<Note>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.\n[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"successfully created","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_createWhatsAppTemplate_Response_201"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWhatsAppTemplateRequestBadRequestError"}}}}},"requestBody":{"description":"Values to create a WhatsApp Template","content":{"application/json":{"schema":{"type":"object","properties":{"bodyText":{"type":"string","description":"Body of the template. **Maximum allowed characters are 1024**"},"category":{"$ref":"#/components/schemas/WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaCategory","description":"Category of the template"},"headerText":{"type":"string","description":"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**\n"},"language":{"type":"string","description":"Language of the template. For Example :\n**en** for English\n"},"mediaUrl":{"type":"string","description":"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\n"},"name":{"type":"string","description":"Name of the template"},"source":{"$ref":"#/components/schemas/WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaSource","description":"source of the template"}},"required":["bodyText","category","language","name"]}}}}}},"/whatsappCampaigns/template/approval/{templateId}":{"post":{"operationId":"sendWhatsAppTemplateApproval","summary":"Send your WhatsApp template for approval","description":"<Note>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.\n[Activating WhatsApp](https://developers.brevo.com/docs/whatsapp-campaigns-1) in your account</Note>","tags":["whatsAppCampaigns"],"parameters":[{"name":"templateId","in":"path","description":"id of the template","required":true,"schema":{"type":"integer","format":"int64"}},{"name":"api-key","in":"header","description":"The API key should be passed in the request headers as `api-key` for authentication.","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"WhatsApp template sent for approval","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WhatsApp Campaigns_sendWhatsAppTemplateApproval_Response_200"}}}},"400":{"description":"bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SendWhatsAppTemplateApprovalRequestBadRequestError"}}}}}}}},"servers":[{"url":"https://api.brevo.com/v3","description":"https://api.brevo.com/v3"}],"components":{"schemas":{"EmailCampaignsGetParametersType":{"type":"string","enum":["classic","trigger"],"title":"EmailCampaignsGetParametersType"},"EmailCampaignsGetParametersStatus":{"type":"string","enum":["suspended","archive","sent","queued","draft","inProcess","inReview","cancelling","cancelled"],"title":"EmailCampaignsGetParametersStatus"},"EmailCampaignsGetParametersStatistics":{"type":"string","enum":["globalStats","linksStats","statsByDomain"],"title":"EmailCampaignsGetParametersStatistics"},"EmailCampaignsGetParametersSort":{"type":"string","enum":["asc","desc"],"default":"desc","title":"EmailCampaignsGetParametersSort"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus":{"type":"string","enum":["draft","sent","archive","queued","suspended","in_process","in_review","cancelling","cancelled"],"description":"Status of the campaign","title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsType":{"type":"string","enum":["classic","trigger"],"description":"Type of campaign","title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsType"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDateUnit":{"type":"string","enum":["days","weeks","months"],"description":"Unit of the duration","title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDateUnit"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDate":{"type":"object","properties":{"duration":{"type":"integer","format":"int64","description":"Duration of the email expiry"},"unit":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDateUnit","description":"Unit of the duration"}},"description":"Expiration date configuration for the email campaign, if set. Contains the duration and unit of the email expiry.","title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDate"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsSender":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Sender email of the campaign"},"id":{"type":"integer","format":"int64","description":"Sender id of the campaign"},"name":{"type":"string","description":"Sender name of the campaign"}},"title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsSender"},"getCampaignRecipients":{"type":"object","properties":{"excludedSegments":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Segment IDs excluded from the campaign"},"exclusionLists":{"type":"array","items":{"type":"integer","format":"int64"}},"lists":{"type":"array","items":{"type":"integer","format":"int64"}},"segments":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Segment IDs included in the campaign"}},"required":["exclusionLists","lists"],"title":"getCampaignRecipients"},"getCampaignStats":{"type":"object","properties":{"appleMppOpens":{"type":["integer","null"],"format":"int64","description":"Numbers of times your email has been opened automatically through Apple MPP."},"clickers":{"type":["integer","null"],"format":"int64","description":"Number of total clicks for the campaign"},"complaints":{"type":["integer","null"],"format":"int64","description":"Number of complaints (Spam reports) for the campaign"},"deferred":{"type":"integer","format":"int64","description":"Number of deferred emails for the campaign"},"delivered":{"type":["integer","null"],"format":"int64","description":"Number of delivered emails for the campaign"},"estimatedViews":{"type":"integer","format":"int64","description":"Rate of recipients without any privacy protection option enabled in their email client, applied to all delivered emails"},"hardBounces":{"type":["integer","null"],"format":"int64","description":"Number of hard bounces for the campaign"},"listId":{"type":"integer","format":"int64","description":"List Id of email campaign (only in case of get email campaign(s)(not for global stats))"},"opensRate":{"type":["string","null"],"title":"float","description":"Percentage of recipients who open the email out of your total number of recipients. Depending on your Campaign settings, they may include Apple MPP opens."},"returnBounce":{"type":"integer","format":"int64","description":"Total number of non-delivered campaigns for a particular campaign id."},"sent":{"type":["integer","null"],"format":"int64","description":"Number of sent emails for the campaign"},"softBounces":{"type":["integer","null"],"format":"int64","description":"Number of softbounce for the campaign"},"trackableViews":{"type":["integer","null"],"format":"int64","description":"Recipients without any privacy protection option enabled in their email email client"},"trackableViewsRate":{"type":"string","title":"float","description":"Rate of recipients without any privacy protection option enabled in their email client"},"uniqueClicks":{"type":["integer","null"],"format":"int64","description":"Number of unique clicks for the campaign"},"uniqueViews":{"type":["integer","null"],"format":"int64","description":"Number of unique openings for the campaign"},"unsubscriptions":{"type":["integer","null"],"format":"int64","description":"Number of unsubscription for the campaign"},"viewed":{"type":["integer","null"],"format":"int64","description":"Number of openings for the campaign"}},"required":["appleMppOpens","clickers","complaints","delivered","hardBounces","opensRate","sent","softBounces","trackableViews","uniqueClicks","uniqueViews","unsubscriptions","viewed"],"title":"getCampaignStats"},"getDeviceBrowserStats":{"type":"object","properties":{"clickers":{"type":"integer","format":"int64","description":"Number of total clicks for the campaign using the particular browser"},"uniqueClicks":{"type":"integer","format":"int64","description":"Number of unique clicks for the campaign using the particular browser"},"uniqueViews":{"type":"integer","format":"int64","description":"Number of unique openings for the campaign using the particular browser"},"viewed":{"type":"integer","format":"int64","description":"Number of openings for the campaign using the particular browser"}},"required":["clickers","uniqueClicks","uniqueViews","viewed"],"title":"getDeviceBrowserStats"},"GetExtendedCampaignStatsStatsByDevice":{"type":"object","properties":{"desktop":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getDeviceBrowserStats"},"description":"Statistics of the campaign on the basis of desktop devices"},"mobile":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getDeviceBrowserStats"},"description":"Statistics of the campaign on the basis of mobile devices"},"tablet":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getDeviceBrowserStats"},"description":"Statistics of the campaign on the basis of tablet devices"},"unknown":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getDeviceBrowserStats"},"description":"Statistics of the campaign on the basis of unknown devices"}},"title":"GetExtendedCampaignStatsStatsByDevice"},"getExtendedCampaignStats":{"type":"object","properties":{"campaignStats":{"type":"array","items":{"$ref":"#/components/schemas/getCampaignStats"},"description":"List-wise statistics of the campaign."},"globalStats":{"$ref":"#/components/schemas/getCampaignStats","description":"Overall statistics of the campaign"},"linksStats":{"type":"object","additionalProperties":{"type":"integer","format":"int64"},"description":"Statistics about the number of clicks for each link in the campaign. Keys are the link URLs, values are click counts. Only populated when the `statistics` query parameter is set to `linksStats`."},"mirrorClick":{"type":"integer","format":"int64","description":"Number of clicks on mirror link"},"remaining":{"type":"integer","format":"int64","description":"Number of remaining emails to send"},"statsByBrowser":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getDeviceBrowserStats"},"description":"Statistics of the campaign grouped by browser. Only available when retrieving a single campaign with the `statistics` query parameter set to `statsByBrowser`."},"statsByDevice":{"$ref":"#/components/schemas/GetExtendedCampaignStatsStatsByDevice"},"statsByDomain":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/getCampaignStats"},"description":"Statistics of the campaign grouped by email domain. Only populated when the `statistics` query parameter is set to `statsByDomain`."}},"required":["campaignStats","globalStats","linksStats","mirrorClick","remaining"],"title":"getExtendedCampaignStats"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems":{"type":"object","properties":{"attachmentFile":{"type":"string","description":"Url of the attachment file. Only available if the campaign has an attachment."},"abTesting":{"type":"boolean","description":"Status of A/B Test for the campaign. abTesting = false means it is disabled, & abTesting = true means it is enabled."},"id":{"type":"integer","format":"int64","description":"ID of the campaign"},"name":{"type":"string","description":"Name of the campaign"},"previewText":{"type":"string","description":"Preview text or preheader of the email campaign"},"scheduledAt":{"type":"string","description":"UTC date-time on which campaign is scheduled (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"sendAtBestTime":{"type":"boolean","description":"It is true if you have chosen to send your campaign at best time, otherwise it is false"},"splitRule":{"type":"integer","description":"The size of your ab-test groups. Only available if `abTesting` flag of the campaign is `true`"},"status":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus","description":"Status of the campaign"},"subject":{"type":"string","description":"Subject of the campaign. Only available if `abTesting` flag of the campaign is `false`"},"subjectA":{"type":"string","description":"Subject A of the ab-test campaign. Only available if `abTesting` flag of the campaign is `true`"},"subjectB":{"type":"string","description":"Subject B of the ab-test campaign. Only available if `abTesting` flag of the campaign is `true`"},"type":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsType","description":"Type of campaign"},"winnerCriteria":{"type":"string","description":"Criteria for the winning version. Only available if `abTesting` flag of the campaign is `true`"},"winnerDelay":{"type":"integer","description":"The duration of the test in hours at the end of which the winning version will be sent. Only available if `abTesting` flag of the campaign is `true`"},"attachmentUrl":{"type":"string","description":"URL of the attachment file associated with the campaign. Empty string if no attachment is present."},"createdAt":{"type":"string","description":"Creation UTC date-time of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"emailExpirationDate":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsEmailExpirationDate","description":"Expiration date configuration for the email campaign, if set. Contains the duration and unit of the email expiry."},"footer":{"type":"string","description":"Footer of the campaign"},"header":{"type":"string","description":"Header of the campaign"},"htmlContent":{"type":"string","description":"HTML content of the campaign"},"inlineImageActivation":{"type":"boolean","description":"Status of inline image. inlineImageActivation = false means image can’t be embedded, & inlineImageActivation = true means image can be embedded, in the email."},"mirrorActive":{"type":"boolean","description":"Status of mirror links in campaign. mirrorActive = false means mirror links are deactivated, & mirrorActive = true means mirror links are activated, in the campaign"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"recurring":{"type":"boolean","description":"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"},"replyTo":{"type":"string","format":"email","description":"Email defined as the \"Reply to\" of the campaign"},"returnBounce":{"type":"integer","format":"int64","description":"Total number of non-delivered campaigns for a particular campaign id."},"sender":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsSender"},"sentDate":{"type":"string","description":"Sent UTC date-time of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ). Only available if 'status' of the campaign is 'sent'"},"shareLink":{"type":"string","format":"url","description":"Link to share the campaign on social medias"},"tag":{"type":"string","description":"Tag of the campaign"},"tags":{"type":"array","items":{"type":"string"},"description":"List of tags of the campaign"},"testSent":{"type":"boolean","description":"Retrieved the status of test email sending. (true=Test email has been sent  false=Test email has not been sent)"},"toField":{"type":"string","description":"Customisation of the \"to\" field of the campaign"},"utmCampaignValue":{"type":"string","description":"The utm_campaign value associated with the campaign. Only present if a UTM campaign value was set."},"utmContent":{"type":"string","description":"The utm_content value associated with the campaign. Only present if a utm_content value was set on create or update."},"utmID":{"type":"integer","format":"int64","description":"The campaign ID used as utm_id parameter. Only present if UTM campaign tracking with ID is enabled."},"utmMedium":{"type":"string","description":"The utm_medium value. Set to \"EMAIL\" when UTM campaign tracking is enabled."},"utmSource":{"type":"string","description":"The utm_source value. Set to \"Brevo\" when UTM campaign tracking is enabled."},"utmTerm":{"type":"string","description":"The utm_term value associated with the campaign. Only present if a utm_term value was set on create or update."},"recipients":{"$ref":"#/components/schemas/getCampaignRecipients"},"statistics":{"$ref":"#/components/schemas/getExtendedCampaignStats"}},"required":["id","name","status","type","createdAt","footer","header","htmlContent","modifiedAt","replyTo","sender","testSent","recipients","statistics"],"title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"},"Email Campaigns_getEmailCampaigns_Response_200":{"type":"object","properties":{"campaigns":{"type":"array","items":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"}},"count":{"type":"integer","format":"int64","description":"Number of Email campaigns retrieved"}},"title":"Email Campaigns_getEmailCampaigns_Response_200"},"EmailCampaignsGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsGetResponsesContentApplicationJsonSchemaCode"},"GetEmailCampaignsRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetEmailCampaignsRequestBadRequestError"},"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit":{"type":"string","enum":["days","weeks","months"],"description":"unit of the duration","title":"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit"},"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDate":{"type":"object","properties":{"duration":{"type":"integer","format":"int64","description":"Duration of the email expiry. maximum duration can be 3600 days or 480 weeks or 120 months."},"unit":{"$ref":"#/components/schemas/EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit","description":"unit of the duration"}},"description":"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``","title":"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaEmailExpirationDate"},"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"exclusionListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids to exclude from the campaign"},"exclusionSegmentIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Segment ids which have to be excluded from a campaign.\n"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if scheduledAt is not empty**. List Ids to send the campaign to\n"},"segmentIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if listIds are not used**. Segment ids to send the campaign to.\n"}},"description":"Segment ids and List ids to include/exclude from campaign","title":"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients"},"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaSender":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Sender email. Must be a valid email address. Cannot be used together with `id` in the same request.\n"},"id":{"type":"integer","format":"int64","description":"Select the sender for the campaign on the basis of sender id. Cannot be used together with `email` in the same request. _In order to select a sender with a specific pool of IPs, dedicated IP users shall pass id (instead of email)._\n"},"name":{"type":"string","description":"Sender Name"}},"description":"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. Passing both `email` and `id` will result in an error. For example: **{\"name\":\"xyz\", \"email\":\"example@abc.com\"}** or **{\"name\":\"xyz\", \"id\":123}**\n","title":"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaSender"},"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaWinnerCriteria":{"type":"string","enum":["open","click"],"description":"Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed\n","title":"EmailCampaignsPostRequestBodyContentApplicationJsonSchemaWinnerCriteria"},"Email Campaigns_createEmailCampaign_Response_201":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the object created"}},"required":["id"],"title":"Email Campaigns_createEmailCampaign_Response_201"},"EmailCampaignsPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsPostResponsesContentApplicationJsonSchemaCode"},"CreateEmailCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"CreateEmailCampaignRequestBadRequestError"},"errorModel":{"type":"object","properties":{"code":{"type":"string","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["message"],"title":"errorModel"},"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit":{"type":"string","enum":["days","weeks","months"],"description":"unit of the duration","title":"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit"},"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDate":{"type":"object","properties":{"duration":{"type":"integer","format":"int64","description":"Duration of the email expiry. maximum duration can be 3600 days or 480 weeks or 120 months."},"unit":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDateUnit","description":"unit of the duration"}},"description":"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.","title":"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaEmailExpirationDate"},"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"exclusionListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids which have to be excluded from a campaign"},"exclusionSegmentIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Segment ids which have to be excluded from a campaign.\n"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Lists Ids to send the campaign to. **Campaign should only be updated with listIds if listIds were used to create it. REQUIRED if already not present in campaign and scheduledAt is not empty**\n"},"segmentIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if listIds are not used. Campaign should only be updated with segmentIds if segmentIds were used to create it.** Segment ids to send the campaign to.\n"}},"description":"Segment ids and List ids to include/exclude from campaign","title":"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients"},"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaSender":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Sender email from which the campaign emails are sent"},"id":{"type":"integer","format":"int64","description":"Select the sender for the campaign on the basis of sender id. **In order to select a sender with specific pool of IP’s, dedicated ip users shall pass id (instead of email)**.\n"},"name":{"type":"string","description":"Sender Name from which the campaign emails are sent"}},"description":"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}**\n","title":"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaSender"},"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaWinnerCriteria":{"type":"string","enum":["open","click"],"description":"Choose the metrics that will determinate the winning version. **Mandatory if _splitRule_ >= 1 and < 50**. If splitRule = 50, `winnerCriteria` is ignored if passed\n","title":"EmailCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaWinnerCriteria"},"EmailCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode"},"UpdateEmailCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateEmailCampaignRequestBadRequestError"},"UpdateEmailCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateEmailCampaignRequestNotFoundError"},"EmailCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode"},"DeleteEmailCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteEmailCampaignRequestBadRequestError"},"DeleteEmailCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteEmailCampaignRequestNotFoundError"},"EmailCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode"},"SendEmailCampaignNowRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendEmailCampaignNowRequestNotFoundError"},"sendTestEmail":{"type":"object","properties":{"emailTo":{"type":"array","items":{"type":"string","format":"email"},"description":"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_.\n"}},"title":"sendTestEmail"},"postSendFailed":{"type":"object","properties":{"blackListedEmails":{"type":"array","items":{"type":"string","format":"email"}},"code":{"type":"string","description":"Response code"},"message":{"type":"string","description":"Response message"},"unexistingEmails":{"type":"array","items":{"type":"string","format":"email"}},"withoutListEmails":{"type":"array","items":{"type":"string","format":"email"}}},"required":["code","message"],"title":"postSendFailed"},"UpdateCampaignStatusStatus":{"type":"string","enum":["suspended","archive","darchive","sent","queued","replicate","replicateTemplate","cancel","draft"],"description":"Note:- **replicateTemplate** status will be available **only for template type campaigns.**\n","title":"UpdateCampaignStatusStatus"},"updateCampaignStatus":{"type":"object","properties":{"status":{"$ref":"#/components/schemas/UpdateCampaignStatusStatus","description":"Note:- **replicateTemplate** status will be available **only for template type campaigns.**\n"}},"description":"Status of the campaign","title":"updateCampaignStatus"},"EmailCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode"},"UpdateCampaignStatusRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateCampaignStatusRequestBadRequestError"},"UpdateCampaignStatusRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateCampaignStatusRequestNotFoundError"},"Email Campaigns_getSharedTemplateUrl_Response_200":{"type":"object","properties":{"sharedUrl":{"type":"string","format":"url","description":"A unique URL for the email campaign or transactional template. This URL can be shared with other Brevo users."}},"required":["sharedUrl"],"title":"Email Campaigns_getSharedTemplateUrl_Response_200"},"EmailCampaignsCampaignIdSharedUrlGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdSharedUrlGetResponsesContentApplicationJsonSchemaCode"},"GetSharedTemplateUrlRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdSharedUrlGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetSharedTemplateUrlRequestBadRequestError"},"EmailCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType":{"type":"string","enum":["all","nonClickers","nonOpeners","clickers","openers","softBounces","hardBounces","unsubscribed"],"description":"Type of recipients to export for a campaign","title":"EmailCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType"},"Email Campaigns_emailExportRecipients_Response_202":{"type":"object","properties":{"processId":{"type":"integer","format":"int64","description":"Id of the process created"}},"required":["processId"],"title":"Email Campaigns_emailExportRecipients_Response_202"},"EmailCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode"},"EmailExportRecipientsRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"EmailExportRecipientsRequestBadRequestError"},"EmailExportRecipientsRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"EmailExportRecipientsRequestNotFoundError"},"SendReportEmail":{"type":"object","properties":{"body":{"type":"string","description":"Custom text message to be presented in the report email."},"to":{"type":"array","items":{"type":"string","format":"email"},"description":"Email addresses of the recipients"}},"required":["body","to"],"description":"Custom attributes for the report email.","title":"SendReportEmail"},"SendReportLanguage":{"type":"string","enum":["fr","es","pt","it","de","en"],"default":"fr","description":"Language of email content for campaign report sending.","title":"SendReportLanguage"},"sendReport":{"type":"object","properties":{"email":{"$ref":"#/components/schemas/SendReportEmail","description":"Custom attributes for the report email."},"language":{"$ref":"#/components/schemas/SendReportLanguage","default":"fr","description":"Language of email content for campaign report sending."}},"required":["email"],"title":"sendReport"},"EmailCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode"},"SendReportRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendReportRequestBadRequestError"},"SendReportRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendReportRequestNotFoundError"},"EmailCampaignsCampaignIdGetParametersStatistics":{"type":"string","enum":["globalStats","linksStats","statsByDomain","statsByDevice","statsByBrowser"],"title":"EmailCampaignsCampaignIdGetParametersStatistics"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus":{"type":"string","enum":["draft","sent","archive","queued","suspended","in_process","in_review","cancelling","cancelled"],"description":"Status of the campaign","title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaType":{"type":"string","enum":["classic","trigger"],"description":"Type of campaign","title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaType"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDateUnit":{"type":"string","enum":["days","weeks","months"],"description":"Unit of the duration","title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDateUnit"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDate":{"type":"object","properties":{"duration":{"type":"integer","format":"int64","description":"Duration of the email expiry"},"unit":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDateUnit","description":"Unit of the duration"}},"description":"Expiration date configuration for the email campaign, if set. Contains the duration and unit of the email expiry.","title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDate"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaSender":{"type":"object","properties":{"email":{"type":"string","format":"email","description":"Sender email of the campaign"},"id":{"type":"integer","format":"int64","description":"Sender id of the campaign"},"name":{"type":"string","description":"Sender name of the campaign"}},"title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaSender"},"Email Campaigns_getEmailCampaign_Response_200":{"type":"object","properties":{"attachmentFile":{"type":"string","description":"Url of the attachment file. Only available if the campaign has an attachment."},"abTesting":{"type":"boolean","description":"Status of A/B Test for the campaign. abTesting = false means it is disabled, & abTesting = true means it is enabled."},"id":{"type":"integer","format":"int64","description":"ID of the campaign"},"name":{"type":"string","description":"Name of the campaign"},"previewText":{"type":"string","description":"Preview text or preheader of the email campaign"},"scheduledAt":{"type":"string","description":"UTC date-time on which campaign is scheduled (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"sendAtBestTime":{"type":"boolean","description":"It is true if you have chosen to send your campaign at best time, otherwise it is false"},"splitRule":{"type":"integer","description":"The size of your ab-test groups. Only available if `abTesting` flag of the campaign is `true`"},"status":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus","description":"Status of the campaign"},"subject":{"type":"string","description":"Subject of the campaign. Only available if `abTesting` flag of the campaign is `false`"},"subjectA":{"type":"string","description":"Subject A of the ab-test campaign. Only available if `abTesting` flag of the campaign is `true`"},"subjectB":{"type":"string","description":"Subject B of the ab-test campaign. Only available if `abTesting` flag of the campaign is `true`"},"type":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaType","description":"Type of campaign"},"winnerCriteria":{"type":"string","description":"Criteria for the winning version. Only available if `abTesting` flag of the campaign is `true`"},"winnerDelay":{"type":"integer","description":"The duration of the test in hours at the end of which the winning version will be sent. Only available if `abTesting` flag of the campaign is `true`"},"attachmentUrl":{"type":"string","description":"URL of the attachment file associated with the campaign. Empty string if no attachment is present."},"createdAt":{"type":"string","description":"Creation UTC date-time of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"emailExpirationDate":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaEmailExpirationDate","description":"Expiration date configuration for the email campaign, if set. Contains the duration and unit of the email expiry."},"footer":{"type":"string","description":"Footer of the campaign"},"header":{"type":"string","description":"Header of the campaign"},"htmlContent":{"type":"string","description":"HTML content of the campaign"},"inlineImageActivation":{"type":"boolean","description":"Status of inline image. inlineImageActivation = false means image can’t be embedded, & inlineImageActivation = true means image can be embedded, in the email."},"mirrorActive":{"type":"boolean","description":"Status of mirror links in campaign. mirrorActive = false means mirror links are deactivated, & mirrorActive = true means mirror links are activated, in the campaign"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"recurring":{"type":"boolean","description":"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"},"replyTo":{"type":"string","format":"email","description":"Email defined as the \"Reply to\" of the campaign"},"returnBounce":{"type":"integer","format":"int64","description":"Total number of non-delivered campaigns for a particular campaign id."},"sender":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaSender"},"sentDate":{"type":"string","description":"Sent UTC date-time of the campaign (YYYY-MM-DDTHH:mm:ss.SSSZ). Only available if 'status' of the campaign is 'sent'"},"shareLink":{"type":"string","description":"Link to share the campaign on social media. For trigger campaigns, this returns a descriptive message instead of a URL. For classic campaigns that have not been sent, this also returns a descriptive message."},"tag":{"type":"string","description":"Tag of the campaign"},"tags":{"type":"array","items":{"type":"string"},"description":"List of tags of the campaign"},"testSent":{"type":"boolean","description":"Retrieved the status of test email sending. (true=Test email has been sent  false=Test email has not been sent)"},"toField":{"type":"string","description":"Customisation of the \"to\" field of the campaign"},"utmCampaignValue":{"type":"string","description":"The utm_campaign value associated with the campaign. Only present if a UTM campaign value was set."},"utmContent":{"type":"string","description":"The utm_content value associated with the campaign. Only present if a utm_content value was set on create or update."},"utmID":{"type":"integer","format":"int64","description":"The campaign ID used as utm_id parameter. Only present if UTM campaign tracking with ID is enabled."},"utmMedium":{"type":"string","description":"The utm_medium value. Set to \"EMAIL\" when UTM campaign tracking is enabled."},"utmSource":{"type":"string","description":"The utm_source value. Set to \"Brevo\" when UTM campaign tracking is enabled."},"utmTerm":{"type":"string","description":"The utm_term value associated with the campaign. Only present if a utm_term value was set on create or update."},"recipients":{"$ref":"#/components/schemas/getCampaignRecipients"},"statistics":{"$ref":"#/components/schemas/getExtendedCampaignStats"}},"required":["id","name","status","type","createdAt","footer","header","htmlContent","modifiedAt","replyTo","sender","testSent","recipients","statistics"],"title":"Email Campaigns_getEmailCampaign_Response_200"},"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode"},"GetEmailCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetEmailCampaignRequestBadRequestError"},"GetEmailCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetEmailCampaignRequestNotFoundError"},"AbTestVersionClicksItems":{"type":"object","properties":{"clickRate":{"type":"string","description":"Percentage of clicks of link with respect to total clicks"},"clicksCount":{"type":"integer","format":"int64","description":"Number of times a link is clicked"},"link":{"type":"string","description":"URL of the link"}},"required":["clickRate","clicksCount","link"],"title":"AbTestVersionClicksItems"},"abTestVersionClicks":{"type":"array","items":{"$ref":"#/components/schemas/AbTestVersionClicksItems"},"description":"Information on clicked links for a particular version","title":"abTestVersionClicks"},"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaClickedLinks":{"type":"object","properties":{"Version A":{"$ref":"#/components/schemas/abTestVersionClicks"},"Version B":{"$ref":"#/components/schemas/abTestVersionClicks"}},"required":["Version A","Version B"],"title":"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaClickedLinks"},"abTestVersionStats":{"type":"object","properties":{"Version A":{"type":"string","description":"percentage of an event for version A"},"Version B":{"type":"string","description":"percentage of an event for version B"}},"required":["Version A","Version B"],"description":"Percentage of a particular event for both versions","title":"abTestVersionStats"},"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaStatistics":{"type":"object","properties":{"clicks":{"$ref":"#/components/schemas/abTestVersionStats"},"complaints":{"$ref":"#/components/schemas/abTestVersionStats"},"hardBounces":{"$ref":"#/components/schemas/abTestVersionStats"},"openers":{"$ref":"#/components/schemas/abTestVersionStats"},"softBounces":{"$ref":"#/components/schemas/abTestVersionStats"},"unsubscribed":{"$ref":"#/components/schemas/abTestVersionStats"}},"required":["clicks","complaints","hardBounces","openers","softBounces","unsubscribed"],"title":"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaStatistics"},"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningCriteria":{"type":"string","enum":["Open","Click"],"description":"Criteria chosen for winning version (Open/Click)","title":"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningCriteria"},"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningVersion":{"type":"string","enum":["notAvailable","pending","tie","A","B"],"description":"Winning Campaign Info. pending = Campaign has been picked for sending and winning version is yet to be decided, tie = A tie happened between both the versions, notAvailable = Campaign has not yet been picked for sending.","title":"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningVersion"},"Email Campaigns_getAbTestCampaignResult_Response_200":{"type":"object","properties":{"clickRate":{"type":"string","description":"Click rate for current winning version"},"clickedLinks":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaClickedLinks"},"openRate":{"type":"string","description":"Open rate for current winning version"},"statistics":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaStatistics"},"winningCriteria":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningCriteria","description":"Criteria chosen for winning version (Open/Click)"},"winningSubjectLine":{"type":"string","description":"Subject Line of current winning version"},"winningVersion":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaWinningVersion","description":"Winning Campaign Info. pending = Campaign has been picked for sending and winning version is yet to be decided, tie = A tie happened between both the versions, notAvailable = Campaign has not yet been picked for sending."},"winningVersionRate":{"type":"string","description":"Open/Click rate for the winner version"}},"title":"Email Campaigns_getAbTestCampaignResult_Response_200"},"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaCode"},"GetAbTestCampaignResultRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsCampaignIdAbTestCampaignResultGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetAbTestCampaignResultRequestBadRequestError"},"Email Campaigns_uploadImageToGallery_Response_201":{"type":"object","properties":{"url":{"type":"string","description":"URL of the image uploaded"}},"title":"Email Campaigns_uploadImageToGallery_Response_201"},"EmailCampaignsImagesPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"EmailCampaignsImagesPostResponsesContentApplicationJsonSchemaCode"},"UploadImageToGalleryRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/EmailCampaignsImagesPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UploadImageToGalleryRequestBadRequestError"},"SmsCampaignsGetParametersStatus":{"type":"string","enum":["suspended","archive","sent","queued","draft","inProcess"],"title":"SmsCampaignsGetParametersStatus"},"SmsCampaignsGetParametersSort":{"type":"string","enum":["asc","desc"],"default":"desc","title":"SmsCampaignsGetParametersSort"},"SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus":{"type":"string","enum":["draft","sent","archive","queued","suspended","inProcess"],"description":"Status of the SMS Campaign","title":"SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus"},"getSmsCampaignStats":{"type":"object","properties":{"answered":{"type":"integer","format":"int64","description":"Number of replies to the SMS"},"delivered":{"type":"integer","format":"int64","description":"Number of delivered SMS"},"hardBounces":{"type":"integer","format":"int64","description":"Number of hardbounced SMS"},"processing":{"type":"integer","format":"int64","description":"Number of processing SMS"},"sent":{"type":"integer","format":"int64","description":"Number of sent SMS"},"softBounces":{"type":"integer","format":"int64","description":"Number of softbounced SMS"},"unsubscriptions":{"type":"integer","format":"int64","description":"Number of unsubscription SMS"}},"required":["answered","delivered","hardBounces","processing","sent","softBounces","unsubscriptions"],"title":"getSmsCampaignStats"},"SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems":{"type":"object","properties":{"content":{"type":"string","description":"Content of the SMS Campaign"},"createdAt":{"type":"string","description":"Creation UTC date-time of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"id":{"type":"integer","format":"int64","description":"ID of the SMS Campaign"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"name":{"type":"string","description":"Name of the SMS Campaign"},"organisationPrefix":{"type":"string","description":"A recognizable prefix added as the Brand Name before the message content. Empty string if not set."},"scheduledAt":{"type":"string","description":"UTC date-time on which SMS campaign is scheduled. Should be in YYYY-MM-DDTHH:mm:ss.SSSZ format. Empty string if not scheduled."},"sender":{"type":"string","description":"Sender of the SMS Campaign"},"sentDate":{"type":"string","description":"UTC date-time on which the SMS campaign was sent (YYYY-MM-DDTHH:mm:ss.SSSZ). Only available if the campaign status is 'sent'."},"status":{"$ref":"#/components/schemas/SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsStatus","description":"Status of the SMS Campaign"},"unsubscribeInstruction":{"type":"string","description":"Instructions to unsubscribe from future communications. Empty string if not set."},"recipients":{"$ref":"#/components/schemas/getCampaignRecipients"},"statistics":{"$ref":"#/components/schemas/getSmsCampaignStats"}},"required":["content","createdAt","id","modifiedAt","name","sender","status","recipients","statistics"],"title":"SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"},"SMS Campaigns_getSmsCampaigns_Response_200":{"type":"object","properties":{"campaigns":{"type":"array","items":{"$ref":"#/components/schemas/SmsCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"}},"count":{"type":"integer","format":"int64","description":"Number of SMS campaigns retrieved"}},"title":"SMS Campaigns_getSmsCampaigns_Response_200"},"SmsCampaignsGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsGetResponsesContentApplicationJsonSchemaCode"},"GetSmsCampaignsRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetSmsCampaignsRequestBadRequestError"},"SmsCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"exclusionListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids which have to be excluded from a campaign"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Lists Ids to send the campaign to. **REQUIRED if scheduledAt is not empty**\n"}},"required":["listIds"],"title":"SmsCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients"},"SMS Campaigns_createSmsCampaign_Response_201":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the object created"}},"required":["id"],"title":"SMS Campaigns_createSmsCampaign_Response_201"},"SmsCampaignsPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsPostResponsesContentApplicationJsonSchemaCode"},"CreateSmsCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"CreateSmsCampaignRequestBadRequestError"},"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus":{"type":"string","enum":["draft","sent","archive","queued","suspended","inProcess"],"description":"Status of the SMS Campaign","title":"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus"},"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsExclusionListsItems":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the exclusion list"},"name":{"type":"string","description":"Name of the exclusion list"}},"title":"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsExclusionListsItems"},"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsListsItems":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the list"},"name":{"type":"string","description":"Name of the list"}},"title":"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsListsItems"},"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"exclusionLists":{"type":"array","items":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsExclusionListsItems"}},"lists":{"type":"array","items":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipientsListsItems"}}},"description":"Recipients of the SMS campaign. For a single campaign, lists and exclusion lists are returned as objects with id and name.","title":"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients"},"SMS Campaigns_getSmsCampaign_Response_200":{"type":"object","properties":{"content":{"type":"string","description":"Content of the SMS Campaign"},"createdAt":{"type":"string","description":"Creation UTC date-time of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"id":{"type":"integer","format":"int64","description":"ID of the SMS Campaign"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the SMS campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"name":{"type":"string","description":"Name of the SMS Campaign"},"organisationPrefix":{"type":"string","description":"A recognizable prefix added as the Brand Name before the message content. Empty string if not set."},"scheduledAt":{"type":"string","description":"UTC date-time on which SMS campaign is scheduled. Should be in YYYY-MM-DDTHH:mm:ss.SSSZ format. Empty string if not scheduled."},"sender":{"type":"string","description":"Sender of the SMS Campaign"},"sentDate":{"type":"string","description":"UTC date-time on which the SMS campaign was sent (YYYY-MM-DDTHH:mm:ss.SSSZ). Only available if the campaign status is 'sent'."},"status":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaStatus","description":"Status of the SMS Campaign"},"unsubscribeInstruction":{"type":"string","description":"Instructions to unsubscribe from future communications. Empty string if not set."},"recipients":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients","description":"Recipients of the SMS campaign. For a single campaign, lists and exclusion lists are returned as objects with id and name."},"statistics":{"$ref":"#/components/schemas/getSmsCampaignStats"},"tags":{"type":"array","items":{"type":"string"},"description":"Tags (labels) associated with the SMS campaign. Only available when retrieving a single campaign."}},"required":["content","createdAt","id","modifiedAt","name","sender","status","recipients","statistics"],"title":"SMS Campaigns_getSmsCampaign_Response_200"},"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode"},"GetSmsCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetSmsCampaignRequestBadRequestError"},"GetSmsCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetSmsCampaignRequestNotFoundError"},"SmsCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"exclusionListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids which have to be excluded from a campaign"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"Lists Ids to send the campaign to. **REQUIRED if scheduledAt is not empty**\n"}},"required":["listIds"],"title":"SmsCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients"},"SmsCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode"},"UpdateSmsCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateSmsCampaignRequestBadRequestError"},"UpdateSmsCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateSmsCampaignRequestNotFoundError"},"SmsCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode"},"DeleteSmsCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteSmsCampaignRequestBadRequestError"},"DeleteSmsCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteSmsCampaignRequestNotFoundError"},"SmsCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode"},"SendSmsCampaignNowRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdSendNowPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendSmsCampaignNowRequestNotFoundError"},"SmsCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode"},"UpdateSmsCampaignStatusRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateSmsCampaignStatusRequestBadRequestError"},"UpdateSmsCampaignStatusRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdStatusPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateSmsCampaignStatusRequestNotFoundError"},"SendTestSmsRequestBadRequestError":{"type":"object","properties":{"code":{"type":"string","description":"Response code"},"message":{"type":"string","description":"Response message"},"unexistingSms":{"type":"array","items":{"type":"string","format":"email"}},"withoutListSms":{"type":"array","items":{"type":"string","format":"email"}}},"required":["code","message"],"title":"SendTestSmsRequestBadRequestError"},"SmsCampaignsCampaignIdSendTestPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdSendTestPostResponsesContentApplicationJsonSchemaCode"},"SendTestSmsRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdSendTestPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendTestSmsRequestNotFoundError"},"SmsCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType":{"type":"string","enum":["all","delivered","answered","softBounces","hardBounces","unsubscribed"],"description":"Filter the recipients based on how they interacted with the campaign","title":"SmsCampaignsCampaignIdExportRecipientsPostRequestBodyContentApplicationJsonSchemaRecipientsType"},"SMS Campaigns_requestSmsRecipientExport_Response_202":{"type":"object","properties":{"processId":{"type":"integer","format":"int64","description":"Id of the process created"}},"required":["processId"],"title":"SMS Campaigns_requestSmsRecipientExport_Response_202"},"SmsCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode"},"RequestSmsRecipientExportRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"RequestSmsRecipientExportRequestBadRequestError"},"RequestSmsRecipientExportRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdExportRecipientsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"RequestSmsRecipientExportRequestNotFoundError"},"SmsCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"SmsCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode"},"SendSmsReportRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendSmsReportRequestBadRequestError"},"SendSmsReportRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/SmsCampaignsCampaignIdSendReportPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendSmsReportRequestNotFoundError"},"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCampaignStatus":{"type":"string","enum":["draft","scheduled","pending","approved","running","suspended","rejected","sent"],"description":"Status of the WhatsApp Campaign","title":"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCampaignStatus"},"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"excludedLists":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List of excluded list IDs"},"includedLists":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List of included list IDs"},"segments":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List of segment IDs"},"type":{"type":"string","description":"Type of recipients (list or segment)"}},"description":"Recipients of the WhatsApp Campaign","title":"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients"},"WhatsappCampStats":{"type":"object","properties":{"delivered":{"type":"integer"},"notSent":{"type":"integer"},"read":{"type":"integer"},"sent":{"type":"integer"},"unsubscribe":{"type":"integer"}},"required":["delivered","notSent","read","sent","unsubscribe"],"title":"WhatsappCampStats"},"variablesItems":{"type":"object","properties":{"datatype":{"type":"string"},"default":{"type":"string"},"name":{"type":"string"}},"title":"variablesItems"},"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplateComponentsItems":{"type":"object","properties":{"text":{"type":"string"},"type":{"type":"string"}},"title":"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplateComponentsItems"},"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplate":{"type":"object","properties":{"body_variables":{"type":"array","items":{"$ref":"#/components/schemas/variablesItems"},"description":"array of variables item variables"},"button_type":{"type":"string"},"category":{"type":"string","description":"description of the template"},"components":{"type":"array","items":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplateComponentsItems"},"description":"array of component item objects"},"contains_button":{"type":"boolean"},"display_header":{"type":"boolean"},"header_type":{"type":"string","description":"type of header"},"header_variables":{"type":"array","items":{"$ref":"#/components/schemas/variablesItems"},"description":"array of variables item object"},"hide_footer":{"type":"boolean"},"language":{"type":"string","description":"language of the template"},"name":{"type":"string","description":"name of the template"}},"title":"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplate"},"WhatsApp Campaigns_getWhatsAppCampaign_Response_200":{"type":"object","properties":{"campaignName":{"type":"string","description":"Name of the WhatsApp Campaign"},"campaignStatus":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCampaignStatus","description":"Status of the WhatsApp Campaign"},"createdAt":{"type":"string","description":"Creation UTC date-time of the WhatsApp campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"id":{"type":"integer","format":"int64","description":"ID of the WhatsApp Campaign"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the WhatsApp campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"scheduledAt":{"type":"string","description":"UTC date-time on which WhatsApp campaign is scheduled. Should be in YYYY-MM-DDTHH:mm:ss.SSSZ format"},"recipients":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaRecipients","description":"Recipients of the WhatsApp Campaign"},"senderNumber":{"type":"string","description":"Sender of the WhatsApp Campaign"},"stats":{"$ref":"#/components/schemas/WhatsappCampStats"},"template":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaTemplate"}},"required":["campaignName","campaignStatus","createdAt","id","modifiedAt","recipients","senderNumber","template"],"title":"WhatsApp Campaigns_getWhatsAppCampaign_Response_200"},"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode"},"GetWhatsAppCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetWhatsAppCampaignRequestBadRequestError"},"GetWhatsAppCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetWhatsAppCampaignRequestNotFoundError"},"WhatsappCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode"},"DeleteWhatsAppCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteWhatsAppCampaignRequestBadRequestError"},"DeleteWhatsAppCampaignRequestNotFoundError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdDeleteResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"DeleteWhatsAppCampaignRequestNotFoundError"},"WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaCampaignStatus":{"type":"string","enum":["scheduled","suspended"],"default":"scheduled","description":"Status of the campaign","title":"WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaCampaignStatus"},"WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"excludedListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids to exclude from the campaign"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if scheduledAt is not empty**. List Ids to send the campaign to\n"},"segments":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if listIds are not used**. Segment ids to send the campaign to.\n"}},"description":"Segment ids and List ids to include/exclude from campaign","title":"WhatsappCampaignsCampaignIdPutRequestBodyContentApplicationJsonSchemaRecipients"},"WhatsappCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode"},"UpdateWhatsAppCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsCampaignIdPutResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"UpdateWhatsAppCampaignRequestBadRequestError"},"WhatsappCampaignsTemplateListGetParametersSort":{"type":"string","enum":["asc","desc"],"default":"desc","title":"WhatsappCampaignsTemplateListGetParametersSort"},"WhatsappCampaignsTemplateListGetParametersSource":{"type":"string","enum":["Automation","Conversations"],"title":"WhatsappCampaignsTemplateListGetParametersSource"},"WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaTemplatesItems":{"type":"object","properties":{"category":{"type":"string","description":"category of the template"},"createdAt":{"type":"string","description":"Creation UTC date-time of the whatsApp template (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"errorReason":{"type":"string","description":"Error reason in the template creation"},"id":{"type":"integer","format":"int64","description":"ID of the whatsApp template"},"language":{"type":"string","description":"Language in which template exists"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the whatsApp template (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"name":{"type":"string","description":"Name of the whatsApp template"},"status":{"type":"string","description":"Status of the whatsApp template"},"type":{"type":"string","description":"Type of the whatsApp template"}},"required":["category","createdAt","id","language","modifiedAt","name","status","type"],"title":"WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaTemplatesItems"},"WhatsApp Campaigns_getWhatsAppTemplates_Response_200":{"type":"object","properties":{"count":{"type":"integer","format":"int64","description":"Number of whatsApp templates retrieved"},"templates":{"type":"array","items":{"$ref":"#/components/schemas/WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaTemplatesItems"}}},"title":"WhatsApp Campaigns_getWhatsAppTemplates_Response_200"},"WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaCode"},"GetWhatsAppTemplatesRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsTemplateListGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetWhatsAppTemplatesRequestBadRequestError"},"WhatsappCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients":{"type":"object","properties":{"excludedListIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"List ids to exclude from the campaign"},"listIds":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if scheduledAt is not empty**. List Ids to send the campaign to\n"},"segments":{"type":"array","items":{"type":"integer","format":"int64"},"description":"**Mandatory if listIds are not used**. Segment ids to send the campaign to.\n"}},"description":"Segment ids and List ids to include/exclude from campaign","title":"WhatsappCampaignsPostRequestBodyContentApplicationJsonSchemaRecipients"},"WhatsApp Campaigns_createWhatsAppCampaign_Response_201":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the object created"}},"required":["id"],"title":"WhatsApp Campaigns_createWhatsAppCampaign_Response_201"},"WhatsappCampaignsPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsPostResponsesContentApplicationJsonSchemaCode"},"CreateWhatsAppCampaignRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"CreateWhatsAppCampaignRequestBadRequestError"},"WhatsappCampaignsGetParametersSort":{"type":"string","enum":["asc","desc"],"default":"desc","title":"WhatsappCampaignsGetParametersSort"},"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsCampaignStatus":{"type":"string","enum":["draft","scheduled","pending","approved","running","suspended","rejected","sent"],"description":"Status of the Whatsapp Campaign","title":"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsCampaignStatus"},"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems":{"type":"object","properties":{"campaignName":{"type":"string","description":"Name of the WhatsApp Campaign"},"campaignStatus":{"$ref":"#/components/schemas/WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItemsCampaignStatus","description":"Status of the Whatsapp Campaign"},"createdAt":{"type":"string","description":"Creation UTC date-time of the WhatsApp campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"errorReason":{"type":"string","description":"Error Reason associated with the WhatsApp campaign sending"},"id":{"type":"integer","format":"int64","description":"ID of the WhatsApp Campaign"},"invalidatedContacts":{"type":"integer","format":"int64","description":"Count of invalidated contacts"},"modifiedAt":{"type":"string","description":"UTC date-time of last modification of the WhatsApp campaign (YYYY-MM-DDTHH:mm:ss.SSSZ)"},"readPercentage":{"type":"string","title":"float","description":"Read percentage of the the whatsapp campaign created"},"scheduledAt":{"type":"string","description":"UTC date-time on which WhatsApp campaign is scheduled. Should be in YYYY-MM-DDTHH:mm:ss.SSSZ format"},"stats":{"$ref":"#/components/schemas/WhatsappCampStats"},"templateId":{"type":"string","description":"Id of the WhatsApp template"}},"required":["campaignName","campaignStatus","createdAt","id","modifiedAt","scheduledAt","templateId"],"title":"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"},"WhatsApp Campaigns_getWhatsAppCampaigns_Response_200":{"type":"object","properties":{"campaigns":{"type":"array","items":{"$ref":"#/components/schemas/WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCampaignsItems"}},"count":{"type":"integer","format":"int64","description":"Number of WhatsApp campaigns retrieved"}},"title":"WhatsApp Campaigns_getWhatsAppCampaigns_Response_200"},"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCode"},"GetWhatsAppCampaignsRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetWhatsAppCampaignsRequestBadRequestError"},"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberNameStatus":{"type":"string","enum":["APPROVED","PENDING","REJECTED"],"description":"Status of the name associated with WhatsApp Phone number","title":"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberNameStatus"},"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberQuality":{"type":"string","enum":["GREEN","YELLOW","RED"],"description":"Quality status of phone number associated with WhatsApp account. There are three quality ratings. example - **High (GREEN) , Medium (YELLOW) and Low(RED)**","title":"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberQuality"},"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaWhatsappBusinessAccountStatus":{"type":"string","enum":["APPROVED","PENDING","REJECTED"],"description":"Status information related to WhatsApp Api account","title":"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaWhatsappBusinessAccountStatus"},"WhatsApp Campaigns_getWhatsAppConfig_Response_200":{"type":"object","properties":{"businessStatus":{"type":"string","description":"Verification status information of the Business account"},"phoneNumberNameStatus":{"$ref":"#/components/schemas/WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberNameStatus","description":"Status of the name associated with WhatsApp Phone number"},"phoneNumberQuality":{"$ref":"#/components/schemas/WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaPhoneNumberQuality","description":"Quality status of phone number associated with WhatsApp account. There are three quality ratings. example - **High (GREEN) , Medium (YELLOW) and Low(RED)**"},"sendingLimit":{"type":"string","description":"Sending limit of the WhatsApp account"},"whatsappBusinessAccountId":{"type":"string","description":"Id of the WhatsApp business account"},"whatsappBusinessAccountStatus":{"$ref":"#/components/schemas/WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaWhatsappBusinessAccountStatus","description":"Status information related to WhatsApp Api account"}},"title":"WhatsApp Campaigns_getWhatsAppConfig_Response_200"},"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaCode"},"GetWhatsAppConfigRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsConfigGetResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"GetWhatsAppConfigRequestBadRequestError"},"WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaCategory":{"type":"string","enum":["MARKETING","UTILITY"],"description":"Category of the template","title":"WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaCategory"},"WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaSource":{"type":"string","enum":["Automation","Conversations"],"description":"source of the template","title":"WhatsappCampaignsTemplatePostRequestBodyContentApplicationJsonSchemaSource"},"WhatsApp Campaigns_createWhatsAppTemplate_Response_201":{"type":"object","properties":{"id":{"type":"integer","format":"int64","description":"ID of the object created"}},"required":["id"],"title":"WhatsApp Campaigns_createWhatsAppTemplate_Response_201"},"WhatsappCampaignsTemplatePostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsTemplatePostResponsesContentApplicationJsonSchemaCode"},"CreateWhatsAppTemplateRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsTemplatePostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"CreateWhatsAppTemplateRequestBadRequestError"},"WhatsApp Campaigns_sendWhatsAppTemplateApproval_Response_200":{"type":"object","properties":{},"description":"Empty response body","title":"WhatsApp Campaigns_sendWhatsAppTemplateApproval_Response_200"},"WhatsappCampaignsTemplateApprovalTemplateIdPostResponsesContentApplicationJsonSchemaCode":{"type":"string","enum":["invalid_parameter","missing_parameter","out_of_range","campaign_processing","campaign_sent","document_not_found","not_enough_credits","permission_denied","duplicate_parameter","duplicate_request","method_not_allowed","unauthorized","account_under_validation","not_acceptable","bad_request","unprocessable_entity","Domain does not exist","Contact email not found","Attribute not found","Category id not found","Invalid parameters passed","Record(s) for identifier not found","Returned when query params are invalid","Returned when invalid data posted","Feed not found","Campaign ID not found","api-key not found","DMARC policy requires domain authentication","DNS records not properly configured","Invalid OTP code provided","OTP code has expired","Domain already exists in your account","The sum of all IP weights must equal 100","Authentication failed","Insufficient credits","Request already processed"],"description":"Error code displayed in case of a failure","title":"WhatsappCampaignsTemplateApprovalTemplateIdPostResponsesContentApplicationJsonSchemaCode"},"SendWhatsAppTemplateApprovalRequestBadRequestError":{"type":"object","properties":{"code":{"$ref":"#/components/schemas/WhatsappCampaignsTemplateApprovalTemplateIdPostResponsesContentApplicationJsonSchemaCode","description":"Error code displayed in case of a failure"},"message":{"type":"string","description":"Readable message associated to the failure"}},"required":["code","message"],"title":"SendWhatsAppTemplateApprovalRequestBadRequestError"}},"securitySchemes":{"api-key":{"type":"apiKey","in":"header","name":"api-key","description":"The API key should be passed in the request headers as `api-key` for authentication."}}}}