Taboola · Capability

Taboola Backstage Campaigns

Self-contained Naftiko capability for managing Taboola Realize advertising campaigns via the Backstage API. Wraps list/get/create/update/delete/duplicate plus bulk and reach-estimator operations.

Taboola Backstage Campaigns is a Naftiko capability published by Taboola, one of 7 capabilities the APIs.io network indexes for this provider. It bundles 2 operations across the GET and POST methods rooted at /v1/{…}/campaigns.

The capability includes 2 read-only operations and 1 state-changing operation. Lead operation: List all Taboola campaigns for an account. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Taboola, Advertising, and Campaigns.

Run with Naftiko TaboolaAdvertisingCampaigns

What You Can Do

GET
Getallcampaigns
/v1/{account_id}/campaigns
POST
Createcampaign
/v1/{account_id}/campaigns

MCP Tools

taboola-list-campaigns

List all Taboola campaigns for an account.

read-only idempotent
taboola-create-campaign

Create a new Taboola campaign.

taboola-get-campaign

Get a Taboola campaign by ID.

read-only idempotent

Capability Spec

campaigns-campaigns.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Taboola Backstage Campaigns
  description: |-
    Self-contained Naftiko capability for managing Taboola Realize advertising campaigns
    via the Backstage API. Wraps list/get/create/update/delete/duplicate plus bulk and
    reach-estimator operations.
  tags:
    - Taboola
    - Advertising
    - Campaigns
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
  - namespace: env
    keys:
      TABOOLA_ACCESS_TOKEN: TABOOLA_ACCESS_TOKEN
capability:
  consumes:
    - type: http
      namespace: campaigns
      baseUri: https://backstage.taboola.com/backstage/api/1.0
      description: Taboola Backstage Campaigns business capability.
      resources:
        - name: campaigns
          path: /{account_id}/campaigns/
          operations:
            - name: getAllCampaigns
              method: GET
              description: Get all campaigns for the specified account.
              outputRawFormat: json
              inputParameters:
                - name: account_id
                  in: path
                  type: string
                  required: true
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: createCampaign
              method: POST
              description: Create a new campaign.
              outputRawFormat: json
              inputParameters:
                - name: account_id
                  in: path
                  type: string
                  required: true
                - name: body
                  in: body
                  type: object
                  required: true
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: campaign
          path: /{account_id}/campaigns/{campaign_id}
          operations:
            - name: getCampaign
              method: GET
              description: Get a specific campaign.
              outputRawFormat: json
              inputParameters:
                - name: account_id
                  in: path
                  type: string
                  required: true
                - name: campaign_id
                  in: path
                  type: string
                  required: true
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: updateCampaign
              method: POST
              description: Update an existing campaign.
              outputRawFormat: json
              inputParameters:
                - name: account_id
                  in: path
                  type: string
                  required: true
                - name: campaign_id
                  in: path
                  type: string
                  required: true
                - name: body
                  in: body
                  type: object
                  required: true
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: deleteCampaign
              method: DELETE
              description: Delete a campaign (sets status to TERMINATED).
              outputRawFormat: json
              inputParameters:
                - name: account_id
                  in: path
                  type: string
                  required: true
                - name: campaign_id
                  in: path
                  type: string
                  required: true
              outputParameters:
                - name: result
                  type: object
                  value: $.
      authentication:
        type: bearer
        value: '{{env.TABOOLA_ACCESS_TOKEN}}'
        placement: header
  exposes:
    - type: rest
      namespace: campaigns-rest
      port: 8080
      description: REST adapter for Taboola Backstage Campaigns.
      resources:
        - path: /v1/{account_id}/campaigns
          name: campaigns
          operations:
            - method: GET
              name: getAllCampaigns
              call: campaigns.getAllCampaigns
              with:
                account_id: rest.path.account_id
              outputParameters:
                - type: object
                  mapping: $.
            - method: POST
              name: createCampaign
              call: campaigns.createCampaign
              with:
                account_id: rest.path.account_id
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: campaigns-mcp
      port: 9090
      transport: http
      description: MCP adapter for Taboola Backstage Campaigns.
      tools:
        - name: taboola-list-campaigns
          description: List all Taboola campaigns for an account.
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: campaigns.getAllCampaigns
          with:
            account_id: tools.account_id
          outputParameters:
            - type: object
              mapping: $.
        - name: taboola-create-campaign
          description: Create a new Taboola campaign.
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: campaigns.createCampaign
          with:
            account_id: tools.account_id
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: taboola-get-campaign
          description: Get a Taboola campaign by ID.
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: campaign.getCampaign
          with:
            account_id: tools.account_id
            campaign_id: tools.campaign_id
          outputParameters:
            - type: object
              mapping: $.