Omnisend · Arazzo Workflow

Omnisend Create and Tag Contact

Version 1.0.0

Create or update a contact, then apply tags to it for segmentation.

1 workflow 1 source API 1 provider
View Spec View on GitHub Email MarketingMarketing AutomationE-CommerceSMS MarketingCustomer EngagementSegmentationCampaignsFormsPopupsWeb PushAutomation WorkflowsAnalyticsMCPAgent ReadyTransactional MessagingArazzoWorkflows

Provider

omnisend

Workflows

create-and-tag-contact
Create or update a contact and attach tags for segmentation.
Writes a contact with the create-or-update endpoint and then adds tags to that contact so it can be grouped into tag-driven segments.
2 steps inputs: apiKey, email, firstName, tags outputs: contactId, taggedContactId
1
createContact
{$sourceDescriptions.omnisendApi.url}#/paths/~1contacts/post
Create or update the contact by email and capture the Omnisend contact id used to scope the tag write.
2
addTags
{$sourceDescriptions.omnisendApi.url}#/paths/~1contacts-tags/post
Attach the supplied tags to the newly written contact so it is included in tag-based segments.

Source API Descriptions

Arazzo Workflow Specification

Raw ↑
arazzo: 1.0.1
info:
  title: Omnisend Create and Tag Contact
  summary: Create or update a contact, then apply tags to it for segmentation.
  description: >-
    Builds a tagged audience member in two steps. The workflow creates or
    updates the contact by email, captures the returned contact id, and then
    calls the contact-tags endpoint to attach the supplied tags so the contact
    can be targeted by tag-based segments. Every step spells out its request
    inline, including the X-API-KEY header, so the flow can be read and executed
    without opening the underlying OpenAPI description.
  version: 1.0.0
sourceDescriptions:
- name: omnisendApi
  url: ../openapi/_original/_superseded/omnisend-openapi-scaffold-v5.yml
  type: openapi
workflows:
- workflowId: create-and-tag-contact
  summary: Create or update a contact and attach tags for segmentation.
  description: >-
    Writes a contact with the create-or-update endpoint and then adds tags to
    that contact so it can be grouped into tag-driven segments.
  inputs:
    type: object
    required:
    - apiKey
    - email
    - tags
    properties:
      apiKey:
        type: string
        description: The Omnisend API key sent in the X-API-KEY header.
      email:
        type: string
        description: The contact email used as the natural key.
      firstName:
        type: string
        description: The contact first name.
      tags:
        type: array
        items:
          type: string
        description: The list of tags to apply to the contact.
  steps:
  - stepId: createContact
    description: >-
      Create or update the contact by email and capture the Omnisend contact
      id used to scope the tag write.
    operationPath: '{$sourceDescriptions.omnisendApi.url}#/paths/~1contacts/post'
    parameters:
    - name: X-API-KEY
      in: header
      value: $inputs.apiKey
    requestBody:
      contentType: application/json
      payload:
        email: $inputs.email
        firstName: $inputs.firstName
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      contactId: $response.body#/contactID
  - stepId: addTags
    description: >-
      Attach the supplied tags to the newly written contact so it is included
      in tag-based segments.
    operationPath: '{$sourceDescriptions.omnisendApi.url}#/paths/~1contacts-tags/post'
    parameters:
    - name: X-API-KEY
      in: header
      value: $inputs.apiKey
    requestBody:
      contentType: application/json
      payload:
        contactID: $steps.createContact.outputs.contactId
        tags: $inputs.tags
    successCriteria:
    - condition: $statusCode == 200
    outputs:
      taggedContactId: $steps.createContact.outputs.contactId
  outputs:
    contactId: $steps.createContact.outputs.contactId
    taggedContactId: $steps.addTags.outputs.taggedContactId
x-provenance:
  reviewed: '2026-08-13'
  status: stale
  note: >-
    Authored against the pre-2026-03-15 Omnisend contract (base https://api.omnisend.com/v5,
    X-API-KEY header) using a documentation-derived scaffold spec, which the 2026-08-13 enrichment
    pass superseded with 15 OpenAPI documents harvested from Omnisend's own docs host. The current
    contract uses base https://api.omnisend.com/api, a required Omnisend-Version: 2026-03-15 header
    and Authorization: Omnisend-API-Key {key}. This workflow needs regenerating against
    openapi/omnisend-*-openapi.yml before it will execute.

Work with this as data

Every workflow here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for arazzo workflows

4 MCP tools reach this
  • find_arazzoBrowse and filter every workflow in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This workflow
curl "https://apis.io/api/v1/arazzo/omnisend-tag-contact-workflow"
All arazzo workflows
curl "https://apis.io/api/v1/arazzo?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.