Mailchimp Search API

The Search API from Mailchimp — 3 operation(s) for search.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

mailchimp-search-api-openapi.yml Raw ↑
swagger: '2.0'
info:
  version: 3.0.55
  title: Mailchimp Marketing Abuse Search API
  contact:
    name: Mailchimp API Support
    email: apihelp@mailchimp.com
  x-permalink: https://github.com/mailchimp/mailchimp-client-lib-codegen/blob/main/spec/marketing.json
  description: '

    The Mailchimp Marketing API provides programmatic access to Mailchimp data

    and functionality, allowing developers to build custom features to do

    things like sync email activity and campaign analytics with their

    database, manage audiences and campaigns, and more.'
host: server.api.mailchimp.com
basePath: /3.0
schemes:
- https
consumes:
- application/json
produces:
- application/json
- application/problem+json
security:
- basicAuth: []
tags:
- name: Search
paths:
  /lists/{list_id}/tag-search:
    get:
      summary: Mailchimp Search for Tags on a List by Name.
      description: Search for tags on a list by name. If no name is provided, will return all tags on the list.
      operationId: searchTagsByName
      parameters:
      - name: list_id
        x-title: List ID
        in: path
        description: The unique ID for the list.
        required: true
        type: string
        example: '500123'
      - name: name
        x-title: Name
        in: query
        description: The search query used to filter tags.  The search query will be compared to each tag as a prefix, so all tags that have a name starting with this field will be returned.
        required: false
        type: string
        example: Example Title
      responses:
        '200':
          description: ''
          schema:
            type: object
            title: Tag search results
            description: A list of tags matching the input query.
            properties:
              tags:
                type: array
                title: Tags
                description: A list of matching tags.
                readOnly: true
                items:
                  properties:
                    id:
                      type: integer
                      title: Tag ID
                      description: The unique id for the tag.
                      readOnly: true
                    name:
                      type: string
                      title: Tag Name
                      description: The name of the tag.
              total_items:
                type: integer
                title: Item Count
                description: The total number of items matching the query regardless of pagination.
                readOnly: true
        default:
          description: An error generated by the Mailchimp API.
          schema:
            type: object
            title: Problem Detail Document
            description: An error generated by the Mailchimp API. Conforms to IETF draft 'draft-nottingham-http-problem-06'.
            required:
            - type
            - title
            - status
            - detail
            - instance
            properties:
              type:
                type: string
                title: Problem Type
                description: An absolute URI that identifies the problem type. When dereferenced, it should provide human-readable documentation for the problem type.
                example: https://mailchimp.com/developer/marketing/docs/errors/
              title:
                type: string
                title: Error Title
                description: A short, human-readable summary of the problem type. It shouldn't change based on the occurrence of the problem, except for purposes of localization.
                example: Resource Not Found
              status:
                type: integer
                title: HTTP Status Code
                description: The HTTP status code (RFC2616, Section 6) generated by the origin server for this occurrence of the problem.
                example: 404
              detail:
                type: string
                title: Error Message
                description: A human-readable explanation specific to this occurrence of the problem. [Learn more about errors](/developer/guides/get-started-with-mailchimp-api-3/#Errors).
                example: The requested resource could not be found.
              instance:
                type: string
                title: Instance ID
                description: A string that identifies this specific occurrence of the problem. Please provide this ID when contacting support.
                example: 995c5cb0-3280-4a6e-808b-3b096d0bb219
      x-custom-config:
        methodNameSnake: tag_search
        methodNameCamel: tagSearch
      deprecated: false
      tags:
      - Search
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /search-campaigns:
    get:
      summary: Mailchimp Search Campaigns
      description: Search all campaigns for the specified query terms.
      operationId: getSearchCampaigns
      parameters:
      - name: fields
        x-title: Fields
        in: query
        description: A comma-separated list of fields to return. Reference parameters of sub-objects with dot notation.
        required: false
        type: array
        collectionFormat: csv
        items:
          type: string
        example: example_value
      - name: exclude_fields
        x-title: Exclude Fields
        in: query
        description: A comma-separated list of fields to exclude. Reference parameters of sub-objects with dot notation.
        required: false
        type: array
        collectionFormat: csv
        items:
          type: string
        example: example_value
      - name: query
        x-title: Query
        in: query
        description: The search query used to filter results.
        required: true
        type: string
        example: example_value
      responses:
        '200':
          description: ''
          schema:
            type: object
            title: Campaigns
            description: Campaigns and Snippets found for given search term.
            properties:
              results:
                type: array
                title: Results
                description: An array of matching campaigns and snippets.
                items:
                  type: object
                  properties:
                    campaign:
                      type: object
                      title: Campaign
                      description: A summary of an individual campaign's settings and content.
                      properties:
                        id:
                          type: string
                          title: Campaign ID
                          description: A string that uniquely identifies this campaign.
                          readOnly: true
                        web_id:
                          type: integer
                          title: Campaign Web ID
                          description: The ID used in the Mailchimp web application. View this campaign in your Mailchimp account at `https://{dc}.admin.mailchimp.com/campaigns/show/?id={web_id}`.
                          readOnly: true
                        parent_campaign_id:
                          type: string
                          title: Parent Campaign ID
                          description: If this campaign is the child of another campaign, this identifies the parent campaign. For Example, for RSS or Automation children.
                          readOnly: true
                        type:
                          type: string
                          title: Campaign Type
                          description: There are four types of [campaigns](https://mailchimp.com/help/getting-started-with-campaigns/) you can create in Mailchimp. A/B Split campaigns have been deprecated and variate campaigns should be used instead.
                          enum:
                          - regular
                          - plaintext
                          - absplit
                          - rss
                          - variate
                        create_time:
                          type: string
                          format: date-time
                          title: Create Time
                          description: The date and time the campaign was created in ISO 8601 format.
                          readOnly: true
                        archive_url:
                          type: string
                          title: Archive URL
                          description: The link to the campaign's archive version in ISO 8601 format.
                          readOnly: true
                        long_archive_url:
                          type: string
                          title: Long Archive URL
                          description: The original link to the campaign's archive version.
                          readOnly: true
                        status:
                          type: string
                          title: Campaign Status
                          description: The current status of the campaign.
                          enum:
                          - save
                          - paused
                          - schedule
                          - sending
                          - sent
                          - canceled
                          - canceling
                          - archived
                          readOnly: true
                        emails_sent:
                          type: integer
                          title: Emails Sent
                          description: The total number of emails sent for this campaign.
                          readOnly: true
                        send_time:
                          type: string
                          format: date-time
                          title: Send Time
                          description: The date and time a campaign was sent.
                          readOnly: true
                        content_type:
                          type: string
                          title: Content Type
                          description: How the campaign's content is put together.
                          enum:
                          - template
                          - html
                          - url
                          - multichannel
                        needs_block_refresh:
                          type: boolean
                          title: Needs Block Refresh
                          description: Determines if the campaign needs its blocks refreshed by opening the web-based campaign editor. Deprecated and will always return false.
                          readOnly: true
                        resendable:
                          type: boolean
                          title: Resendable
                          description: Determines if the campaign qualifies to be resent to non-openers.
                          readOnly: true
                        recipients:
                          type: object
                          title: List
                          description: List settings for the campaign.
                          properties:
                            list_id:
                              type: string
                              title: List ID
                              description: The unique list id.
                            list_is_active:
                              type: boolean
                              title: List Status
                              description: The status of the list used, namely if it's deleted or disabled.
                              readOnly: true
                            list_name:
                              type: string
                              title: List Name
                              description: The name of the list.
                              readOnly: true
                            segment_text:
                              type: string
                              title: Segment Text
                              description: A description of the [segment](https://mailchimp.com/help/create-and-send-to-a-segment/) used for the campaign. Formatted as a string marked up with HTML.
                              readOnly: true
                            recipient_count:
                              type: integer
                              title: Recipient Count
                              description: Count of the recipients on the associated list. Formatted as an integer.
                              readOnly: true
                            segment_opts:
                              type: object
                              title: Segment Options
                              description: An object representing all segmentation options. This object should contain a `saved_segment_id` to use an existing segment, or you can create a new segment by including both `match` and `conditions` options.
                              properties:
                                saved_segment_id:
                                  type: integer
                                  title: Saved Segment ID
                                  description: The id for an existing saved segment.
                                prebuilt_segment_id:
                                  type: string
                                  title: Prebuilt Segment Id
                                  description: The prebuilt segment id, if a prebuilt segment has been designated for this campaign.
                                  example: subscribers-female
                                match:
                                  type: string
                                  title: Match Type
                                  description: Segment match type.
                                  enum:
                                  - any
                                  - all
                                conditions:
                                  type: array
                                  title: Segment Type
                                  description: Segment match conditions. There are multiple possible types, see the [condition types documentation](https://mailchimp.com/developer/marketing/docs/alternative-schemas/#segment-condition-schemas).
                                  items:
                                    x-discriminator:
                                      type: string
                                      propertyName: condition_type
                                    x-oneOf:
                                    - type: object
                                      title: Aim Segment
                                      description: Segment by interaction with a specific campaign.
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: Aim
                                          enum:
                                          - Aim
                                        field:
                                          type: string
                                          enum:
                                          - aim
                                          title: Segment Field
                                          description: Segment by interaction with a specific campaign.
                                          example: aim
                                        op:
                                          type: string
                                          enum:
                                          - open
                                          - click
                                          - sent
                                          - noopen
                                          - noclick
                                          - nosent
                                          title: Segment Operator
                                          description: 'The status of the member with regard to their campaign interaction. One of the following: opened, clicked, was sent, didn''t open, didn''t click, or was not sent.'
                                          example: open
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: Either the web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.
                                          example: any
                                    - type: object
                                      title: Automation Segment
                                      description: Segment by interaction with an Automation workflow.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: Automation
                                          enum:
                                          - Automation
                                        field:
                                          type: string
                                          enum:
                                          - automation
                                          title: Segment Field
                                          description: Segment by interaction with an Automation workflow.
                                          example: automation
                                        op:
                                          type: string
                                          enum:
                                          - started
                                          - completed
                                          - not_started
                                          - not_completed
                                          title: Segment Operator
                                          description: 'The status of the member with regard to the automation workflow. One of the following: has started the workflow, has completed the workflow, has not started the workflow, or has not completed the workflow.'
                                          example: started
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: The web id for the automation workflow to segment against.
                                          example: '2135217'
                                    - type: object
                                      title: Poll Activity Segment
                                      description: Segment by poll activity.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: CampaignPoll
                                          enum:
                                          - CampaignPoll
                                        field:
                                          type: string
                                          enum:
                                          - poll
                                          title: Segment Field
                                          description: Segment by poll activity.
                                          example: poll
                                        op:
                                          type: string
                                          enum:
                                          - member
                                          - notmember
                                          title: Segment Operator
                                          description: Members have/have not interacted with a specific poll in a Mailchimp email.
                                          example: member
                                        value:
                                          type: number
                                          title: Segment Operator
                                          description: The id for the poll.
                                          example: 409
                                    - type: object
                                      title: Conversation Segment
                                      description: Segment by interaction with a campaign via Conversations.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: Conversation
                                          enum:
                                          - Conversation
                                        field:
                                          type: string
                                          enum:
                                          - conversation
                                          title: Segment Field
                                          description: Segment by interaction with a campaign via Conversations.
                                          example: conversation
                                        op:
                                          type: string
                                          enum:
                                          - member
                                          - notmember
                                          title: Segment Operator
                                          description: 'The status of a member''s interaction with a conversation. One of the following: has replied or has not replied.'
                                          example: member
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: The web id value for a specific campaign or 'any' to account for subscribers who have/have not interacted with any campaigns.
                                          example: any
                                    - type: object
                                      title: Date Segment
                                      description: Segment by a specific date field.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: Date
                                          enum:
                                          - Date
                                        field:
                                          type: string
                                          enum:
                                          - timestamp_opt
                                          - info_changed
                                          - ecomm_date
                                          title: Segment Field
                                          description: 'The type of date field to segment on: The opt-in time for a signup, the date the subscriber was last updated, or the date of their last ecomm purchase.'
                                          example: timestamp_opt
                                        op:
                                          type: string
                                          enum:
                                          - greater
                                          - less
                                          - is
                                          - not
                                          - blank
                                          - blank_not
                                          - within
                                          - notwithin
                                          title: Segment Operator
                                          description: 'When the event took place:  Before, after, is a specific date, is not a specific date, is blank, or is not blank.'
                                          example: greater
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: 'What type of data to segment on: a specific date, a specific campaign, or the last campaign sent.'
                                          example: date
                                        extra:
                                          type: string
                                          title: Segment Extra Value
                                          description: When segmenting on 'date' or 'campaign', the date for the segment formatted as YYYY-MM-DD or the web id for the campaign.
                                          example: '2015-01-30'
                                    - type: object
                                      title: Email Client Segment
                                      description: Segment by use of a particular email client.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: EmailClient
                                          enum:
                                          - EmailClient
                                        field:
                                          type: string
                                          enum:
                                          - email_client
                                          title: Segment Field
                                          description: Segment by use of a particular email client.
                                          example: email_client
                                        op:
                                          type: string
                                          enum:
                                          - client_is
                                          - client_not
                                          title: Segment Operator
                                          description: The operation to determine whether we select clients that match the value, or clients that do not match the value.
                                          example: client_is
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: The name of the email client.
                                          example: Gmail
                                    - type: object
                                      title: Language Segment
                                      description: Segment by language.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: Language
                                          enum:
                                          - Language
                                        field:
                                          type: string
                                          enum:
                                          - language
                                          title: Segment Field
                                          description: Segmenting based off of a subscriber's language.
                                          example: language
                                        op:
                                          type: string
                                          enum:
                                          - is
                                          - not
                                          title: Segment Operator
                                          description: Whether the member's language is or is not set to a specific language.
                                          example: is
                                        value:
                                          type: string
                                          title: Segment Data
                                          description: A two-letter language identifier.
                                          example: en
                                    - type: object
                                      title: Member Rating Segment
                                      description: Segment by member rating.
                                      required:
                                      - field
                                      - op
                                      - value
                                      properties:
                                        condition_type:
                                          type: string
                                          x-value: MemberRating
                                          enum:
                                          - MemberRating
                                        field:
                                          type: string
                                          enum:
                                          - rating
                                          title: Segment Field
                                          description: Segment by member rating.
                                          example: rating
                                        op:
                                          type: string
                                          enum:
                                          - is
                                          - not
                                          - greater
                                          - less
                                          title: Segment Operator
                                          description: Members who have have a rating that is/not exactly a given number or members who have a rating greater/less than a given number.
                                          example: greater
                                        value:
                                          type: number
                                          title: Segment Operator
                                          description: The star rating number to segment against.
                                          example: 4
                                    - type: object
                                      title: Signup Source Segment
                                      description: Segment by signup source.
                                      required:
                                      - field
                                      - condition_type
                                      - op
                                      properties:
                                        condition_type:
                                          type: string
                                          enum:
                                          - SignupSource
                                          x-value: SignupSource
                    

# --- truncated at 32 KB (207 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mailchimp/refs/heads/main/openapi/mailchimp-search-api-openapi.yml