Instantly Campaigns API

The Campaigns API from Instantly — 10 operation(s) for campaigns.

OpenAPI Specification

instantly-ai-campaigns-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Instantly.ai API v2 Campaigns API
  description: 'Instantly.ai REST API v2 for managing email outreach campaigns. Authentication

    is Bearer token (API keys are created/revoked in the Instantly dashboard).

    '
  version: '2'
  contact:
    name: Instantly Developer Docs
    url: https://developer.instantly.ai/api-reference
servers:
- url: https://api.instantly.ai
security:
- BearerAuth: []
tags:
- name: Campaigns
paths:
  /api/v2/campaigns:
    get:
      summary: List campaigns
      operationId: listCampaigns
      responses:
        '200':
          description: Campaign list
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
    post:
      summary: Create a campaign
      operationId: createCampaign
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Campaign'
      responses:
        '201':
          description: Created campaign
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
  /api/v2/campaigns/{id}:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    get:
      summary: Get a campaign
      operationId: getCampaign
      responses:
        '200':
          description: Campaign
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
    patch:
      summary: Update a campaign
      operationId: updateCampaign
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Campaign'
      responses:
        '200':
          description: Updated campaign
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
    delete:
      summary: Delete a campaign
      operationId: deleteCampaign
      responses:
        '204':
          description: Deleted
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/activate:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    post:
      summary: Activate campaign
      operationId: activateCampaign
      responses:
        '200':
          description: Activated
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/pause:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    post:
      summary: Pause campaign
      operationId: pauseCampaign
      responses:
        '200':
          description: Paused
      tags:
      - Campaigns
  /api/v2/campaigns/search-by-contact:
    get:
      summary: Search campaigns by contact
      operationId: searchCampaignsByContact
      parameters:
      - in: query
        name: contact_email
        schema:
          type: string
          format: email
      responses:
        '200':
          description: Matching campaigns
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/share:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    post:
      summary: Share campaign
      operationId: shareCampaign
      responses:
        '200':
          description: Share link
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/duplicate:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    post:
      summary: Duplicate campaign
      operationId: duplicateCampaign
      responses:
        '201':
          description: Duplicated campaign
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Campaign'
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/export:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    post:
      summary: Export campaign
      operationId: exportCampaign
      responses:
        '200':
          description: Export payload
      tags:
      - Campaigns
  /api/v2/campaigns/count-launched:
    get:
      summary: Count launched campaigns
      operationId: countLaunchedCampaigns
      responses:
        '200':
          description: Count
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
      tags:
      - Campaigns
  /api/v2/campaigns/{id}/sending-status:
    parameters:
    - in: path
      name: id
      required: true
      schema:
        type: string
    get:
      summary: Get campaign sending status
      operationId: getSendingStatus
      responses:
        '200':
          description: Sending status
          content:
            application/json:
              schema:
                type: object
      tags:
      - Campaigns
components:
  schemas:
    Campaign:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        status:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API key