Twilio SendGrid — Printing Press CLI
Prerequisites: Install the CLI
This skill drives the sendgrid-pp-cli binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:
- Install via the Printing Press installer. It defaults binaries to
$HOME/.local/bin on macOS/Linux and %LOCALAPPDATA%\Programs\PrintingPress\bin on Windows:npx -y @mvanhorn/printing-press-library install sendgrid --cli-only
- Verify:
sendgrid-pp-cli --version
- Ensure the reported install directory is on
$PATH for the agent/runtime that will invoke this skill.
If the npx install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer):
go install github.com/mvanhorn/printing-press-library/library/productivity/sendgrid/cmd/sendgrid-pp-cli@latest
If --version reports "command not found" after install, the runtime cannot see the binary directory on $PATH. Do not proceed with skill commands until verification succeeds.
When to Use This CLI
Use sendgrid-pp-cli for any SendGrid task an agent or operator wants to run from the terminal: transactional mail sends, suppression hygiene, contact list mirror, marketing campaign post-mortems, deliverability stats reporting, template management, and subuser rollups. It is the right choice when the workflow needs cross-endpoint joins (bounce investigations) or offline analysis (stats rollups, diffs) that the live API alone cannot produce.
Unique Capabilities
These capabilities aren't available in any other tool for this API.
Local state that compounds
suppression sync — Bidirectional sync between SendGrid suppressions and an external CSV/CRM source, with dry-run preview and unified schema across the four inconsistent suppression types.
When you need to reconcile SendGrid's suppression list with another system without writing custom glue code per suppression type.
sendgrid-pp-cli suppression sync --from internal-suppressions.csv --apply --dry-run --json
suppression diff — Three-way diff between the local SQLite mirror, live API, and an external CSV; shows adds, drops, and drift across the suppression universe.
When auditing CRM ↔ SendGrid drift before a cleanup pass or migration.
sendgrid-pp-cli suppression diff bounces --against crm-export.csv --json
stats rollup — Pulls flat windowed stats from the API, stores them in SQLite, and computes day/week/month rollups plus WoW/MoM deltas.
Use for trend reporting and weekly deliverability standups without paying for paid analytics.
sendgrid-pp-cli stats rollup --by week --metric opens,clicks --window 90d --json
templates diff — Side-by-side semantic diff of two template versions (HTML, plain text, subject, test data) with HTML-aware normalization.
Use during template review to see exactly what changed between draft versions.
sendgrid-pp-cli templates diff d-abc123 v1 v2
Pre-flight checks the API skips
templates lint — Statically extracts {{handlebars}} from a template version and cross-checks them against a contact record or JSON payload, flagging missing or typo'd variables before send.
Use before any production send to catch silently-empty template variables that would otherwise ship as blanks.
sendgrid-pp-cli templates lint d-abc123 --against '{"first_name":"Sam"}' --json
Cross-endpoint joins
bounce why — Joins suppressions, email activity, and stats locally to produce a narrative explaining why a specific address keeps bouncing.
When a customer reports they aren't getting emails and you need a fast root cause.
sendgrid-pp-cli bounce why user@example.com --json
subusers rollup — Fans out per-subuser stats pulls in parallel, caches them locally, and produces a single aggregated table for ESP operators managing tenant hierarchies.
Use for tenant-level deliverability reporting when you run subusers and need per-tenant numbers in one view.
sendgrid-pp-cli subusers rollup --metric reputation,bounces --window 30d --json
Rate-aware streaming
activity tail — Streams Email Activity events with rate-limit-aware polling (respects the 6/min cap), local FTS, and filters by status/from/to.
Use during a deliverability incident to watch events as they happen without tripping the rate limit.
sendgrid-pp-cli activity tail --filter status:bounce --json
Command Reference
access-settings — Manage access settings
sendgrid-pp-cli access-settings add-ip-to-allow-list — This endpoint allows you to add one or more allowed IP addresses. To allow one or more IP addresses, pass them...
sendgrid-pp-cli access-settings delete-allowed-ip — This endpoint allows you to remove a specific IP address from your list of allowed addresses. When removing a...
sendgrid-pp-cli access-settings delete-allowed-ips — This endpoint allows you to remove one or more IP addresses from your list of allowed addresses. To remove one...
sendgrid-pp-cli access-settings get-allowed-ip — This endpoint allows you to retreive a specific IP address that has been allowed to access your account. You...
sendgrid-pp-cli access-settings list-access-activity — **This endpoint allows you to retrieve a list of all of the IP addresses that recently attempted to access your...
sendgrid-pp-cli access-settings list-allowed-ip — This endpoint allows you to retrieve a list of IP addresses that are currently allowed to access your account....
alerts — Twilio SendGrid Alerts API.
sendgrid-pp-cli alerts create — This endpoint allows you to create a new alert.
sendgrid-pp-cli alerts delete — This endpoint allows you to delete an alert.
sendgrid-pp-cli alerts get — This endpoint allows you to retrieve a specific alert.
sendgrid-pp-cli alerts list — This endpoint allows you to retrieve all of your alerts.
sendgrid-pp-cli alerts update — This endpoint allows you to update an alert.
api-keys — Twilio SendGrid API Keys API.
sendgrid-pp-cli api-keys create — This endpoint allows you to create a new API Key for the user. To create your initial SendGrid API Key, you...
sendgrid-pp-cli api-keys delete — This endpoint allows you to revoke an existing API Key using an api_key_id Authentications using a revoked API...
sendgrid-pp-cli api-keys get — This endpoint allows you to retrieve a single API key using an api_key_id. The endpoint will return a key's...
sendgrid-pp-cli api-keys list — This endpoint allows you to retrieve all API Keys that belong to the authenticated user. A successful response...
sendgrid-pp-cli api-keys update — This endpoint allows you to update the name and scopes of a given API key. You must pass this endpoint a JSON...
sendgrid-pp-cli api-keys update-name — This endpoint allows you to update the name of an existing API Key. You must pass this endpoint a JSON request...
asm — Manage asm
sendgrid-pp-cli asm add-suppression-to-group — This endpoint allows you to add email addresses to an unsubscribe group. If you attempt to add suppressions to a...
sendgrid-pp-cli asm creat-group — This endpoint allows you to create a new suppression group. To add an email address to the suppression group,...
sendgrid-pp-cli asm create-global-suppression — This endpoint allows you to add one or more email addresses to the global suppressions group.
sendgrid-pp-cli asm delete-global-suppression — This endpoint allows you to remove an email address from the global suppressions group. Deleting a suppression...
sendgrid-pp-cli asm delete-group — This endpoint allows you to delete a suppression group. If a recipient uses the 'one-click unsubscribe' option...
sendgrid-pp-cli asm delete-suppression-from-group — This endpoint allows you to remove a suppressed email address from the given suppression group. Removing an...
sendgrid-pp-cli asm get-global-suppression — **This endpoint allows you to retrieve a global suppression. You can also use this endpoint to confirm if an email...
sendgrid-pp-cli asm get-group — This endpoint allows you to retrieve a single suppression group.
sendgrid-pp-cli asm get-suppression — This endpoint returns a list of all groups from which the given email address has been unsubscribed.
sendgrid-pp-cli asm list-group — This endpoint allows you to retrieve a list of all suppression groups created by this user. This endpoint can...
sendgrid-pp-cli asm list-suppression — This endpoint allows you to retrieve a list of all suppressions.
sendgrid-pp-cli asm list-suppression-from-group — This endpoint allows you to retrieve all suppressed email addresses belonging to the given group.
sendgrid-pp-cli asm search-suppression-from-group — This endpoint allows you to search a suppression group for multiple suppressions. When given a list of email...
sendgrid-pp-cli asm update-group — This endpoint allows you to update or change a suppression group.
browsers — Manage browsers
sendgrid-pp-cli browsers — This endpoint allows you to retrieve your email statistics segmented by browser type. **We only store up to 7...
campaigns — Manage campaigns
sendgrid-pp-cli campaigns create — This endpoint allows you to create a campaign. In order to send or schedule the campaign, you will be required...
sendgrid-pp-cli campaigns delete — This endpoint allows you to delete a specific campaign.
sendgrid-pp-cli campaigns get — This endpoint allows you to retrieve a specific campaign.
sendgrid-pp-cli campaigns list — This endpoint allows you to retrieve a paginated list of all of your campaigns. Returns campaigns in reverse...
sendgrid-pp-cli campaigns update — This endpoint allows you to update a specific campaign. This is especially useful if you only set up the...
categories — Twilio SendGrid Category Stats API
sendgrid-pp-cli categories list-category — This endpoint allows you to retrieve a paginated list of all of your categories. You can use the limit query...
sendgrid-pp-cli categories list-category-stat — This endpoint allows you to retrieve all of your email statistics for each of your categories. If you do not...
sendgrid-pp-cli categories list-category-stat-sum — **This endpoint allows you to retrieve the total sum of each email statistic for every category over the given date...
clients — Manage clients
sendgrid-pp-cli clients — This endpoint allows you to retrieve your email statistics segmented by client type. **We only store up to 7...
contactdb — Manage contactdb
sendgrid-pp-cli contactdb add-recipient — This endpoint allows you to add a Marketing Campaigns recipient. You can add custom field data as a parameter on...
sendgrid-pp-cli contactdb add-recipient-to-contact-db-list — This endpoint allows you to add a single recipient to a list.
sendgrid-pp-cli contactdb add-recipients-to-contact-db-list — This endpoint allows you to add multiple recipients to a list. Adds existing recipients to a list, passing in...
sendgrid-pp-cli contactdb create-contact-db-list — This endpoint allows you to create a list for your recipients.
sendgrid-pp-cli contactdb create-custom-field — This endpoint allows you to create a custom field. You can create up to 120 custom fields.
sendgrid-pp-cli contactdb create-segment — This endpoint allows you to create a new segment. Valid operators for create and update depend on the type of...
sendgrid-pp-cli contactdb delete-contact-db-list — This endpoint allows you to delete a specific recipient list with the given ID.
sendgrid-pp-cli contactdb delete-contact-db-lists — This endpoint allows you to delete multiple recipient lists.
sendgrid-pp-cli contactdb delete-custom-field — This endpoint allows you to delete a custom field by ID.
sendgrid-pp-cli contactdb delete-recipient — This endpoint allows you to delete a single recipient with the given ID from your contact database. > Use this...
sendgrid-pp-cli contactdb delete-recipient-from-contact-db-list — This endpoint allows you to delete a single recipient from a list.
sendgrid-pp-cli contactdb delete-recipients — This endpoint allows you to deletes one or more recipients. The body of an API call to this endpoint must...
sendgrid-pp-cli contactdb delete-segment — This endpoint allows you to delete a segment from your recipients database. You also have the option to delete...
sendgrid-pp-cli contactdb export-recipient — Use this endpoint to export lists or segments of recipients. If you would just like to have a link to the...
sendgrid-pp-cli contactdb get-billable — This endpoint allows you to retrieve the number of Marketing Campaigns recipients that you will be billed for....
sendgrid-pp-cli contactdb get-contact-db-list — This endpoint allows you to retrieve a single recipient list.
sendgrid-pp-cli contactdb get-custom-field — This endpoint allows you to retrieve a custom field by ID.
sendgrid-pp-cli contactdb get-export-recipient — This endpoint can be used to check the status of a recipient export job. To use this call, you will need the...
sendgrid-pp-cli contactdb get-recipient — This endpoint allows you to retrieve a single recipient by ID from your contact database.
sendgrid-pp-cli contactdb get-recipient-list — This endpoint allows you to retrieve the lists that a given recipient belongs to. Each recipient can be on many...
sendgrid-pp-cli contactdb get-segment — This endpoint allows you to retrieve a single segment with the given ID.
sendgrid-pp-cli contactdb list-contact-db-list — **This endpoint allows you to retrieve all of your recipient lists. If you don't have any lists, an empty array will...
sendgrid-pp-cli contactdb list-custom-field — This endpoint allows you to retrieve all custom fields.
sendgrid-pp-cli contactdb list-export-recipient — Use this endpoint to retrieve details of all current exported jobs. It will return an array of objects, each of...
sendgrid-pp-cli contactdb list-recipient — This endpoint allows you to retrieve all of your Marketing Campaigns recipients. Batch deletion of a page makes...
sendgrid-pp-cli contactdb list-recipient-count — This endpoint allows you to retrieve the total number of Marketing Campaigns recipients.
sendgrid-pp-cli contactdb list-recipient-for-segment — This endpoint allows you to retrieve all of the recipients in a segment with the given ID.
sendgrid-pp-cli contactdb list-recipients-from-contact-db-list — This endpoint allows you to retrieve all recipients on the list with the given ID.
sendgrid-pp-cli contactdb list-reserved-field — This endpoint allows you to list all fields that are reserved and can't be used for custom field names.
sendgrid-pp-cli contactdb list-search-recipient — This endpoint allows you to perform a search on all of your Marketing Campaigns recipients. field_name: * is a...
sendgrid-pp-cli contactdb list-segment — This endpoint allows you to retrieve all of your segments.
sendgrid-pp-cli contactdb list-status — This endpoint allows you to check the upload status of a Marketing Campaigns recipient.
sendgrid-pp-cli contactdb search-recipient — Search using segment conditions without actually creating a segment. Body contains a JSON object with conditions,...
sendgrid-pp-cli contactdb update-contact-db-list — This endpoint allows you to update the name of one of your recipient lists.
sendgrid-pp-cli contactdb update-recipient — This endpoint allows you to update one or more recipients. The body of an API call to this endpoint must include...
sendgrid-pp-cli contactdb update-segment — This endpoint allows you to update a segment.
designs — Twilio SendGrid Marketing Campaigns Designs API
sendgrid-pp-cli designs create — This endpoint allows you to create a new design. You can add a new design by passing data, including a string of...
sendgrid-pp-cli designs delete — This endpoint allows you to delete a single design. Be sure to check the ID of the design you intend to delete...
sendgrid-pp-cli designs duplicate — This endpoint allows you to duplicate one of your existing designs. Modifying an existing design is often the...
sendgrid-pp-cli designs duplicate-pre-built — This endpoint allows you to duplicate one of the pre-built Twilio SendGrid designs. Like duplicating one of your...
sendgrid-pp-cli designs get — This endpoint allows you to retrieve a single design. A GET request to /designs/{id} will retrieve details...
sendgrid-pp-cli designs get-pre-built — This endpoint allows you to retrieve a single pre-built design. A GET request to /designs/pre-builts/{id} will...
sendgrid-pp-cli designs list — This endpoint allows you to retrieve a list of designs already stored in your Design Library. A GET request to...
sendgrid-pp-cli designs list-pre-built — This endpoint allows you to retrieve a list of pre-built designs provided by Twilio SendGrid. Unlike the...
sendgrid-pp-cli designs update — This endpoint allows you to edit a design. The Design API supports PATCH requests, which allow you to make...
devices — Manage devices
sendgrid-pp-cli devices — This endpoint allows you to retrieve your email statistics segmented by the device type. **We only store up to 7...
engagementquality — Manage engagementquality
sendgrid-pp-cli engagementquality list-engagement-quality-score — This operation allows you to retrieve your SendGrid Engagement Quality (SEQ) scores for a specified date range....
sendgrid-pp-cli engagementquality list-subuser-engagement-quality-score — **This operation allows you to retrieve SendGrid Engagement Quality (SEQ) scores for your Subusers or customer...
geo — Manage geo
sendgrid-pp-cli geo — This endpoint allows you to retrieve your email statistics segmented by country and state/province. **We only...
ips — Manage ips
sendgrid-pp-cli ips add — This endpoint is for adding a(n) IP Address(es) to your account.
sendgrid-pp-cli ips add-to-pool — This endpoint allows you to add an IP address to an IP pool. You can add the same IP address to multiple pools....
sendgrid-pp-cli ips create-pool — This endpoint allows you to create an IP pool. Before you can create an IP pool, you need to activate the IP in...
sendgrid-pp-cli ips delete-from-pool — This endpoint allows you to remove an IP address from an IP pool.
sendgrid-pp-cli ips delete-pool — This endpoint allows you to delete an IP pool.
sendgrid-pp-cli ips get — This endpoint allows you to see which IP pools a particular IP address has been added to. The same IP address...
sendgrid-pp-cli ips get-pool — This endpoint allows you to get all of the IP addresses that are in a specific IP pool.
sendgrid-pp-cli ips get-warm-up — This endpoint allows you to retrieve the warmup status for a specific IP address. You can retrieve all of your...
sendgrid-pp-cli ips list — This endpoint allows you to retrieve a paginated list of all assigned and unassigned IPs. Response includes warm...
sendgrid-pp-cli ips list-assigned — This endpoint allows you to retrieve only assigned IP addresses. A single IP address or a range of IP addresses...
sendgrid-pp-cli ips list-pool — This endpoint allows you to get all of your IP pools.
sendgrid-pp-cli ips list-remaining-count — **This endpoint gets amount of IP Addresses that can still be created during a given period and the price of those...
sendgrid-pp-cli ips list-warm-up — This endpoint allows you to retrieve all of your IP addresses that are currently warming up.
sendgrid-pp-cli ips stop-warm-up — This endpoint allows you to remove an IP address from warmup mode. Your request will return a 204 status code if...
sendgrid-pp-cli ips update-pool — This endpoint allows you to update the name of an IP pool.
sendgrid-pp-cli ips warm-up — This endpoint allows you to put an IP address into warmup mode.
logs — Manage logs
sendgrid-pp-cli logs get-message-by-id — Get all of the details about the specified message.
sendgrid-pp-cli logs list-messages-by-filter — List recent messages within Email Logs, or search for messages using a filter.
mail — Manage mail
sendgrid-pp-cli mail create-batch — This operation allows you to generate a new mail batch ID. Once a batch ID is created, you can associate it with...
sendgrid-pp-cli mail get-batch — This operation allows you to validate a mail batch ID. If you provide a valid batch ID, this operation will...
sendgrid-pp-cli mail send — The Mail Send operation allows you to send email over SendGrid's v3 Web API For an overview of this API, including...
mail-settings — Twilio SendGrid Mail Settings API
sendgrid-pp-cli mail-settings list — This endpoint allows you to retrieve a paginated list of all mail settings. Each setting will be returned with...
sendgrid-pp-cli mail-settings list-address-whitelist — This endpoint allows you to retrieve your current email address whitelist settings. The Address Whitelist...
sendgrid-pp-cli mail-settings list-bounce-purge — This endpoint allows you to retrieve your current Bounce Purge mail settings. The Bounce Purge mail setting...
sendgrid-pp-cli mail-settings list-footer — This endpoint allows you to retrieve your current Footer mail settings. The Footer setting will insert a custom...
sendgrid-pp-cli mail-settings list-forward-bounce — This endpoint allows you to retrieve your current bounce forwarding mail settings. Enabling the Forward Bounce...
sendgrid-pp-cli mail-settings list-forward-spam — This endpoint allows you to retrieve your current Forward Spam mail settings. Enabling the Forward Spam setting...
sendgrid-pp-cli mail-settings list-template — This endpoint allows you to retrieve your current legacy email template settings. This setting refers to our...
sendgrid-pp-cli mail-settings update-address-whitelist — This endpoint allows you to update your current email address whitelist settings. For Regional Subusers -...
sendgrid-pp-cli mail-settings update-bounce-purge — This endpoint allows you to update your current Bounce Purge mail settings. The Bounce Purge mail metting allows...
sendgrid-pp-cli mail-settings update-footer — This endpoint allows you to update your current Footer mail settings. The Footer setting will insert a custom...
sendgrid-pp-cli mail-settings update-forward-bounce — This endpoint allows you to update your current bounce forwarding mail settings. Enabling the Forward Bounce...
sendgrid-pp-cli mail-settings update-forward-spam — This endpoint allows you to update your current Forward Spam mail settings. Enabling the Forward Spam setting...
sendgrid-pp-cli mail-settings update-template — This endpoint allows you to update your current legacy email template settings. This setting refers to our...
mailbox-providers — Manage mailbox providers
sendgrid-pp-cli mailbox-providers — This endpoint allows you to retrieve your email statistics segmented by recipient mailbox provider. **We only...
marketing — Manage marketing
sendgrid-pp-cli marketing add-integration — This endpoint creates an Integration for email event forwarding. Each Integration has a maximum number of allowed...
sendgrid-pp-cli marketing create-field-definition — This endpoint creates a new custom field definition. Custom field definitions are created with the given name...
sendgrid-pp-cli marketing create-list — This endpoint creates a new contacts list. Once you create a list, you can use the UI to [trigger an...
sendgrid-pp-cli marketing create-segment — Segment name has to be unique. A user can not create a new segment with an existing segment name.
sendgrid-pp-cli marketing create-sender — This endpoint allows you to create a new Sender. You may create up to 100 unique Senders. Senders are required...
sendgrid-pp-cli marketing create-single-send — This endpoint allows you to create a new Single Send. Please note that if you are migrating from the previous...
sendgrid-pp-cli marketing delete-contact — This endpoint can be used to delete one or more contacts. The query parameter ids must set to a...
sendgrid-pp-cli marketing delete-contact-identifier — This endpoint can be used to delete one identifier from a contact. Deletion jobs are processed asynchronously....
sendgrid-pp-cli marketing delete-contact-lists — This endpoint allows you to remove contacts from a given list. The contacts will not be deleted. Only their list...
sendgrid-pp-cli marketing delete-field-definition — This endpoint deletes a defined Custom Field. You can delete only Custom Fields; Reserved Fields cannot be deleted.
sendgrid-pp-cli marketing delete-integration — This endpoint deletes Integrations.
sendgrid-pp-cli marketing delete-list — This endpoint allows you to deletes a specific list. Optionally, you can also delete contacts associated to the...
sendgrid-pp-cli marketing delete-scheduled-single-send — This endpoint allows you to cancel a scheduled Single Send using a Single Send ID. Making a DELETE request to...
sendgrid-pp-cli marketing delete-segment — This endpoint allows you to delete a segment by segment_id. Note that deleting a segment does not delete the...
sendgrid-pp-cli marketing delete-segment-segments — This endpoint allows you to delete a segment by ID.
sendgrid-pp-cli marketing delete-sender — This endpoint allows you to delete an existing Sender.
sendgrid-pp-cli marketing delete-single-send — This endpoint allows you to delete one Single Send using a Single Send ID. To first retrieve all your Single...
sendgrid-pp-cli marketing delete-single-sends — This endpoint allows you to delete multiple Single Sends using an array of Single Sends IDs. To first retrieve...
sendgrid-pp-cli marketing duplicate-single-send — This endpoint allows you to duplicate an existing Single Send using its Single Send ID. Duplicating a Single...
sendgrid-pp-cli marketing export-automation-stat — This endpoint allows you to export Single Send stats as .CSV data. You can specify one Single Send or many:...
sendgrid-pp-cli marketing export-contact — Use this endpoint to export lists or segments of contacts. If you would just like to have a link to the exported...
sendgrid-pp-cli marketing export-single-send-stat — This endpoint allows you to export Single Send stats as .CSV data. You can specify one Single Send or many:...
sendgrid-pp-cli marketing find-integration-by-id — This endpoint returns the data for a specific Integration.
sendgrid-pp-cli marketing get-automation-stat — This endpoint allows you to retrieve stats for a single Automation using its ID. Multiple Automation IDs can be...
sendgrid-pp-cli marketing get-contact — This endpoint returns the full details and all fields for the specified contact. The 'Get Contacts by...
sendgrid-pp-cli marketing get-contact-by-identifiers — Use this endpoint to retrieve up to 100 contacts that match the requested identifier values for a single identifier...
sendgrid-pp-cli marketing get-export-contact — This endpoint can be used to check the status of a contact export job. To use this call, you will need the id...
sendgrid-pp-cli marketing get-import-contact — This endpoint can be used to check the status of a contact import job. Use the job_id from the 'Import...
sendgrid-pp-cli marketing get-integrations-by-user — This endpoint returns all the Integrations for the user making this call.
sendgrid-pp-cli marketing get-list — This endpoint returns data about a specific list. Setting the optional parameter contact_sample=true returns...
sendgrid-pp-cli marketing get-segment — This endpoint allows you to retrieve a single segment by ID.
sendgrid-pp-cli marketing get-segment-segments — Get Marketing Campaigns Segment by ID
sendgrid-pp-cli marketing get-sender — This endpoint allows you to get the details for a specific Sender by id.
sendgrid-pp-cli marketing get-single-send — This endpoint allows you to retrieve details about one Single Send using a Single Send ID. You can retrieve all...
sendgrid-pp-cli marketing get-single-send-stat — This endpoint allows you to retrieve stats for an individual Single Send using a Single Send ID. Multiple Single...
sendgrid-pp-cli marketing import-contact — **This endpoint allows a CSV upload containing up to one million contacts or 5GB of data, whichever is smaller. At...
sendgrid-pp-cli marketing list-automation-stat — This endpoint allows you to retrieve stats for all your Automations. By default, all of your Automations will be...
sendgrid-pp-cli marketing list-batched-contact — This endpoint is used to retrieve a set of contacts identified by their IDs. This can be more efficient endpoint...
sendgrid-pp-cli marketing list-category — This endpoint allows you to retrieve all the categories associated with your Single Sends. This endpoint will...
sendgrid-pp-cli marketing list-click-tracking-stat — This endpoint lets you retrieve click-tracking stats for a single Automation. The stats returned list the URLs...
sendgrid-pp-cli marketing list-contact — This endpoint will return up to 50 of the most recent contacts uploaded or attached to a list. This list will...
sendgrid-pp-cli marketing list-contact-by-email — **This endpoint allows you to retrieve up to 100 contacts matching the searched email address(es), including any...
sendgrid-pp-cli marketing list-contact-count — This endpoint returns the total number of contacts you have stored. Twilio SendGrid recommends exporting your...
sendgrid-pp-cli marketing list-contact-count-lists — This endpoint returns the number of contacts on a specific list.
sendgrid-pp-cli marketing list-export-contact — Use this endpoint to retrieve details of all current exported jobs. It will return an array of objects, each of...
sendgrid-pp-cli marketing list-field-definition — This endpoint retrieves all defined Custom Fields and Reserved Fields.
sendgrid-pp-cli marketing list-list — This endpoint returns an array of all of your contact lists.
sendgrid-pp-cli marketing list-segment — This endpoint allows you to retrieve a list of segments. The query param parent_list_ids is treated as a...
sendgrid-pp-cli marketing list-segment-segments — This endpoint allows you to retrieve a list of segments. The query param parent_list_ids is treated as a...
sendgrid-pp-cli marketing list-sender — This endpoint allows you to get a list of all your Senders.
sendgrid-pp-cli marketing list-single-send — This endpoint allows you to retrieve all your Single Sends. Returns all of your Single Sends with condensed...
sendgrid-pp-cli marketing list-single-send-stat — This endpoint allows you to retrieve stats for all your Single Sends. By default, all of your Single Sends will...
sendgrid-pp-cli marketing list-single-send-tracking-stat — This endpoint lets you retrieve click-tracking stats for one Single Send. The stats returned list the URLs...
sendgrid-pp-cli marketing refresh-segment — Manually refresh a segment by segment ID.
sendgrid-pp-cli marketing reset-sender-verification — This endpoint allows you to resend the verification request for a specific Sender.
sendgrid-pp-cli marketing schedule-single-send — This endpoint allows you to send a Single Send immediately or schedule it to be sent at a later time. To send...
sendgrid-pp-cli marketing search-contact — Use this endpoint to locate contacts. The request body's query field accepts valid...
sendgrid-pp-cli marketing search-single-send — This endpoint allows you to search for Single Sends based on specified criteria. You can search for Single Sends...
sendgrid-pp-cli marketing send-test-email — This endpoint allows you to send a test marketing email to a list of email addresses. Before sending a marketing...
sendgrid-pp-cli marketing update-contact — **This endpoint allows the upsert (insert or update) of up to 30,000...
sendgrid-pp-cli marketing update-field-definition — This endpoint allows you to update a defined Custom Field. Only your Custom fields can be modified; Reserved...
sendgrid-pp-cli marketing update-integration — This endpoint updates an existing Integration.
sendgrid-pp-cli marketing update-list — This endpoint updates the name of a list.
sendgrid-pp-cli marketing update-segment — Segment name has to be unique. A user can not create a new segment with an existing segment name.
sendgrid-pp-cli marketing update-sender — This endpoint allows you to update an existing Sender. Updates to from.email require re-verification. If your...
sendgrid-pp-cli marketing update-single-send — This endpoint allows you to update a Single Send using a Single Send ID. You only need to pass the properties...
messages — Manage messages
sendgrid-pp-cli messages download-csv — **This endpoint will return a presigned URL that can be used to download the CSV that was requested from the...
sendgrid-pp-cli messages get — Get all of the details about the specified message. For Regional (EU) subusers, no data will be generated for this...
sendgrid-pp-cli messages list — Filter all messages to search your Email Activity. All queries must be [URL...
sendgrid-pp-cli messages request-csv — This request will kick off a backend process to generate a CSV file. Once generated, the worker will then send an...
partner-settings — Twilio SendGrid Partner Settings API
sendgrid-pp-cli partner-settings — This endpoint allows you to retrieve a paginated list of all partner settings that you can enable. You can use...
partners — Manage partners
sendgrid-pp-cli partners add-account-ips — Adds IP(s) to the specified account.
sendgrid-pp-cli partners authenticate-account — Authenticates and logs in a user to Twilio Sendgrid as a specific admin identity configured for SSO by partner. Any...
sendgrid-pp-cli partners create-account — Creates a new account, with specified offering, under the organization.
sendgrid-pp-cli partners delete-account — Delete a specific account under your organization by account ID. Note that this is an irreversible action that...
sendgrid-pp-cli partners get-account-state — Retrieve the state of the specified account.
sendgrid-pp-cli partners list-account — Retrieves all accounts under the organization.
sendgrid-pp-cli partners list-account-ips — Retrieves a paginated list of IPs associated with the specified account, ordered by most recently added IP.
sendgrid-pp-cli partners list-account-offering — Retrieves offering information about the specified account.
sendgrid-pp-cli partners list-offering — Retrieves offerings available under the organization.
sendgrid-pp-cli partners remove-account-ips — Removes IP(s) from the specified account.
sendgrid-pp-cli partners update-account-offering — Changes a package offering for the specified account. Please note that an account can have only one package...
sendgrid-pp-cli partners update-account-state — Update the state of the specified account.
recipients — Twilio SendGrid Legacy Marketing Campaigns Contacts: Recipients API
sendgrid-pp-cli recipients — This operation allows you to delete your recipients' personal email data The Delete Recipients' Email Data...
scopes — Twilio SendGrid Scopes API
sendgrid-pp-cli scopes — This endpoint returns a list of all scopes that this user has access to. API Keys are used to authenticate with...
send-ips — Manage send ips
sendgrid-pp-cli send-ips add-ip — This operation adds a Twilio SendGrid IP address to your account. You can also assign up to 100 Subusers to the IP...
sendgrid-pp-cli send-ips add-ips-to-ip-pool — This operation appends a batch of IPs to an IP Pool. This operation requires all IP assignments to succeed. If any...
sendgrid-pp-cli send-ips add-sub-users-to-ip — This operation appends a batch of Subusers to a specified IP address. This endpoint requires all Subuser assignments...
sendgrid-pp-cli send-ips create-ip-pool — This operation will create a named IP Pool and associate specified IP addresses with the newly created Pool. This...
sendgrid-pp-cli send-ips delete-ip-pool — This operation deletes an IP Pool and unassigns all IP addresses associated with the Pool. IP addresses associated...
sendgrid-pp-cli send-ips delete-ips-from-ip-pool — This operation removes a batch of IPs from an IP Pool. All IPs associated with the Pool will be unassigned from the...
sendgrid-pp-cli send-ips delete-sub-users-from-ip — This operation removes a batch of Subusers from a specified IP address.
sendgrid-pp-cli send-ips get-ip — This operation returns details for a specified IP address. Details include whether the IP is assigned to a parent...
sendgrid-pp-cli send-ips get-ip-pool — This operation will return the details for a specified IP Pool, including the Pool's name, ID, a sample list of the...
sendgrid-pp-cli send-ips list-ip — This operation returns a list of all IP addresses associated with your account. A sample of IP details is returned...
sendgrid-pp-cli send-ips list-ip-assigned-to-ip-pool — This operation returns the IP addresses that are assigned to the specified IP pool.
sendgrid-pp-cli send-ips list-ip-pool — This operation returns a list of your IP Pools and a sample of each Pools' associated IP addresses. A maximum of 10...
sendgrid-pp-cli send-ips list-sub-user-assigned-to-ip — This operation returns a list of Subuser IDs that have been assigned the specified IP address. To retrieve more...
sendgrid-pp-cli send-ips update-ip — This operation updates an IP address's settings, including whether the IP is set to warm up automatically, if the IP...
sendgrid-pp-cli send-ips update-ip-pool — This operation will rename an IP Pool. An IP Pool name cannot start with a dot/period (.) or space.
senders — Twilio SendGrid Marketing Campaigns Senders API
sendgrid-pp-cli senders create — This endpoint allows you to create a new sender identity. You may create up to 100 unique sender identities.
sendgrid-pp-cli senders delete — This endpoint allows you to delete one of your sender identities.
sendgrid-pp-cli senders get — This endpoint allows you to retrieve a specific sender identity.
sendgrid-pp-cli senders list — **This endpoint all
…(truncated)
1---2name: pp-sendgrid3description: Every Twilio SendGrid endpoint, plus offline suppression diffs, stats time-series rollups, and a template-variable... Trigger phrases: `send transactional mail`, `manage SendGrid suppressions`, `audit SendGrid bounces`, `SendGrid templates lint`, `SendGrid stats rollup`, `use sendgrid`, `run sendgrid`.4license: Apache-2.05---6<!-- GENERATED FILE — DO NOT EDIT.
7 This file is a verbatim mirror of library/productivity/sendgrid/SKILL.md,
8 regenerated post-merge by tools/generate-skills/. Hand-edits here are
9 silently overwritten on the next regen. Edit the library/ source instead.
10 See the repository agent guide, section "Generated artifacts: registry.json, cli-skills/". -->
11
12# Twilio SendGrid — Printing Press CLI
13
14## Prerequisites: Install the CLI
15
16This skill drives the `sendgrid-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first:
17
181. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows:
19 ```bash
20 npx -y @mvanhorn/printing-press-library install sendgrid --cli-only
21 ```
222. Verify: `sendgrid-pp-cli --version`
233. Ensure the reported install directory is on `$PATH` for the agent/runtime that will invoke this skill.
24
25If the `npx` install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer):
26
27```bash
28go install github.com/mvanhorn/printing-press-library/library/productivity/sendgrid/cmd/sendgrid-pp-cli@latest
29```
30
31If `--version` reports "command not found" after install, the runtime cannot see the binary directory on `$PATH`. Do not proceed with skill commands until verification succeeds.
32
33## When to Use This CLI
34
35Use sendgrid-pp-cli for any SendGrid task an agent or operator wants to run from the terminal: transactional mail sends, suppression hygiene, contact list mirror, marketing campaign post-mortems, deliverability stats reporting, template management, and subuser rollups. It is the right choice when the workflow needs cross-endpoint joins (bounce investigations) or offline analysis (stats rollups, diffs) that the live API alone cannot produce.
36
37## Unique Capabilities
38
39These capabilities aren't available in any other tool for this API.
40
41### Local state that compounds
42
43- **`suppression sync`** — Bidirectional sync between SendGrid suppressions and an external CSV/CRM source, with dry-run preview and unified schema across the four inconsistent suppression types.
44
45 _When you need to reconcile SendGrid's suppression list with another system without writing custom glue code per suppression type._
46
47 ```bash
48 sendgrid-pp-cli suppression sync --from internal-suppressions.csv --apply --dry-run --json
49 ```
50- **`suppression diff`** — Three-way diff between the local SQLite mirror, live API, and an external CSV; shows adds, drops, and drift across the suppression universe.
51
52 _When auditing CRM ↔ SendGrid drift before a cleanup pass or migration._
53
54 ```bash
55 sendgrid-pp-cli suppression diff bounces --against crm-export.csv --json
56 ```
57- **`stats rollup`** — Pulls flat windowed stats from the API, stores them in SQLite, and computes day/week/month rollups plus WoW/MoM deltas.
58
59 _Use for trend reporting and weekly deliverability standups without paying for paid analytics._
60
61 ```bash
62 sendgrid-pp-cli stats rollup --by week --metric opens,clicks --window 90d --json
63 ```
64- **`templates diff`** — Side-by-side semantic diff of two template versions (HTML, plain text, subject, test data) with HTML-aware normalization.
65
66 _Use during template review to see exactly what changed between draft versions._
67
68 ```bash
69 sendgrid-pp-cli templates diff d-abc123 v1 v2
70 ```
71
72### Pre-flight checks the API skips
73
74- **`templates lint`** — Statically extracts {{handlebars}} from a template version and cross-checks them against a contact record or JSON payload, flagging missing or typo'd variables before send.
75
76 _Use before any production send to catch silently-empty template variables that would otherwise ship as blanks._
77
78 ```bash
79 sendgrid-pp-cli templates lint d-abc123 --against '{"first_name":"Sam"}' --json
80 ```
81
82### Cross-endpoint joins
83
84- **`bounce why`** — Joins suppressions, email activity, and stats locally to produce a narrative explaining why a specific address keeps bouncing.
85
86 _When a customer reports they aren't getting emails and you need a fast root cause._
87
88 ```bash
89 sendgrid-pp-cli bounce why user@example.com --json
90 ```
91- **`subusers rollup`** — Fans out per-subuser stats pulls in parallel, caches them locally, and produces a single aggregated table for ESP operators managing tenant hierarchies.
92
93 _Use for tenant-level deliverability reporting when you run subusers and need per-tenant numbers in one view._
94
95 ```bash
96 sendgrid-pp-cli subusers rollup --metric reputation,bounces --window 30d --json
97 ```
98
99### Rate-aware streaming
100
101- **`activity tail`** — Streams Email Activity events with rate-limit-aware polling (respects the 6/min cap), local FTS, and filters by status/from/to.
102
103 _Use during a deliverability incident to watch events as they happen without tripping the rate limit._
104
105 ```bash
106 sendgrid-pp-cli activity tail --filter status:bounce --json
107 ```
108
109## Command Reference
110
111**access-settings** — Manage access settings
112
113- `sendgrid-pp-cli access-settings add-ip-to-allow-list` — **This endpoint allows you to add one or more allowed IP addresses.** To allow one or more IP addresses, pass them...
114- `sendgrid-pp-cli access-settings delete-allowed-ip` — **This endpoint allows you to remove a specific IP address from your list of allowed addresses.** When removing a...
115- `sendgrid-pp-cli access-settings delete-allowed-ips` — **This endpoint allows you to remove one or more IP addresses from your list of allowed addresses.** To remove one...
116- `sendgrid-pp-cli access-settings get-allowed-ip` — **This endpoint allows you to retreive a specific IP address that has been allowed to access your account.** You...
117- `sendgrid-pp-cli access-settings list-access-activity` — **This endpoint allows you to retrieve a list of all of the IP addresses that recently attempted to access your...
118- `sendgrid-pp-cli access-settings list-allowed-ip` — **This endpoint allows you to retrieve a list of IP addresses that are currently allowed to access your account.**...
119
120**alerts** — Twilio SendGrid Alerts API.
121
122- `sendgrid-pp-cli alerts create` — **This endpoint allows you to create a new alert.**
123- `sendgrid-pp-cli alerts delete` — **This endpoint allows you to delete an alert.**
124- `sendgrid-pp-cli alerts get` — **This endpoint allows you to retrieve a specific alert.**
125- `sendgrid-pp-cli alerts list` — **This endpoint allows you to retrieve all of your alerts.**
126- `sendgrid-pp-cli alerts update` — **This endpoint allows you to update an alert.**
127
128**api-keys** — Twilio SendGrid API Keys API.
129
130- `sendgrid-pp-cli api-keys create` — **This endpoint allows you to create a new API Key for the user.** To create your initial SendGrid API Key, you...
131- `sendgrid-pp-cli api-keys delete` — **This endpoint allows you to revoke an existing API Key using an `api_key_id`** Authentications using a revoked API...
132- `sendgrid-pp-cli api-keys get` — **This endpoint allows you to retrieve a single API key using an `api_key_id`.** The endpoint will return a key's...
133- `sendgrid-pp-cli api-keys list` — **This endpoint allows you to retrieve all API Keys that belong to the authenticated user.** A successful response...
134- `sendgrid-pp-cli api-keys update` — **This endpoint allows you to update the name and scopes of a given API key.** You must pass this endpoint a JSON...
135- `sendgrid-pp-cli api-keys update-name` — **This endpoint allows you to update the name of an existing API Key.** You must pass this endpoint a JSON request...
136
137**asm** — Manage asm
138
139- `sendgrid-pp-cli asm add-suppression-to-group` — **This endpoint allows you to add email addresses to an unsubscribe group.** If you attempt to add suppressions to a...
140- `sendgrid-pp-cli asm creat-group` — **This endpoint allows you to create a new suppression group.** To add an email address to the suppression group,...
141- `sendgrid-pp-cli asm create-global-suppression` — **This endpoint allows you to add one or more email addresses to the global suppressions group.**
142- `sendgrid-pp-cli asm delete-global-suppression` — **This endpoint allows you to remove an email address from the global suppressions group.** Deleting a suppression...
143- `sendgrid-pp-cli asm delete-group` — **This endpoint allows you to delete a suppression group.** If a recipient uses the 'one-click unsubscribe' option...
144- `sendgrid-pp-cli asm delete-suppression-from-group` — **This endpoint allows you to remove a suppressed email address from the given suppression group.** Removing an...
145- `sendgrid-pp-cli asm get-global-suppression` — **This endpoint allows you to retrieve a global suppression. You can also use this endpoint to confirm if an email...
146- `sendgrid-pp-cli asm get-group` — **This endpoint allows you to retrieve a single suppression group.**
147- `sendgrid-pp-cli asm get-suppression` — **This endpoint returns a list of all groups from which the given email address has been unsubscribed.**
148- `sendgrid-pp-cli asm list-group` — **This endpoint allows you to retrieve a list of all suppression groups created by this user.** This endpoint can...
149- `sendgrid-pp-cli asm list-suppression` — **This endpoint allows you to retrieve a list of all suppressions.**
150- `sendgrid-pp-cli asm list-suppression-from-group` — **This endpoint allows you to retrieve all suppressed email addresses belonging to the given group.**
151- `sendgrid-pp-cli asm search-suppression-from-group` — **This endpoint allows you to search a suppression group for multiple suppressions.** When given a list of email...
152- `sendgrid-pp-cli asm update-group` — **This endpoint allows you to update or change a suppression group.**
153
154**browsers** — Manage browsers
155
156- `sendgrid-pp-cli browsers` — **This endpoint allows you to retrieve your email statistics segmented by browser type.** **We only store up to 7...
157
158**campaigns** — Manage campaigns
159
160- `sendgrid-pp-cli campaigns create` — **This endpoint allows you to create a campaign.** In order to send or schedule the campaign, you will be required...
161- `sendgrid-pp-cli campaigns delete` — **This endpoint allows you to delete a specific campaign.**
162- `sendgrid-pp-cli campaigns get` — **This endpoint allows you to retrieve a specific campaign.**
163- `sendgrid-pp-cli campaigns list` — **This endpoint allows you to retrieve a paginated list of all of your campaigns.** Returns campaigns in reverse...
164- `sendgrid-pp-cli campaigns update` — **This endpoint allows you to update a specific campaign.** This is especially useful if you only set up the...
165
166**categories** — Twilio SendGrid Category Stats API
167
168- `sendgrid-pp-cli categories list-category` — **This endpoint allows you to retrieve a paginated list of all of your categories.** You can use the `limit` query...
169- `sendgrid-pp-cli categories list-category-stat` — **This endpoint allows you to retrieve all of your email statistics for each of your categories.** If you do not...
170- `sendgrid-pp-cli categories list-category-stat-sum` — **This endpoint allows you to retrieve the total sum of each email statistic for every category over the given date...
171
172**clients** — Manage clients
173
174- `sendgrid-pp-cli clients` — **This endpoint allows you to retrieve your email statistics segmented by client type.** **We only store up to 7...
175
176**contactdb** — Manage contactdb
177
178- `sendgrid-pp-cli contactdb add-recipient` — **This endpoint allows you to add a Marketing Campaigns recipient.** You can add custom field data as a parameter on...
179- `sendgrid-pp-cli contactdb add-recipient-to-contact-db-list` — **This endpoint allows you to add a single recipient to a list.**
180- `sendgrid-pp-cli contactdb add-recipients-to-contact-db-list` — **This endpoint allows you to add multiple recipients to a list.** Adds existing recipients to a list, passing in...
181- `sendgrid-pp-cli contactdb create-contact-db-list` — **This endpoint allows you to create a list for your recipients.**
182- `sendgrid-pp-cli contactdb create-custom-field` — **This endpoint allows you to create a custom field.** **You can create up to 120 custom fields.**
183- `sendgrid-pp-cli contactdb create-segment` — **This endpoint allows you to create a new segment.** Valid operators for create and update depend on the type of...
184- `sendgrid-pp-cli contactdb delete-contact-db-list` — **This endpoint allows you to delete a specific recipient list with the given ID.**
185- `sendgrid-pp-cli contactdb delete-contact-db-lists` — **This endpoint allows you to delete multiple recipient lists.**
186- `sendgrid-pp-cli contactdb delete-custom-field` — **This endpoint allows you to delete a custom field by ID.**
187- `sendgrid-pp-cli contactdb delete-recipient` — **This endpoint allows you to delete a single recipient with the given ID from your contact database.** > Use this...
188- `sendgrid-pp-cli contactdb delete-recipient-from-contact-db-list` — **This endpoint allows you to delete a single recipient from a list.**
189- `sendgrid-pp-cli contactdb delete-recipients` — **This endpoint allows you to deletes one or more recipients.** The body of an API call to this endpoint must...
190- `sendgrid-pp-cli contactdb delete-segment` — **This endpoint allows you to delete a segment from your recipients database.** You also have the option to delete...
191- `sendgrid-pp-cli contactdb export-recipient` — **Use this endpoint to export lists or segments of recipients**. If you would just like to have a link to the...
192- `sendgrid-pp-cli contactdb get-billable` — **This endpoint allows you to retrieve the number of Marketing Campaigns recipients that you will be billed for.**...
193- `sendgrid-pp-cli contactdb get-contact-db-list` — **This endpoint allows you to retrieve a single recipient list.**
194- `sendgrid-pp-cli contactdb get-custom-field` — **This endpoint allows you to retrieve a custom field by ID.**
195- `sendgrid-pp-cli contactdb get-export-recipient` — **This endpoint can be used to check the status of a recipient export job**. To use this call, you will need the...
196- `sendgrid-pp-cli contactdb get-recipient` — **This endpoint allows you to retrieve a single recipient by ID from your contact database.**
197- `sendgrid-pp-cli contactdb get-recipient-list` — **This endpoint allows you to retrieve the lists that a given recipient belongs to.** Each recipient can be on many...
198- `sendgrid-pp-cli contactdb get-segment` — **This endpoint allows you to retrieve a single segment with the given ID.**
199- `sendgrid-pp-cli contactdb list-contact-db-list` — **This endpoint allows you to retrieve all of your recipient lists. If you don't have any lists, an empty array will...
200- `sendgrid-pp-cli contactdb list-custom-field` — **This endpoint allows you to retrieve all custom fields.**
201- `sendgrid-pp-cli contactdb list-export-recipient` — **Use this endpoint to retrieve details of all current exported jobs**. It will return an array of objects, each of...
202- `sendgrid-pp-cli contactdb list-recipient` — **This endpoint allows you to retrieve all of your Marketing Campaigns recipients.** Batch deletion of a page makes...
203- `sendgrid-pp-cli contactdb list-recipient-count` — **This endpoint allows you to retrieve the total number of Marketing Campaigns recipients.**
204- `sendgrid-pp-cli contactdb list-recipient-for-segment` — **This endpoint allows you to retrieve all of the recipients in a segment with the given ID.**
205- `sendgrid-pp-cli contactdb list-recipients-from-contact-db-list` — **This endpoint allows you to retrieve all recipients on the list with the given ID.**
206- `sendgrid-pp-cli contactdb list-reserved-field` — **This endpoint allows you to list all fields that are reserved and can't be used for custom field names.**
207- `sendgrid-pp-cli contactdb list-search-recipient` — **This endpoint allows you to perform a search on all of your Marketing Campaigns recipients.** field_name: * is a...
208- `sendgrid-pp-cli contactdb list-segment` — **This endpoint allows you to retrieve all of your segments.**
209- `sendgrid-pp-cli contactdb list-status` — **This endpoint allows you to check the upload status of a Marketing Campaigns recipient.**
210- `sendgrid-pp-cli contactdb search-recipient` — Search using segment conditions without actually creating a segment. Body contains a JSON object with `conditions`,...
211- `sendgrid-pp-cli contactdb update-contact-db-list` — **This endpoint allows you to update the name of one of your recipient lists.**
212- `sendgrid-pp-cli contactdb update-recipient` — **This endpoint allows you to update one or more recipients.** The body of an API call to this endpoint must include...
213- `sendgrid-pp-cli contactdb update-segment` — **This endpoint allows you to update a segment.**
214
215**designs** — Twilio SendGrid Marketing Campaigns Designs API
216
217- `sendgrid-pp-cli designs create` — **This endpoint allows you to create a new design**. You can add a new design by passing data, including a string of...
218- `sendgrid-pp-cli designs delete` — **This endpoint allows you to delete a single design**. Be sure to check the ID of the design you intend to delete...
219- `sendgrid-pp-cli designs duplicate` — **This endpoint allows you to duplicate one of your existing designs**. Modifying an existing design is often the...
220- `sendgrid-pp-cli designs duplicate-pre-built` — **This endpoint allows you to duplicate one of the pre-built Twilio SendGrid designs**. Like duplicating one of your...
221- `sendgrid-pp-cli designs get` — **This endpoint allows you to retrieve a single design**. A GET request to `/designs/{id}` will retrieve details...
222- `sendgrid-pp-cli designs get-pre-built` — **This endpoint allows you to retrieve a single pre-built design**. A GET request to `/designs/pre-builts/{id}` will...
223- `sendgrid-pp-cli designs list` — **This endpoint allows you to retrieve a list of designs already stored in your Design Library**. A GET request to...
224- `sendgrid-pp-cli designs list-pre-built` — **This endpoint allows you to retrieve a list of pre-built designs provided by Twilio SendGrid**. Unlike the...
225- `sendgrid-pp-cli designs update` — **This endpoint allows you to edit a design**. The Design API supports PATCH requests, which allow you to make...
226
227**devices** — Manage devices
228
229- `sendgrid-pp-cli devices` — **This endpoint allows you to retrieve your email statistics segmented by the device type.** **We only store up to 7...
230
231**engagementquality** — Manage engagementquality
232
233- `sendgrid-pp-cli engagementquality list-engagement-quality-score` — **This operation allows you to retrieve your SendGrid Engagement Quality (SEQ) scores for a specified date range**....
234- `sendgrid-pp-cli engagementquality list-subuser-engagement-quality-score` — **This operation allows you to retrieve SendGrid Engagement Quality (SEQ) scores for your Subusers or customer...
235
236**geo** — Manage geo
237
238- `sendgrid-pp-cli geo` — **This endpoint allows you to retrieve your email statistics segmented by country and state/province.** **We only...
239
240**ips** — Manage ips
241
242- `sendgrid-pp-cli ips add` — **This endpoint is for adding a(n) IP Address(es) to your account.**
243- `sendgrid-pp-cli ips add-to-pool` — **This endpoint allows you to add an IP address to an IP pool.** You can add the same IP address to multiple pools....
244- `sendgrid-pp-cli ips create-pool` — **This endpoint allows you to create an IP pool.** Before you can create an IP pool, you need to activate the IP in...
245- `sendgrid-pp-cli ips delete-from-pool` — **This endpoint allows you to remove an IP address from an IP pool.**
246- `sendgrid-pp-cli ips delete-pool` — **This endpoint allows you to delete an IP pool.**
247- `sendgrid-pp-cli ips get` — **This endpoint allows you to see which IP pools a particular IP address has been added to.** The same IP address...
248- `sendgrid-pp-cli ips get-pool` — **This endpoint allows you to get all of the IP addresses that are in a specific IP pool.**
249- `sendgrid-pp-cli ips get-warm-up` — **This endpoint allows you to retrieve the warmup status for a specific IP address.** You can retrieve all of your...
250- `sendgrid-pp-cli ips list` — **This endpoint allows you to retrieve a paginated list of all assigned and unassigned IPs.** Response includes warm...
251- `sendgrid-pp-cli ips list-assigned` — **This endpoint allows you to retrieve only assigned IP addresses.** A single IP address or a range of IP addresses...
252- `sendgrid-pp-cli ips list-pool` — **This endpoint allows you to get all of your IP pools.**
253- `sendgrid-pp-cli ips list-remaining-count` — **This endpoint gets amount of IP Addresses that can still be created during a given period and the price of those...
254- `sendgrid-pp-cli ips list-warm-up` — **This endpoint allows you to retrieve all of your IP addresses that are currently warming up.**
255- `sendgrid-pp-cli ips stop-warm-up` — **This endpoint allows you to remove an IP address from warmup mode.** Your request will return a 204 status code if...
256- `sendgrid-pp-cli ips update-pool` — **This endpoint allows you to update the name of an IP pool.**
257- `sendgrid-pp-cli ips warm-up` — **This endpoint allows you to put an IP address into warmup mode.**
258
259**logs** — Manage logs
260
261- `sendgrid-pp-cli logs get-message-by-id` — Get all of the details about the specified message.
262- `sendgrid-pp-cli logs list-messages-by-filter` — List recent messages within Email Logs, or search for messages using a filter.
263
264**mail** — Manage mail
265
266- `sendgrid-pp-cli mail create-batch` — **This operation allows you to generate a new mail batch ID.** Once a batch ID is created, you can associate it with...
267- `sendgrid-pp-cli mail get-batch` — **This operation allows you to validate a mail batch ID.** If you provide a valid batch ID, this operation will...
268- `sendgrid-pp-cli mail send` — *The Mail Send operation allows you to send email over SendGrid's v3 Web API* For an overview of this API, including...
269
270**mail-settings** — Twilio SendGrid Mail Settings API
271
272- `sendgrid-pp-cli mail-settings list` — **This endpoint allows you to retrieve a paginated list of all mail settings.** Each setting will be returned with...
273- `sendgrid-pp-cli mail-settings list-address-whitelist` — **This endpoint allows you to retrieve your current email address whitelist settings.** The Address Whitelist...
274- `sendgrid-pp-cli mail-settings list-bounce-purge` — **This endpoint allows you to retrieve your current Bounce Purge mail settings.** The Bounce Purge mail setting...
275- `sendgrid-pp-cli mail-settings list-footer` — **This endpoint allows you to retrieve your current Footer mail settings.** The Footer setting will insert a custom...
276- `sendgrid-pp-cli mail-settings list-forward-bounce` — **This endpoint allows you to retrieve your current bounce forwarding mail settings.** Enabling the Forward Bounce...
277- `sendgrid-pp-cli mail-settings list-forward-spam` — **This endpoint allows you to retrieve your current Forward Spam mail settings.** Enabling the Forward Spam setting...
278- `sendgrid-pp-cli mail-settings list-template` — **This endpoint allows you to retrieve your current legacy email template settings.** This setting refers to our...
279- `sendgrid-pp-cli mail-settings update-address-whitelist` — **This endpoint allows you to update your current email address whitelist settings.** For Regional Subusers -...
280- `sendgrid-pp-cli mail-settings update-bounce-purge` — **This endpoint allows you to update your current Bounce Purge mail settings.** The Bounce Purge mail metting allows...
281- `sendgrid-pp-cli mail-settings update-footer` — **This endpoint allows you to update your current Footer mail settings.** The Footer setting will insert a custom...
282- `sendgrid-pp-cli mail-settings update-forward-bounce` — **This endpoint allows you to update your current bounce forwarding mail settings.** Enabling the Forward Bounce...
283- `sendgrid-pp-cli mail-settings update-forward-spam` — **This endpoint allows you to update your current Forward Spam mail settings.** Enabling the Forward Spam setting...
284- `sendgrid-pp-cli mail-settings update-template` — **This endpoint allows you to update your current legacy email template settings.** This setting refers to our...
285
286**mailbox-providers** — Manage mailbox providers
287
288- `sendgrid-pp-cli mailbox-providers` — **This endpoint allows you to retrieve your email statistics segmented by recipient mailbox provider.** **We only...
289
290**marketing** — Manage marketing
291
292- `sendgrid-pp-cli marketing add-integration` — This endpoint creates an Integration for email event forwarding. Each Integration has a maximum number of allowed...
293- `sendgrid-pp-cli marketing create-field-definition` — **This endpoint creates a new custom field definition.** Custom field definitions are created with the given `name`...
294- `sendgrid-pp-cli marketing create-list` — **This endpoint creates a new contacts list.** Once you create a list, you can use the UI to [trigger an...
295- `sendgrid-pp-cli marketing create-segment` — Segment `name` has to be unique. A user can not create a new segment with an existing segment name.
296- `sendgrid-pp-cli marketing create-sender` — **This endpoint allows you to create a new Sender.** *You may create up to 100 unique Senders.* Senders are required...
297- `sendgrid-pp-cli marketing create-single-send` — **This endpoint allows you to create a new Single Send.** Please note that if you are migrating from the previous...
298- `sendgrid-pp-cli marketing delete-contact` — **This endpoint can be used to delete one or more contacts**. The query parameter `ids` must set to a...
299- `sendgrid-pp-cli marketing delete-contact-identifier` — **This endpoint can be used to delete one identifier from a contact.** Deletion jobs are processed asynchronously....
300- `sendgrid-pp-cli marketing delete-contact-lists` — **This endpoint allows you to remove contacts from a given list.** The contacts will not be deleted. Only their list...
301- `sendgrid-pp-cli marketing delete-field-definition` — **This endpoint deletes a defined Custom Field.** You can delete only Custom Fields; Reserved Fields cannot be deleted.
302- `sendgrid-pp-cli marketing delete-integration` — This endpoint deletes Integrations.
303- `sendgrid-pp-cli marketing delete-list` — **This endpoint allows you to deletes a specific list.** Optionally, you can also delete contacts associated to the...
304- `sendgrid-pp-cli marketing delete-scheduled-single-send` — **This endpoint allows you to cancel a scheduled Single Send using a Single Send ID.** Making a DELETE request to...
305- `sendgrid-pp-cli marketing delete-segment` — **This endpoint allows you to delete a segment by `segment_id`.** Note that deleting a segment does not delete the...
306- `sendgrid-pp-cli marketing delete-segment-segments` — **This endpoint allows you to delete a segment by ID.**
307- `sendgrid-pp-cli marketing delete-sender` — **This endpoint allows you to delete an existing Sender.**
308- `sendgrid-pp-cli marketing delete-single-send` — **This endpoint allows you to delete one Single Send using a Single Send ID.** To first retrieve all your Single...
309- `sendgrid-pp-cli marketing delete-single-sends` — **This endpoint allows you to delete multiple Single Sends using an array of Single Sends IDs.** To first retrieve...
310- `sendgrid-pp-cli marketing duplicate-single-send` — **This endpoint allows you to duplicate an existing Single Send using its Single Send ID.** Duplicating a Single...
311- `sendgrid-pp-cli marketing export-automation-stat` — **This endpoint allows you to export Single Send stats as .CSV data**. You can specify one Single Send or many:...
312- `sendgrid-pp-cli marketing export-contact` — **Use this endpoint to export lists or segments of contacts**. If you would just like to have a link to the exported...
313- `sendgrid-pp-cli marketing export-single-send-stat` — **This endpoint allows you to export Single Send stats as .CSV data**. You can specify one Single Send or many:...
314- `sendgrid-pp-cli marketing find-integration-by-id` — This endpoint returns the data for a specific Integration.
315- `sendgrid-pp-cli marketing get-automation-stat` — **This endpoint allows you to retrieve stats for a single Automation using its ID.** Multiple Automation IDs can be...
316- `sendgrid-pp-cli marketing get-contact` — **This endpoint returns the full details and all fields for the specified contact**. The 'Get Contacts by...
317- `sendgrid-pp-cli marketing get-contact-by-identifiers` — Use this endpoint to retrieve up to 100 contacts that match the requested identifier values for a single identifier...
318- `sendgrid-pp-cli marketing get-export-contact` — **This endpoint can be used to check the status of a contact export job**. To use this call, you will need the `id`...
319- `sendgrid-pp-cli marketing get-import-contact` — **This endpoint can be used to check the status of a contact import job**. Use the `job_id` from the 'Import...
320- `sendgrid-pp-cli marketing get-integrations-by-user` — This endpoint returns all the Integrations for the user making this call.
321- `sendgrid-pp-cli marketing get-list` — **This endpoint returns data about a specific list.** Setting the optional parameter `contact_sample=true` returns...
322- `sendgrid-pp-cli marketing get-segment` — **This endpoint allows you to retrieve a single segment by ID.**
323- `sendgrid-pp-cli marketing get-segment-segments` — Get Marketing Campaigns Segment by ID
324- `sendgrid-pp-cli marketing get-sender` — **This endpoint allows you to get the details for a specific Sender by `id`.**
325- `sendgrid-pp-cli marketing get-single-send` — **This endpoint allows you to retrieve details about one Single Send using a Single Send ID.** You can retrieve all...
326- `sendgrid-pp-cli marketing get-single-send-stat` — **This endpoint allows you to retrieve stats for an individual Single Send using a Single Send ID.** Multiple Single...
327- `sendgrid-pp-cli marketing import-contact` — **This endpoint allows a CSV upload containing up to one million contacts or 5GB of data, whichever is smaller. At...
328- `sendgrid-pp-cli marketing list-automation-stat` — **This endpoint allows you to retrieve stats for all your Automations.** By default, all of your Automations will be...
329- `sendgrid-pp-cli marketing list-batched-contact` — **This endpoint is used to retrieve a set of contacts identified by their IDs.** This can be more efficient endpoint...
330- `sendgrid-pp-cli marketing list-category` — **This endpoint allows you to retrieve all the categories associated with your Single Sends.** This endpoint will...
331- `sendgrid-pp-cli marketing list-click-tracking-stat` — **This endpoint lets you retrieve click-tracking stats for a single Automation**. The stats returned list the URLs...
332- `sendgrid-pp-cli marketing list-contact` — **This endpoint will return up to 50 of the most recent contacts uploaded or attached to a list**. This list will...
333- `sendgrid-pp-cli marketing list-contact-by-email` — **This endpoint allows you to retrieve up to 100 contacts matching the searched `email` address(es), including any...
334- `sendgrid-pp-cli marketing list-contact-count` — **This endpoint returns the total number of contacts you have stored.** Twilio SendGrid recommends exporting your...
335- `sendgrid-pp-cli marketing list-contact-count-lists` — **This endpoint returns the number of contacts on a specific list.**
336- `sendgrid-pp-cli marketing list-export-contact` — **Use this endpoint to retrieve details of all current exported jobs**. It will return an array of objects, each of...
337- `sendgrid-pp-cli marketing list-field-definition` — **This endpoint retrieves all defined Custom Fields and Reserved Fields.**
338- `sendgrid-pp-cli marketing list-list` — **This endpoint returns an array of all of your contact lists.**
339- `sendgrid-pp-cli marketing list-segment` — **This endpoint allows you to retrieve a list of segments.** The query param `parent_list_ids` is treated as a...
340- `sendgrid-pp-cli marketing list-segment-segments` — **This endpoint allows you to retrieve a list of segments.** The query param `parent_list_ids` is treated as a...
341- `sendgrid-pp-cli marketing list-sender` — **This endpoint allows you to get a list of all your Senders.**
342- `sendgrid-pp-cli marketing list-single-send` — **This endpoint allows you to retrieve all your Single Sends.** Returns all of your Single Sends with condensed...
343- `sendgrid-pp-cli marketing list-single-send-stat` — **This endpoint allows you to retrieve stats for all your Single Sends.** By default, all of your Single Sends will...
344- `sendgrid-pp-cli marketing list-single-send-tracking-stat` — **This endpoint lets you retrieve click-tracking stats for one Single Send**. The stats returned list the URLs...
345- `sendgrid-pp-cli marketing refresh-segment` — Manually refresh a segment by segment ID.
346- `sendgrid-pp-cli marketing reset-sender-verification` — **This endpoint allows you to resend the verification request for a specific Sender.**
347- `sendgrid-pp-cli marketing schedule-single-send` — **This endpoint allows you to send a Single Send immediately or schedule it to be sent at a later time.** To send...
348- `sendgrid-pp-cli marketing search-contact` — **Use this endpoint to locate contacts**. The request body's `query` field accepts valid...
349- `sendgrid-pp-cli marketing search-single-send` — **This endpoint allows you to search for Single Sends based on specified criteria.** You can search for Single Sends...
350- `sendgrid-pp-cli marketing send-test-email` — **This endpoint allows you to send a test marketing email to a list of email addresses**. Before sending a marketing...
351- `sendgrid-pp-cli marketing update-contact` — **This endpoint allows the [upsert](https://en.wiktionary.org/wiki/upsert) (insert or update) of up to 30,000...
352- `sendgrid-pp-cli marketing update-field-definition` — **This endpoint allows you to update a defined Custom Field.** Only your Custom fields can be modified; Reserved...
353- `sendgrid-pp-cli marketing update-integration` — This endpoint updates an existing Integration.
354- `sendgrid-pp-cli marketing update-list` — **This endpoint updates the name of a list.**
355- `sendgrid-pp-cli marketing update-segment` — Segment `name` has to be unique. A user can not create a new segment with an existing segment name.
356- `sendgrid-pp-cli marketing update-sender` — **This endpoint allows you to update an existing Sender.** Updates to `from.email` require re-verification. If your...
357- `sendgrid-pp-cli marketing update-single-send` — **This endpoint allows you to update a Single Send using a Single Send ID.** You only need to pass the properties...
358
359**messages** — Manage messages
360
361- `sendgrid-pp-cli messages download-csv` — **This endpoint will return a presigned URL that can be used to download the CSV that was requested from the...
362- `sendgrid-pp-cli messages get` — Get all of the details about the specified message. For Regional (EU) subusers, no data will be generated for this...
363- `sendgrid-pp-cli messages list` — Filter all messages to search your Email Activity. All queries must be [URL...
364- `sendgrid-pp-cli messages request-csv` — This request will kick off a backend process to generate a CSV file. Once generated, the worker will then send an...
365
366**partner-settings** — Twilio SendGrid Partner Settings API
367
368- `sendgrid-pp-cli partner-settings` — **This endpoint allows you to retrieve a paginated list of all partner settings that you can enable.** You can use...
369
370**partners** — Manage partners
371
372- `sendgrid-pp-cli partners add-account-ips` — Adds IP(s) to the specified account.
373- `sendgrid-pp-cli partners authenticate-account` — Authenticates and logs in a user to Twilio Sendgrid as a specific admin identity configured for SSO by partner. Any...
374- `sendgrid-pp-cli partners create-account` — Creates a new account, with specified offering, under the organization.
375- `sendgrid-pp-cli partners delete-account` — Delete a specific account under your organization by account ID. Note that this is an **irreversible** action that...
376- `sendgrid-pp-cli partners get-account-state` — Retrieve the state of the specified account.
377- `sendgrid-pp-cli partners list-account` — Retrieves all accounts under the organization.
378- `sendgrid-pp-cli partners list-account-ips` — Retrieves a paginated list of IPs associated with the specified account, ordered by most recently added IP.
379- `sendgrid-pp-cli partners list-account-offering` — Retrieves offering information about the specified account.
380- `sendgrid-pp-cli partners list-offering` — Retrieves offerings available under the organization.
381- `sendgrid-pp-cli partners remove-account-ips` — Removes IP(s) from the specified account.
382- `sendgrid-pp-cli partners update-account-offering` — Changes a package offering for the specified account. Please note that an account can have only one package...
383- `sendgrid-pp-cli partners update-account-state` — Update the state of the specified account.
384
385**recipients** — Twilio SendGrid Legacy Marketing Campaigns Contacts: Recipients API
386
387- `sendgrid-pp-cli recipients` — **This operation allows you to delete your recipients' personal email data** The Delete Recipients' Email Data...
388
389**scopes** — Twilio SendGrid Scopes API
390
391- `sendgrid-pp-cli scopes` — **This endpoint returns a list of all scopes that this user has access to.** API Keys are used to authenticate with...
392
393**send-ips** — Manage send ips
394
395- `sendgrid-pp-cli send-ips add-ip` — This operation adds a Twilio SendGrid IP address to your account. You can also assign up to 100 Subusers to the IP...
396- `sendgrid-pp-cli send-ips add-ips-to-ip-pool` — This operation appends a batch of IPs to an IP Pool. This operation requires all IP assignments to succeed. If any...
397- `sendgrid-pp-cli send-ips add-sub-users-to-ip` — This operation appends a batch of Subusers to a specified IP address. This endpoint requires all Subuser assignments...
398- `sendgrid-pp-cli send-ips create-ip-pool` — This operation will create a named IP Pool and associate specified IP addresses with the newly created Pool. This...
399- `sendgrid-pp-cli send-ips delete-ip-pool` — This operation deletes an IP Pool and unassigns all IP addresses associated with the Pool. IP addresses associated...
400- `sendgrid-pp-cli send-ips delete-ips-from-ip-pool` — This operation removes a batch of IPs from an IP Pool. All IPs associated with the Pool will be unassigned from the...
401- `sendgrid-pp-cli send-ips delete-sub-users-from-ip` — This operation removes a batch of Subusers from a specified IP address.
402- `sendgrid-pp-cli send-ips get-ip` — This operation returns details for a specified IP address. Details include whether the IP is assigned to a parent...
403- `sendgrid-pp-cli send-ips get-ip-pool` — This operation will return the details for a specified IP Pool, including the Pool's name, ID, a sample list of the...
404- `sendgrid-pp-cli send-ips list-ip` — This operation returns a list of all IP addresses associated with your account. A sample of IP details is returned...
405- `sendgrid-pp-cli send-ips list-ip-assigned-to-ip-pool` — This operation returns the IP addresses that are assigned to the specified IP pool.
406- `sendgrid-pp-cli send-ips list-ip-pool` — This operation returns a list of your IP Pools and a sample of each Pools' associated IP addresses. A maximum of 10...
407- `sendgrid-pp-cli send-ips list-sub-user-assigned-to-ip` — This operation returns a list of Subuser IDs that have been assigned the specified IP address. To retrieve more...
408- `sendgrid-pp-cli send-ips update-ip` — This operation updates an IP address's settings, including whether the IP is set to warm up automatically, if the IP...
409- `sendgrid-pp-cli send-ips update-ip-pool` — This operation will rename an IP Pool. An IP Pool name cannot start with a dot/period (.) or space.
410
411**senders** — Twilio SendGrid Marketing Campaigns Senders API
412
413- `sendgrid-pp-cli senders create` — **This endpoint allows you to create a new sender identity.** You may create up to 100 unique sender identities.
414- `sendgrid-pp-cli senders delete` — **This endpoint allows you to delete one of your sender identities.**
415- `sendgrid-pp-cli senders get` — **This endpoint allows you to retrieve a specific sender identity.**
416- `sendgrid-pp-cli senders list` — **This endpoint all
417
418…(truncated)