> ## Documentation Index
> Fetch the complete documentation index at: https://docs.conversion.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List Campaigns

> List your custom campaigns with their type, `sfdcCampaignId`, and member count. Only custom campaigns are exposed by this API; webinars and blasts are not returned. Archived campaigns are excluded. Member statuses are not included here; fetch them as `type.statuses` from `GET /v2/campaigns/{campaignId}`.

Results are paginated with an opaque cursor returned as `pagination.nextCursor`. Pass it back as the `cursor` query parameter to fetch the next page.



## OpenAPI

````yaml /openapi.json get /v2/campaigns
openapi: 3.1.0
info:
  title: Conversion API
  version: 2.0.0
  description: >-
    The Conversion API lets you programmatically manage contacts, track custom
    events, and manage their associated data.
servers:
  - url: https://pub-api.conversion.ai/api
security:
  - apiKey: []
paths:
  /v2/campaigns:
    get:
      summary: List Campaigns
      description: >-
        List your custom campaigns with their type, `sfdcCampaignId`, and member
        count. Only custom campaigns are exposed by this API; webinars and
        blasts are not returned. Archived campaigns are excluded. Member
        statuses are not included here; fetch them as `type.statuses` from `GET
        /v2/campaigns/{campaignId}`.


        Results are paginated with an opaque cursor returned as
        `pagination.nextCursor`. Pass it back as the `cursor` query parameter to
        fetch the next page.
      operationId: listCampaigns
      parameters:
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 50
          description: >-
            The maximum number of campaigns to return per page. Values outside
            [1, 100] are clamped rather than rejected.
        - name: cursor
          in: query
          required: false
          schema:
            type: string
          description: >-
            The opaque pagination cursor returned as `pagination.nextCursor` by
            a previous call. Omit to fetch the first page. An invalid or
            malformed cursor returns an `invalid_cursor` error.
          examples:
            next-page:
              value: eyJjcmVhdGVkQXQiOiIyMDI2LTAxLTE1VDEwOjMwOjAwWiJ9
      responses:
        '200':
          description: Campaigns retrieved successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    required:
                      - campaigns
                    properties:
                      campaigns:
                        type: array
                        description: The current page of campaigns.
                        items:
                          type: object
                          required:
                            - id
                            - name
                            - type
                            - sfdcCampaignId
                            - memberCount
                            - createdAt
                            - updatedAt
                          properties:
                            id:
                              type: string
                              format: uuid
                              description: The Conversion campaign id.
                              examples:
                                - b7c8d9e0-f1a2-3456-bcde-f01234567890
                            name:
                              type: string
                              description: >-
                                The campaign's display name, unique within the
                                workspace.
                              examples:
                                - Q3 Field Events
                            type:
                              type: object
                              description: >-
                                The campaign type the campaign belongs to. Types
                                are defined in the dashboard.
                              required:
                                - id
                                - name
                                - systemType
                              properties:
                                id:
                                  type: string
                                  format: uuid
                                  description: The campaign type id.
                                  examples:
                                    - 3c9d2b1a-8e4f-4a6b-9c0d-2e3f4a5b6c7d
                                name:
                                  type: string
                                  description: >-
                                    The type's display name, as configured in
                                    the dashboard.
                                  examples:
                                    - Field Event
                                systemType:
                                  type: string
                                  enum:
                                    - CUSTOM
                                  description: >-
                                    The system classification of the campaign
                                    type. Currently `CUSTOM`.
                            sfdcCampaignId:
                              type:
                                - string
                                - 'null'
                              description: >-
                                The id of the Salesforce campaign this campaign
                                is linked to, or `null` if the campaign is not
                                linked to Salesforce.
                              examples:
                                - 701Ho00000AbCdEfGH
                            memberCount:
                              type: integer
                              description: The total number of members in the campaign.
                              examples:
                                - 42
                            createdAt:
                              type: string
                              format: date-time
                              description: When the campaign was created.
                            updatedAt:
                              type: string
                              format: date-time
                              description: When the campaign was last updated.
                  pagination:
                    type: object
                    required:
                      - nextCursor
                    properties:
                      nextCursor:
                        type:
                          - string
                          - 'null'
                        description: >-
                          Opaque cursor for the next page, or `null` when there
                          are no more results. This is the single source of
                          truth for whether more results exist.
              examples:
                success:
                  summary: A page of campaigns
                  value:
                    data:
                      campaigns:
                        - id: b7c8d9e0-f1a2-3456-bcde-f01234567890
                          name: Q3 Field Events
                          type:
                            id: 3c9d2b1a-8e4f-4a6b-9c0d-2e3f4a5b6c7d
                            name: Field Event
                            systemType: CUSTOM
                          sfdcCampaignId: 701Ho00000AbCdEfGH
                          memberCount: 42
                          createdAt: '2026-05-01T12:00:00Z'
                          updatedAt: '2026-06-11T09:30:00Z'
                        - id: 2d4e6f8a-1b3c-4d5e-8f9a-0b1c2d3e4f5a
                          name: Product Launch Outreach
                          type:
                            id: 5a6b7c8d-9e0f-4a1b-8c2d-3e4f5a6b7c8d
                            name: Outreach
                            systemType: CUSTOM
                          sfdcCampaignId: null
                          memberCount: 0
                          createdAt: '2026-03-14T10:00:00Z'
                          updatedAt: '2026-03-14T10:00:00Z'
                    pagination:
                      nextCursor: null
        '400':
          description: The request was malformed or contained invalid data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                invalid-cursor:
                  summary: Invalid cursor
                  value:
                    error:
                      code: invalid_cursor
                      message: invalid pagination cursor
        '401':
          description: Authentication failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                unauthorized:
                  summary: Missing or invalid API key
                  value:
                    error:
                      code: unauthorized
                      message: API key is required
        '500':
          description: An unexpected server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              examples:
                internal:
                  summary: Internal error
                  value:
                    error:
                      code: internal_error
                      message: failed to load campaigns
components:
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          required:
            - code
            - message
          properties:
            code:
              type: string
              description: A machine-readable error code.
              examples:
                - invalid_email
            message:
              type: string
              description: A human-readable error description.
              examples:
                - 'invalid email format: not-an-email'
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        Your Conversion API key. Found in **Settings > Integrations** in the
        dashboard. Format: `sk_live_<key_id>_<secret>`.

````