Open Connector
All tools

Omnisend

Use Omnisend APIs to manage contacts, campaigns, segments, automations, events, products, orders, templates, webhooks, and marketing analytics.

omnisendv1.0.064 tools

Authentication

MethodKindStatusDetails
API Keyapi_keyavailable

Call a tool

import { createClient } from "@open-connector/sdk";const oc = createClient({  baseUrl: "https://api.openconnector.dev",  apiKey: process.env.OPEN_CONNECTOR_API_KEY!,});const result = await oc.executeTool({  slug: "OMNISEND_DELETE_DELETE_AUTOMATIONS_ID_AUTOMATIONS_ID",  connectedAccountId: "conn_...",  arguments: { /* match this tool's input schema */ },});
import Composio from "@composio/client";const composio = new Composio({  baseURL: "https://api.openconnector.dev/composio",  apiKey: process.env.OPEN_CONNECTOR_API_KEY!,});const result = await composio.tools.execute("OMNISEND_DELETE_DELETE_AUTOMATIONS_ID_AUTOMATIONS_ID", {  connected_account_id: "conn_...",  arguments: { /* match this tool's input schema */ },});
oc tools execute OMNISEND_DELETE_DELETE_AUTOMATIONS_ID_AUTOMATIONS_ID --data '{ }'

Tool catalog

Available tools

64 callable operations

Delete automation workflowOMNISEND_DELETE_DELETE_AUTOMATIONS_ID_AUTOMATIONS_IDDelete a single automation workflow by ID. This operation is idempotent — deleting a non-existent automation returns a success response. **Scopes:** `automations.write`

Delete a single automation workflow by ID. This operation is idempotent — deleting a non-existent automation returns a success response. **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Delete campaignOMNISEND_DELETE_DELETE_CAMPAIGNS_ID_CAMPAIGNS_IDDelete a campaign. **Scopes:** `campaigns.write`

Delete a campaign. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Batch remove tagsOMNISEND_DELETE_DELETE_CONTACTS_TAGS_CONTACTS_TAGSRemoves the specified tags from multiple contacts. **Scopes:** `contacts.write`

Removes the specified tags from multiple contacts. **Scopes:** `contacts.write`

Authentication

Connected account required

Scopes

contacts.write

Tags

Contacts
Delete email templateOMNISEND_DELETE_DELETE_EMAIL_TEMPLATES_ID_EMAIL_TEMPLATES_IDWith this endpoint you can delete email template by ID. **Scopes:** `email-templates.write`

With this endpoint you can delete email template by ID. **Scopes:** `email-templates.write`

Authentication

Connected account required

Scopes

email-templates.write

Tags

Email Templates
Delete universal layoutOMNISEND_DELETE_DELETE_EMAIL_UNIVERSAL_LAYOUTS_ID_EMAIL_UNIVERSAL_LAYOUTS_IDWith this endpoint you can delete a universal layout by ID. **Scopes:** `email-templates.write`

With this endpoint you can delete a universal layout by ID. **Scopes:** `email-templates.write`

Authentication

Connected account required

Scopes

email-templates.write

Tags

Email Universal Layouts
Delete imageOMNISEND_DELETE_DELETE_IMAGES_ID_IMAGES_IDWith this endpoint you can delete an image by ID. **Scopes:** `images.write`

With this endpoint you can delete an image by ID. **Scopes:** `images.write`

Authentication

Connected account required

Scopes

images.write

Tags

Images
Delete product categoryOMNISEND_DELETE_DELETE_PRODUCT_CATEGORIES_CATEGORYID_PRODUCT_CATEGORIES_CATEGORYIDWith this endpoint you can delete product category. **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

With this endpoint you can delete product category. **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Authentication

Connected account required

Scopes

products.write

Tags

Product Categories
Delete productOMNISEND_DELETE_DELETE_PRODUCTS_PRODUCTID_PRODUCTS_PRODUCTIDDelete product by ID <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Delete product by ID <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Tags

Products
Delete segmentOMNISEND_DELETE_DELETE_SEGMENTS_SEGMENTID_SEGMENTS_SEGMENTIDPermanently deletes a segment by its unique identifier. The segment must not be in a building state to be deleted. If the segment is currently being built, a `409 Conflict` error is returned. **Scopes:** `segments.write` **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

Permanently deletes a segment by its unique identifier. The segment must not be in a building state to be deleted. If the segment is currently being built, a `409 Conflict` error is returned. **Scopes:** `segments.write` **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

Authentication

Connected account required

Scopes

segments.write

Tags

Segments
List automation workflowsOMNISEND_GET_GET_AUTOMATIONS_AUTOMATIONSList automation workflows with filtering, sorting, and cursor-based pagination. **Scopes:** `automations.read` **Pagination:** This endpoint uses cursor-based pagination. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value to get the previous page - The `paging.hasMore` field indicates if more results are available - Maximum page size is 250 items. Default: 100

List automation workflows with filtering, sorting, and cursor-based pagination. **Scopes:** `automations.read` **Pagination:** This endpoint uses cursor-based pagination. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value to get the previous page - The `paging.hasMore` field indicates if more results are available - Maximum page size is 250 items. Default: 100

Authentication

Connected account required

Scopes

automations.read

Tags

Automations
Get automation workflowOMNISEND_GET_GET_AUTOMATIONS_ID_AUTOMATIONS_IDGet a single automation workflow by ID. **Scopes:** `automations.read`

Get a single automation workflow by ID. **Scopes:** `automations.read`

Authentication

Connected account required

Scopes

automations.read

Tags

Automations
Get UTM tags for an automation blockOMNISEND_GET_GET_AUTOMATIONS_ID_BLOCKS_BLOCKID_UTM_AUTOMATIONS_ID_BLOCKS_BLOCKID_UTMRetrieve UTM tracking tags for a specific send-action block. Missing or cleared tags are returned with their default values. **Scopes:** `automations.read`

Retrieve UTM tracking tags for a specific send-action block. Missing or cleared tags are returned with their default values. **Scopes:** `automations.read`

Authentication

Connected account required

Scopes

automations.read

Tags

Automations
Get aggregated UTM tags for all blocksOMNISEND_GET_GET_AUTOMATIONS_ID_UTM_AUTOMATIONS_ID_UTMRetrieve UTM tracking tags for all send-action blocks in an automation. Each block's tags include default-value synthesis for missing fields. **Scopes:** `automations.read`

Retrieve UTM tracking tags for all send-action blocks in an automation. Each block's tags include default-value synthesis for missing fields. **Scopes:** `automations.read`

Authentication

Connected account required

Scopes

automations.read

Tags

Automations
Get batchesOMNISEND_GET_GET_BATCHES_BATCHESGet batches **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Get batches **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.readcontacts.readevents.read

Tags

Batch
Get batch informationOMNISEND_GET_GET_BATCHES_BATCHID_BATCHES_BATCHIDGet batch information **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Get batch information **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.readcontacts.readevents.read

Tags

Batch
Get batch itemsOMNISEND_GET_GET_BATCHES_BATCHID_ITEMS_BATCHES_BATCHID_ITEMSGet batch items **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Get batch items **Scopes:** `products.read`, `contacts.read`, `events.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.readcontacts.readevents.read

Tags

Batch
Get information about brandOMNISEND_GET_GET_BRANDS_CURRENT_BRANDS_CURRENTWith this endpoint you can get brand's information. **Scopes:** `brands.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

With this endpoint you can get brand's information. **Scopes:** `brands.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

brands.read

Tags

Brands
List campaignsOMNISEND_GET_GET_CAMPAIGNS_CAMPAIGNSList campaigns with filtering, sorting, and cursor-based pagination. **Scopes:** `campaigns.read` **Pagination:** This endpoint uses cursor-based pagination. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value to get the previous page - The `paging.hasMore` field indicates if more results are available - Maximum page size is 250 items. Default: 100

List campaigns with filtering, sorting, and cursor-based pagination. **Scopes:** `campaigns.read` **Pagination:** This endpoint uses cursor-based pagination. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value to get the previous page - The `paging.hasMore` field indicates if more results are available - Maximum page size is 250 items. Default: 100

Authentication

Connected account required

Scopes

campaigns.read

Tags

Campaigns
Get campaignOMNISEND_GET_GET_CAMPAIGNS_ID_CAMPAIGNS_IDGet a single campaign by ID. **Scopes:** `campaigns.read`

Get a single campaign by ID. **Scopes:** `campaigns.read`

Authentication

Connected account required

Scopes

campaigns.read

Tags

Campaigns
Get campaign UTM settingsOMNISEND_GET_GET_CAMPAIGNS_ID_UTM_CAMPAIGNS_ID_UTMGet UTM tag settings for a campaign. The response shape is the same for all campaign types: `tags` is populated for regular campaigns, `variants` for A/B campaigns. The absent field is omitted. **Scopes:** `campaigns.read`

Get UTM tag settings for a campaign. The response shape is the same for all campaign types: `tags` is populated for regular campaigns, `variants` for A/B campaigns. The absent field is omitted. **Scopes:** `campaigns.read`

Authentication

Connected account required

Scopes

campaigns.read

Tags

Campaigns
List contactsOMNISEND_GET_GET_CONTACTS_CONTACTSReturns a paginated list of contacts filtered by the provided query parameters. **Scopes:** `contacts.read` **Filter restrictions:** - `tag` and `status` cannot be used together in the same request. - `updatedAtFrom` cannot be combined with `email`, `phone`, `status`, `segmentID`, or `tag`.

Returns a paginated list of contacts filtered by the provided query parameters. **Scopes:** `contacts.read` **Filter restrictions:** - `tag` and `status` cannot be used together in the same request. - `updatedAtFrom` cannot be combined with `email`, `phone`, `status`, `segmentID`, or `tag`.

Authentication

Connected account required

Scopes

contacts.read

Tags

Contacts
Get contactOMNISEND_GET_GET_CONTACTS_ID_CONTACTS_IDReturns the contact with the specified ID. **Scopes:** `contacts.read`

Returns the contact with the specified ID. **Scopes:** `contacts.read`

Authentication

Connected account required

Scopes

contacts.read

Tags

Contacts
Get email templatesOMNISEND_GET_GET_EMAIL_TEMPLATES_EMAIL_TEMPLATESWith this endpoint you can get a paginated list of email templates. **Sorting:** Use `sort` and `direction` to control the order of results. Supported sort fields: `createdAt` (default), `name`. Supported directions: `asc`, `desc` (default). **Filtering:** Use `nameContains` to filter templates by name (case-insensitive partial match, max 200 characters) **Pagination:** This endpoint uses cursor-based pagination for efficient traversal of large datasets. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value from the response to get the previous page - The `paging.hasMore` field indicates if more results are available - Do not use both `after` and `before` parameters simultaneously - Maximum page size is 100 items (default 50) - If `limit` is less than 1 or greater than 100, returns 400 Bad Request **Scopes:** `email-templates.read`

With this endpoint you can get a paginated list of email templates. **Sorting:** Use `sort` and `direction` to control the order of results. Supported sort fields: `createdAt` (default), `name`. Supported directions: `asc`, `desc` (default). **Filtering:** Use `nameContains` to filter templates by name (case-insensitive partial match, max 200 characters) **Pagination:** This endpoint uses cursor-based pagination for efficient traversal of large datasets. - Use the `paging.cursors.after` value from the response to get the next page - Use the `paging.cursors.before` value from the response to get the previous page - The `paging.hasMore` field indicates if more results are available - Do not use both `after` and `before` parameters simultaneously - Maximum page size is 100 items (default 50) - If `limit` is less than 1 or greater than 100, returns 400 Bad Request **Scopes:** `email-templates.read`

Authentication

Connected account required

Scopes

email-templates.read

Tags

Email Templates
Get imageOMNISEND_GET_GET_IMAGES_ID_IMAGES_IDWith this endpoint you can get a single image by ID. **Scopes:** `images.read`

With this endpoint you can get a single image by ID. **Scopes:** `images.read`

Authentication

Connected account required

Scopes

images.read

Tags

Images
List imagesOMNISEND_GET_GET_IMAGES_IMAGESWith this endpoint you can get a paginated list of images for a brand. **Sorting:** Supported sort fields: `createdAt` (default), `name` Supported directions: `asc`, `desc` (default) **Filtering:** Use `nameContains` to filter images by name (case-insensitive, partial match) **Pagination:** This endpoint uses cursor-based pagination for efficient traversal of large datasets. - Use the `cursors.after` value from the response to get the next page - Use the `cursors.before` value from the response to get the previous page - The `hasMore` field indicates if more results are available - Do not use both `after` and `before` parameters simultaneously - Maximum page size is 250 items (default 100) **Scopes:** `images.read`

With this endpoint you can get a paginated list of images for a brand. **Sorting:** Supported sort fields: `createdAt` (default), `name` Supported directions: `asc`, `desc` (default) **Filtering:** Use `nameContains` to filter images by name (case-insensitive, partial match) **Pagination:** This endpoint uses cursor-based pagination for efficient traversal of large datasets. - Use the `cursors.after` value from the response to get the next page - Use the `cursors.before` value from the response to get the previous page - The `hasMore` field indicates if more results are available - Do not use both `after` and `before` parameters simultaneously - Maximum page size is 250 items (default 100) **Scopes:** `images.read`

Authentication

Connected account required

Scopes

images.read

Tags

Images
Get product categoryOMNISEND_GET_GET_PRODUCT_CATEGORIES_CATEGORYID_PRODUCT_CATEGORIES_CATEGORYIDGet product category by ID. **Scopes:** `products.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Get product category by ID. **Scopes:** `products.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Authentication

Connected account required

Scopes

products.read

Tags

Product Categories
List product categoriesOMNISEND_GET_GET_PRODUCT_CATEGORIES_PRODUCT_CATEGORIESList products categories **Scopes:** `products.read` <br>Guide: <a href="https://api-docs.omnisend.com/docs/how-to-sync-products-catalog-categories" target="_blank">Sync products catalog, categories</a> <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

List products categories **Scopes:** `products.read` <br>Guide: <a href="https://api-docs.omnisend.com/docs/how-to-sync-products-catalog-categories" target="_blank">Sync products catalog, categories</a> <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Authentication

Connected account required

Scopes

products.read

Tags

Product Categories
Get productOMNISEND_GET_GET_PRODUCTS_PRODUCTID_PRODUCTS_PRODUCTIDGet product by ID **Scopes:** `products.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Get product by ID **Scopes:** `products.read` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.read

Tags

Products
List productsOMNISEND_GET_GET_PRODUCTS_PRODUCTSList products **Scopes:** `products.read` <br>Guide: <a href="https://api-docs.omnisend.com/docs/how-to-sync-products-catalog-categories" target="_blank">Sync products catalog, categories</a> <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

List products **Scopes:** `products.read` <br>Guide: <a href="https://api-docs.omnisend.com/docs/how-to-sync-products-catalog-categories" target="_blank">Sync products catalog, categories</a> <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.read

Tags

Products
Get segmentOMNISEND_GET_GET_SEGMENTS_SEGMENTID_SEGMENTS_SEGMENTIDReturns a segment by its unique identifier. **Scopes:** `segments.read` **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

Returns a segment by its unique identifier. **Scopes:** `segments.read` **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

Authentication

Connected account required

Scopes

segments.read

Tags

Segments
Get segment statisticsOMNISEND_GET_GET_SEGMENTS_SEGMENTID_STATISTICS_SEGMENTS_SEGMENTID_STATISTICSReturns statistics for a segment, including the total number of matching contacts. **Scopes:** `segments.read`

Returns statistics for a segment, including the total number of matching contacts. **Scopes:** `segments.read`

Authentication

Connected account required

Scopes

segments.read

Tags

Segments
List segmentsOMNISEND_GET_GET_SEGMENTS_SEGMENTSList segments with sorting and cursor-based pagination support. **Scopes:** `segments.read` **Pagination:** This endpoint uses cursor-based pagination. Use the `after` cursor from the response to get the next page, or the `before` cursor to get the previous page. Do not use both `after` and `before` parameters simultaneously. **Sorting:** - Only single-field sorting is supported. You cannot sort by multiple fields. - Available sort fields: `createdAt` (default), `name`. - When sorting by `name`, segments are sorted lexicographically (case-sensitive). - Sort parameters are only required on the first request. Subsequent requests using a cursor will automatically use the sort settings embedded in the cursor. **Cursor Behavior:** - Cursors are self-contained and include all parameters needed for pagination. - Once you have a cursor, you only need to pass the cursor for subsequent pages. - If sort parameters are provided with a cursor, they must match the cursor's sort settings. - Cursors may become invalid if the underlying data changes significantly (e.g., the referenced segment is deleted). **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

List segments with sorting and cursor-based pagination support. **Scopes:** `segments.read` **Pagination:** This endpoint uses cursor-based pagination. Use the `after` cursor from the response to get the next page, or the `before` cursor to get the previous page. Do not use both `after` and `before` parameters simultaneously. **Sorting:** - Only single-field sorting is supported. You cannot sort by multiple fields. - Available sort fields: `createdAt` (default), `name`. - When sorting by `name`, segments are sorted lexicographically (case-sensitive). - Sort parameters are only required on the first request. Subsequent requests using a cursor will automatically use the sort settings embedded in the cursor. **Cursor Behavior:** - Cursors are self-contained and include all parameters needed for pagination. - Once you have a cursor, you only need to pass the cursor for subsequent pages. - If sort parameters are provided with a cursor, they must match the cursor's sort settings. - Cursors may become invalid if the underlying data changes significantly (e.g., the referenced segment is deleted). **Rate Limiting:** This endpoint is rate limited to 100 requests per minute.

Authentication

Connected account required

Scopes

segments.read

Tags

Segments
Update campaignOMNISEND_PATCH_PATCH_CAMPAIGNS_ID_CAMPAIGNS_IDUpdate a campaign draft. **Scopes:** `campaigns.write`

Update a campaign draft. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Update contact by emailOMNISEND_PATCH_PATCH_CONTACTS_CONTACTSUpdates the contact matching the provided email address. **Scopes:** `contacts.write`

Updates the contact matching the provided email address. **Scopes:** `contacts.write`

Authentication

Connected account required

Scopes

contacts.write

Tags

Contacts
Update contact by IDOMNISEND_PATCH_PATCH_CONTACTS_ID_CONTACTS_IDUpdates the contact with the specified ID. **Scopes:** `contacts.write`

Updates the contact with the specified ID. **Scopes:** `contacts.write`

Authentication

Connected account required

Scopes

contacts.write

Tags

Contacts
Update product categoryOMNISEND_PATCH_PATCH_PRODUCT_CATEGORIES_CATEGORYID_PRODUCT_CATEGORIES_CATEGORYIDUpdate product category by ID. **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Update product category by ID. **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Authentication

Connected account required

Scopes

products.write

Tags

Product Categories
Generate reportOMNISEND_POST_POST_ANALYTICS_REPORTS_ANALYTICS_REPORTSReturns aggregated marketing analytics grouped by message send date. Covers delivery, engagement, and revenue attribution metrics for campaigns and automations. Supports optional dimensions (timestamp, channel, activity), filters, and up to 4 queries per request. **Scopes:** `analytics.read`

Returns aggregated marketing analytics grouped by message send date. Covers delivery, engagement, and revenue attribution metrics for campaigns and automations. Supports optional dimensions (timestamp, channel, activity), filters, and up to 4 queries per request. **Scopes:** `analytics.read`

Authentication

Connected account required

Scopes

analytics.read

Tags

Reports
Generate reportOMNISEND_POST_POST_ANALYTICS_STATISTICS_ANALYTICS_STATISTICSReturns aggregated marketing analytics grouped by event date (when opens, clicks, orders actually occurred). Covers delivery, engagement, revenue attribution, and audience growth metrics. Requires a timestamp dimension. Supports a rich set of dimensions (client, click, subscription, deliverability) and up to 4 queries per request. **Scopes:** `analytics.read`

Returns aggregated marketing analytics grouped by event date (when opens, clicks, orders actually occurred). Covers delivery, engagement, revenue attribution, and audience growth metrics. Requires a timestamp dimension. Supports a rich set of dimensions (client, click, subscription, deliverability) and up to 4 queries per request. **Scopes:** `analytics.read`

Authentication

Connected account required

Scopes

analytics.read

Tags

Statistics
Copy automation workflowOMNISEND_POST_POST_AUTOMATIONS_ID_COPY_AUTOMATIONS_ID_COPYCreate a copy of an existing automation workflow. The copy is always created in a disabled state, regardless of the source automation's status. The request body is optional. When provided, you can specify a custom name for the copy. When omitted (or when name is empty), the copy is named "Copy of: <original name>". **Scopes:** `automations.write`

Create a copy of an existing automation workflow. The copy is always created in a disabled state, regardless of the source automation's status. The request body is optional. When provided, you can specify a custom name for the copy. When omitted (or when name is empty), the copy is named "Copy of: <original name>". **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Disable automation workflowOMNISEND_POST_POST_AUTOMATIONS_ID_DISABLE_AUTOMATIONS_ID_DISABLEDisable an automation workflow. Once disabled, the workflow stops accepting new trigger events. Use `contactsInWorkflow` to control what happens to contacts currently progressing through the workflow: - `keep`: contacts remain and continue through the remaining blocks until completion. No new contacts enter. - `exit`: all contacts are immediately removed from the workflow. Contacts who have not yet received their messages will not receive them. Disabling an already-disabled automation is idempotent — returns the current state without side effects. **Scopes:** `automations.write`

Disable an automation workflow. Once disabled, the workflow stops accepting new trigger events. Use `contactsInWorkflow` to control what happens to contacts currently progressing through the workflow: - `keep`: contacts remain and continue through the remaining blocks until completion. No new contacts enter. - `exit`: all contacts are immediately removed from the workflow. Contacts who have not yet received their messages will not receive them. Disabling an already-disabled automation is idempotent — returns the current state without side effects. **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Enable automation workflowOMNISEND_POST_POST_AUTOMATIONS_ID_ENABLE_AUTOMATIONS_ID_ENABLEEnable an automation workflow. Once enabled, the workflow starts processing trigger events in real time. The request body is optional. Use `enrollExisting` to also enroll contacts who already qualify at the time of enabling. When the body is omitted (or `enrollExisting` is omitted or false), only future trigger events are processed. Enabling an already-enabled automation is idempotent — returns the current state without side effects. **Scopes:** `automations.write`

Enable an automation workflow. Once enabled, the workflow starts processing trigger events in real time. The request body is optional. Use `enrollExisting` to also enroll contacts who already qualify at the time of enabling. When the body is omitted (or `enrollExisting` is omitted or false), only future trigger events are processed. Enabling an already-enabled automation is idempotent — returns the current state without side effects. **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Create batchOMNISEND_POST_POST_BATCHES_BATCHESBatch operations allow for multiple actions of a similar type to be executed in a single request. Utilizing the batch endpoint is recommended to avoid hitting rate limits and to enhance overall performance. Creating batches is an asynchronous process that initiates the creation or updating of the specified items. * POST batch operations to create multiple items simultaneously. * PUT batch operations to apply multiple updates to multiple items. Each batch operation can include up to 100 actions. The required scopes depend on the type of batch operation being performed. **WARNING**: Before sending a batch of **events**, ensure there are no automations configured in Omnisend that could send messages to customers based on the imported data. This could result in duplicate messages being sent to customers. **Scopes:** `products.write`, `contacts.write`, `events.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Batch operations allow for multiple actions of a similar type to be executed in a single request. Utilizing the batch endpoint is recommended to avoid hitting rate limits and to enhance overall performance. Creating batches is an asynchronous process that initiates the creation or updating of the specified items. * POST batch operations to create multiple items simultaneously. * PUT batch operations to apply multiple updates to multiple items. Each batch operation can include up to 100 actions. The required scopes depend on the type of batch operation being performed. **WARNING**: Before sending a batch of **events**, ensure there are no automations configured in Omnisend that could send messages to customers based on the imported data. This could result in duplicate messages being sent to customers. **Scopes:** `products.write`, `contacts.write`, `events.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.writecontacts.writeevents.write

Tags

Batch
Connect brandOMNISEND_POST_POST_BRANDS_CURRENT_BRANDS_CURRENTWith this endpoint you can connect your site to Omnisend. Note it's only possible to connect store with [oAuth flow](https://api-docs.omnisend.com/reference/oauth). **Scopes:** `brands.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

With this endpoint you can connect your site to Omnisend. Note it's only possible to connect store with [oAuth flow](https://api-docs.omnisend.com/reference/oauth). **Scopes:** `brands.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

brands.write

Tags

Brands
Create campaignOMNISEND_POST_POST_CAMPAIGNS_CAMPAIGNSCreate a new campaign draft. **Scopes:** `campaigns.write`

Create a new campaign draft. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Resume A/B testOMNISEND_POST_POST_CAMPAIGNS_ID_AB_TEST_RESUME_CAMPAIGNS_ID_AB_TEST_RESUMEResume a stopped A/B test. Automatic winner selection becomes eligible to pick this campaign again. Available only while the campaign is in `stopped` status. **Scopes:** `campaigns.write`

Resume a stopped A/B test. Automatic winner selection becomes eligible to pick this campaign again. Available only while the campaign is in `stopped` status. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Stop A/B testOMNISEND_POST_POST_CAMPAIGNS_ID_AB_TEST_STOP_CAMPAIGNS_ID_AB_TEST_STOPHalt the A/B test winner-selection phase. While stopped, automatic winner selection no longer considers this campaign until it is resumed. Available only while the campaign is in `started` status. **Scopes:** `campaigns.write`

Halt the A/B test winner-selection phase. While stopped, automatic winner selection no longer considers this campaign until it is resumed. Available only while the campaign is in `started` status. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Select A/B test winnerOMNISEND_POST_POST_CAMPAIGNS_ID_AB_TEST_WINNER_CAMPAIGNS_ID_AB_TEST_WINNERManually pick a variant as the winner. The chosen variant is routed into the send pipeline immediately. **Scopes:** `campaigns.write`

Manually pick a variant as the winner. The chosen variant is routed into the send pipeline immediately. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Cancel campaignOMNISEND_POST_POST_CAMPAIGNS_ID_CANCEL_CAMPAIGNS_ID_CANCELCancel a campaign and mark it as canceled. **Cancelable source states:** `scheduled` or `paused` (all channel types), or `started` (email only). Any other status (e.g. `draft`, `sent`, `canceled`) returns 409. Supported cases: - Any scheduled or paused campaign (all channel types) - Started email campaigns **Note:** For started campaigns, cancellation is best-effort — messages already in flight may still be delivered. **Scopes:** `campaigns.write`

Cancel a campaign and mark it as canceled. **Cancelable source states:** `scheduled` or `paused` (all channel types), or `started` (email only). Any other status (e.g. `draft`, `sent`, `canceled`) returns 409. Supported cases: - Any scheduled or paused campaign (all channel types) - Started email campaigns **Note:** For started campaigns, cancellation is best-effort — messages already in flight may still be delivered. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Copy campaignOMNISEND_POST_POST_CAMPAIGNS_ID_COPY_CAMPAIGNS_ID_COPYCreate a draft copy of an existing campaign, copying content, audience, and settings from the original. The copied campaign name will be prefixed with "Copy of: ". **Scopes:** `campaigns.write`

Create a draft copy of an existing campaign, copying content, audience, and settings from the original. The copied campaign name will be prefixed with "Copy of: ". **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Send campaignOMNISEND_POST_POST_CAMPAIGNS_ID_SEND_CAMPAIGNS_ID_SENDSubmit a campaign draft for sending. Supports both email and SMS campaigns. Behavior depends on the campaign's sending strategy: - **Immediate**: Campaign will be sent immediately - **Scheduled**: Campaign will be queued for the scheduled time with optional timezone optimization **Scopes:** `campaigns.write`

Submit a campaign draft for sending. Supports both email and SMS campaigns. Behavior depends on the campaign's sending strategy: - **Immediate**: Campaign will be sent immediately - **Scheduled**: Campaign will be queued for the scheduled time with optional timezone optimization **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Create or update existing contactOMNISEND_POST_POST_CONTACTS_CONTACTSCreates a new contact. If a contact with the provided email identifier already exists, it will be updated instead. Returns `201 Created` for new contacts and `200 OK` when an existing contact was updated. **Scopes:** `contacts.write`

Creates a new contact. If a contact with the provided email identifier already exists, it will be updated instead. Returns `201 Created` for new contacts and `200 OK` when an existing contact was updated. **Scopes:** `contacts.write`

Authentication

Connected account required

Scopes

contacts.write

Tags

Contacts
Batch add tagsOMNISEND_POST_POST_CONTACTS_TAGS_CONTACTS_TAGSAdds the specified tags to multiple contacts. **Scopes:** `contacts.write`

Adds the specified tags to multiple contacts. **Scopes:** `contacts.write`

Authentication

Connected account required

Scopes

contacts.write

Tags

Contacts
Render email contentOMNISEND_POST_POST_EMAIL_CONTENT_ID_RENDER_EMAIL_CONTENT_ID_RENDERWith this endpoint you can render email content to HTML by ID. The content is rendered with an empty data context (no contact, no marketing activity). **Scopes:** `email-templates.write`

With this endpoint you can render email content to HTML by ID. The content is rendered with an empty data context (no contact, no marketing activity). **Scopes:** `email-templates.write`

Authentication

Connected account required

Scopes

email-templates.write

Tags

Email Content
Render email templateOMNISEND_POST_POST_EMAIL_TEMPLATES_ID_RENDER_EMAIL_TEMPLATES_ID_RENDERWith this endpoint you can render an email template by ID and get the full HTML body for preview purposes. **Scopes:** `email-templates.write`

With this endpoint you can render an email template by ID and get the full HTML body for preview purposes. **Scopes:** `email-templates.write`

Authentication

Connected account required

Scopes

email-templates.write

Tags

Email Templates
Send Customer eventOMNISEND_POST_POST_EVENTS_EVENTSWith this endpoint you can send customer events to Omnisend. Customer events are used to track customer behavior and trigger automations based on that behavior. You can either format and send custom customer events or use predefined events. **Scopes:** `events.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

With this endpoint you can send customer events to Omnisend. Customer events are used to track customer behavior and trigger automations based on that behavior. You can either format and send custom customer events or use predefined events. **Scopes:** `events.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

events.write

Tags

Events
Upload image by URLOMNISEND_POST_POST_IMAGES_IMAGESWith this endpoint you can upload an image from a publicly accessible URL. If the name is not provided, the filename will be extracted from the URL. **Scopes:** `images.write`

With this endpoint you can upload an image from a publicly accessible URL. If the name is not provided, the filename will be extracted from the URL. **Scopes:** `images.write`

Authentication

Connected account required

Scopes

images.write

Tags

Images
Upload image fileOMNISEND_POST_POST_IMAGES_UPLOAD_IMAGES_UPLOADWith this endpoint you can upload an image file directly from your computer. **File Requirements:** - Supported formats: JPEG, PNG, GIF, WebP - Maximum file size: 5MB **Scopes:** `images.write`

With this endpoint you can upload an image file directly from your computer. **File Requirements:** - Supported formats: JPEG, PNG, GIF, WebP - Maximum file size: 5MB **Scopes:** `images.write`

Authentication

Connected account required

Scopes

images.write

Tags

Images
Create product categoryOMNISEND_POST_POST_PRODUCT_CATEGORIES_PRODUCT_CATEGORIESCreates a new product category **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Creates a new product category **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Check POSTMAN documentation</a>

Authentication

Connected account required

Scopes

products.write

Tags

Product Categories
Create productOMNISEND_POST_POST_PRODUCTS_PRODUCTSCreates a new product **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Creates a new product **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.write

Tags

Products
Replace automation workflow blocksOMNISEND_PUT_PUT_AUTOMATIONS_ID_BLOCKS_AUTOMATIONS_ID_BLOCKSReplace the full block tree for an automation workflow. Blocks identified by `id` are updated in place. Blocks identified by `temporaryID` are created as new blocks. Existing blocks not included in this array are removed. Enabled automations cannot be restructured. Disable the automation via `POST /automations/{id}/disable`, send the new block tree, then re-enable via `POST /automations/{id}/enable` when ready. When disabling, `contactsInWorkflow` controls whether contacts already in the workflow continue through the remaining blocks (`keep`) or exit immediately (`exit`). **Scopes:** `automations.write`

Replace the full block tree for an automation workflow. Blocks identified by `id` are updated in place. Blocks identified by `temporaryID` are created as new blocks. Existing blocks not included in this array are removed. Enabled automations cannot be restructured. Disable the automation via `POST /automations/{id}/disable`, send the new block tree, then re-enable via `POST /automations/{id}/enable` when ready. When disabling, `contactsInWorkflow` controls whether contacts already in the workflow continue through the remaining blocks (`keep`) or exit immediately (`exit`). **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Update UTM tags for an automation blockOMNISEND_PUT_PUT_AUTOMATIONS_ID_BLOCKS_BLOCKID_UTM_AUTOMATIONS_ID_BLOCKS_BLOCKID_UTMSet UTM tracking tags for a specific send-action block. All three tag fields are replaced atomically. Send an empty string to clear a field — the next read will return its default value. **Scopes:** `automations.write`

Set UTM tracking tags for a specific send-action block. All three tag fields are replaced atomically. Send an empty string to clear a field — the next read will return its default value. **Scopes:** `automations.write`

Authentication

Connected account required

Scopes

automations.write

Tags

Automations
Update campaign UTM settingsOMNISEND_PUT_PUT_CAMPAIGNS_ID_UTM_CAMPAIGNS_ID_UTMReplace UTM tag settings for a campaign. For regular campaigns send a `tags` object. For A/B test campaigns send a `variants` object. The campaign must be in draft status. **Scopes:** `campaigns.write`

Replace UTM tag settings for a campaign. For regular campaigns send a `tags` object. For A/B test campaigns send a `variants` object. The campaign must be in draft status. **Scopes:** `campaigns.write`

Authentication

Connected account required

Scopes

campaigns.write

Tags

Campaigns
Replace productOMNISEND_PUT_PUT_PRODUCTS_PRODUCTID_PRODUCTS_PRODUCTIDReplace product by ID **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Replace product by ID **Scopes:** `products.write` <br><a href="https://www.postman.com/omnisend-api/workspace/omnisend/overview" target="_blank">Open Postman collection</a>

Authentication

Connected account required

Scopes

products.write

Tags

Products
Update segmentOMNISEND_PUT_PUT_SEGMENTS_SEGMENTID_SEGMENTS_SEGMENTIDUpdates an existing segment by ID. The segment must not be in a building state to be updated. If the segment is currently being built, a `409 Conflict` error is returned. **Scopes:** `segments.write` **Rate Limiting:** This endpoint is rate limited to 15 requests per minute. The request body structure (`name` and `conditionGroups`) is identical to [Create segment](post_segments). See the Create segment endpoint for detailed examples of condition groups, filters, and advanced segmentation patterns.

Updates an existing segment by ID. The segment must not be in a building state to be updated. If the segment is currently being built, a `409 Conflict` error is returned. **Scopes:** `segments.write` **Rate Limiting:** This endpoint is rate limited to 15 requests per minute. The request body structure (`name` and `conditionGroups`) is identical to [Create segment](post_segments). See the Create segment endpoint for detailed examples of condition groups, filters, and advanced segmentation patterns.

Authentication

Connected account required

Scopes

segments.write

Tags

Segments

Provider resources