Menu

Expand
Rate this page:

Campaigns API

Elements that can be shared among more than one endpoint definition.

Create a Campaign

POST /v3/campaigns

Base url: https://api.sendgrid.com

This endpoint allows you to create a campaign.

In order to send or schedule the campaign, you will be required to provide a subject, sender ID, content (we suggest both html and plain text), and at least one list or segment ID. This information is not required when you create a campaign.

Authentication

  • API Key

Headers

Authorization
string
default: Bearer <<YOUR_API_KEY_HERE>>
required
on-behalf-of
string

The on-behalf-of header allows you to make API calls from a parent account on behalf of the parent's Subusers or customer accounts. You will use the parent account's API key when using this header. When making a call on behalf of a customer account, the property value should be "account-id" followed by the customer account's ID (e.g., on-behalf-of: account-id <account-id>). When making a call on behalf of a Subuser, the property value should be the Subuser's username (e.g., on-behalf-of: <subuser-username>). See On Behalf Of for more information.

default: None

Request Body

object
title
string

The display title of your campaign. This will be viewable by you in the Marketing Campaigns UI.

required
subject
string or null

The subject of your campaign that your recipients will see.

sender_id
integer or null

The ID of the "sender" identity that you have created. Your recipients will see this as the "from" on your marketing emails.

list_ids
array[integer] or null

The IDs of the lists you are sending this campaign to. You can have both segment IDs and list IDs

segment_ids
array[integer] or null

The segment IDs that you are sending this list to. You can have both segment IDs and list IDs. Segments are limited to 10 segment IDs.

categories
array[string] or null

The categories you would like associated to this campaign.

suppression_group_id
integer or null

The suppression group that this marketing email belongs to, allowing recipients to opt-out of emails of this type.

custom_unsubscribe_url
string or null

This is the url of the custom unsubscribe page that you provide for customers to unsubscribe from your suppression groups.

ip_pool
string or null

The pool of IPs that you would like to send this email from.

html_content
string or null

The HTML of your marketing email.

plain_content
string or null

The plain text content of your emails.

editor
string

The editor used in the UI.

Allowed Values: code, design
{
  "id": 986724,
  "title": "May Newsletter",
  "subject": "New Products for Summer!",
  "sender_id": 124451,
  "list_ids": [
    110,
    124
  ],
  "segment_ids": [
    110
  ],
  "categories": [
    "summer line"
  ],
  "suppression_group_id": 42,
  "custom_unsubscribe_url": "",
  "ip_pool": "marketing",
  "html_content": "<html><head><title></title></head><body><p>Check out our summer line!</p></body></html>",
  "plain_content": "Check out our summer line!",
  "status": "Draft"
}

Responses

object
title
string

The display title of your campaign. This will be viewable by you in the Marketing Campaigns UI.

required
subject
string or null

The subject of your campaign that your recipients will see.

sender_id
integer or null

The ID of the "sender" identity that you have created. Your recipients will see this as the "from" on your marketing emails.

list_ids
array[integer] or null

The IDs of the lists you are sending this campaign to. You can have both segment IDs and list IDs

segment_ids
array[integer] or null

The segment IDs that you are sending this list to. You can have both segment IDs and list IDs. Segments are limited to 10 segment IDs.

categories
array[string] or null

The categories you would like associated to this campaign.

suppression_group_id
integer or null

The suppression group that this marketing email belongs to, allowing recipients to opt-out of emails of this type.

custom_unsubscribe_url
string or null

This is the url of the custom unsubscribe page that you provide for customers to unsubscribe from your suppression groups.

ip_pool
string or null

The pool of IPs that you would like to send this email from.

html_content
string or null

The HTML of your marketing email.

plain_content
string or null

The plain text content of your emails.

editor
string

The editor used in the UI.

Allowed Values: code, design
status
string

The status of your campaign.

required
id
integer
{
  "id": 986724,
  "title": "May Newsletter",
  "subject": "New Products for Summer!",
  "sender_id": 124451,
  "list_ids": [
    110,
    124
  ],
  "segment_ids": [
    110
  ],
  "categories": [
    "summer line"
  ],
  "suppression_group_id": 42,
  "custom_unsubscribe_url": "",
  "ip_pool": "marketing",
  "html_content": "<html><head><title></title></head><body><p>Check out our summer line!</p></body></html>",
  "plain_content": "Check out our summer line!",
  "status": "Draft"
}
object
errors
array[object]
message
string

the error message

required
field
string or null

the field that generated the error

help
object

helper text or docs for troubleshooting

id
string
{
  "errors": [
    {
      "field": "field_name",
      "message": "error message"
    }
  ]
}
object
Loading Code Sample...
        
        

        Create a Campaign

        Rate this page:

        Need some help?

        We all do sometimes. Get help now from the Twilio SendGrid Support Team.

        Running into a coding hurdle? Lean on the wisdom of the crowd by browsing the SendGrid tag on Stack Overflow or visiting Twilio's Stack Overflow Collective.

        Loading Code Sample...
              
              
              

              Thank you for your feedback!

              Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

              Sending your feedback...
              🎉 Thank you for your feedback!
              Something went wrong. Please try again.

              Thanks for your feedback!

              thanks-feedback-gif