Mailchimp · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Mailchimp Marketing Contacts API

9 actions 9 updates phrasing extends openapi/mailchimp-contacts-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Mailchimp's API. It is a proposal applied on top of the contract, not a document Mailchimp publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 9

$.info
$.paths['/audiences'].get
$.paths['/audiences/{audience_id}'].get
$.paths['/audiences/{audience_id}/contacts'].get
$.paths['/audiences/{audience_id}/contacts'].post
$.paths['/audiences/{audience_id}/contacts/{contact_id}'].get
$.paths['/audiences/{audience_id}/contacts/{contact_id}'].patch
$.paths['/audiences/{audience_id}/contacts/{contact_id}/actions/archive'].post
$.paths['/audiences/{audience_id}/contacts/{contact_id}/actions/forget'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Mailchimp Marketing Contacts API
  version: 1.0.0
extends: openapi/mailchimp-contacts-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-10-01'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 8
- target: $.paths['/audiences'].get
  update:
    x-apievangelist-phrasing:
      intent: List audiences in the account
      effect: read
      questions:
      - What audiences do I have in my Mailchimp account?
      - Can I page through all my audiences?
      instructions:
      - text: List all my audiences.
      - text: List {count} audiences starting from offset {offset}.
        slots:
          count: query.count
          offset: query.offset
      method: generated
      generated: '2026-09-26'
- target: $.paths['/audiences/{audience_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get details of one audience
      effect: read
      questions:
      - Where can I see the details of a single audience?
      - How is a specific audience configured?
      instructions:
      - text: Get audience {audience_id}.
        slots:
          audience_id: path.audience_id
      - text: Show the settings of audience {audience_id}.
        slots:
          audience_id: path.audience_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/audiences/{audience_id}/contacts'].get
  update:
    x-apievangelist-phrasing:
      intent: List contacts in an audience
      effect: read
      questions:
      - Who are the omni-channel contacts in one of my audiences?
      - Can I list only contacts updated since last week?
      - Which contacts were added to an audience before a certain date?
      instructions:
      - text: List contacts in audience {audience_id}.
        slots:
          audience_id: path.audience_id
      - text: List contacts in audience {audience_id} updated since {updated_since}.
        slots:
          audience_id: path.audience_id
          updated_since: query.updated_since
      - text: List contacts in audience {audience_id} created since {created_since}.
        slots:
          audience_id: path.audience_id
          created_since: query.created_since
      method: generated
      generated: '2026-10-01'
- target: $.paths['/audiences/{audience_id}/contacts'].post
  update:
    x-apievangelist-phrasing:
      intent: Add a contact to an audience
      effect: write
      questions:
      - How do I add a new contact with an email and SMS channel to an audience?
      - Can I update an existing contact instead of getting a conflict error when adding one?
      - Can I import historical contacts without triggering automations?
      instructions:
      - text: Add a contact with email channel {email_channel} to audience {audience_id}.
        slots:
          email_channel: requestBody.email_channel
          audience_id: path.audience_id
      - text: Add a contact with SMS channel {sms_channel} and tags {tags} to audience {audience_id}.
        slots:
          sms_channel: requestBody.sms_channel
          tags: requestBody.tags
          audience_id: path.audience_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/audiences/{audience_id}/contacts/{contact_id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one contact in an audience
      effect: read
      questions:
      - Can I look up a single contact in an audience by id or channel hash?
      - What merge fields and tags does one contact have?
      instructions:
      - text: Get contact {contact_id} in audience {audience_id}.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      - text: Show the tags and merge fields of contact {contact_id} in audience {audience_id}.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/audiences/{audience_id}/contacts/{contact_id}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Update an existing contact
      effect: write
      questions:
      - How do I change the merge fields on a contact that's already in my audience?
      - Can I add tags to an existing contact without removing the ones it has?
      instructions:
      - text: Update merge fields of contact {contact_id} in audience {audience_id} to {merge_fields}.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
          merge_fields: requestBody.merge_fields
      - text: Add tags {tags} to existing contact {contact_id} in audience {audience_id}.
        slots:
          tags: requestBody.tags
          contact_id: path.contact_id
          audience_id: path.audience_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/audiences/{audience_id}/contacts/{contact_id}/actions/archive'].post
  update:
    x-apievangelist-phrasing:
      intent: Archive a contact
      effect: destructive
      questions:
      - How do I archive a contact so they stop counting in my audience?
      - Can I archive a single contact through the API?
      instructions:
      - text: Archive contact {contact_id} in audience {audience_id}.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      - text: Move contact {contact_id} of audience {audience_id} to the archive.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/audiences/{audience_id}/contacts/{contact_id}/actions/forget'].post
  update:
    x-apievangelist-phrasing:
      intent: Forget a contact
      effect: destructive
      questions:
      - How do I make Mailchimp forget a contact entirely?
      - Can I erase a contact's data when they ask to be forgotten?
      instructions:
      - text: Forget contact {contact_id} in audience {audience_id}.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      - text: Erase contact {contact_id} from audience {audience_id} for good.
        slots:
          contact_id: path.contact_id
          audience_id: path.audience_id
      method: generated
      generated: '2026-09-26'

Work with this as data

Every overlay 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 openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay 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 overlay
curl "https://apis.io/api/v1/overlays/mailchimp-contacts-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.