AppLovin · Capability

AppLovin Advertiser Growth

Workflow capability for mobile and web advertisers running AppDiscovery (Axon) campaigns. Combines campaign management, creative management, conversion-event ingestion (CAPI), and growth + asset reporting so a single user-acquisition role can launch, optimize, and measure performance.

Run with Naftiko AppLovinAxonAppDiscoveryUser AcquisitionAdvertisingConversion Tracking

What You Can Do

GET
List campaigns — List campaigns.
/v1/campaigns
POST
Create campaign — Create a new campaign.
/v1/campaigns
PUT
Update campaign — Update an existing campaign.
/v1/campaigns
GET
List creative sets — List creative sets.
/v1/creative-sets
POST
Create creative set — Create a creative set.
/v1/creative-sets
POST
Clone creative set — Clone an existing creative set.
/v1/creative-sets
GET
List assets — List uploaded creative assets.
/v1/assets
POST
Post conversion events — Post a batch of conversion events to CAPI.
/v1/conversion-events
GET
Get growth report — Get Growth (advertiser or publisher) report rows.
/v1/growth-report
GET
Get asset report — Get asset performance for a symbolic time range.
/v1/asset-report
GET
Get asset analytics report — Get asset performance for a custom date range.
/v1/asset-report

MCP Tools

list-campaigns

List AppDiscovery campaigns.

read-only
create-campaign

Create a new AppDiscovery campaign.

update-campaign

Update an AppDiscovery campaign.

idempotent
list-creative-sets

List creative sets.

read-only
create-creative-set

Create a creative set.

clone-creative-set

Clone a creative set.

list-assets

List creative assets.

read-only
post-conversion-events

Post server-to-server conversion events to CAPI.

get-growth-report

Get AppDiscovery growth report.

read-only
get-asset-report

Get creative-level asset report by symbolic range.

read-only
get-asset-analytics-report

Get creative-level asset report by custom date range.

read-only

Capability Spec

advertiser-growth.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: AppLovin Advertiser Growth
  description: Workflow capability for mobile and web advertisers running AppDiscovery (Axon) campaigns. Combines campaign
    management, creative management, conversion-event ingestion (CAPI), and growth + asset reporting so a single user-acquisition
    role can launch, optimize, and measure performance.
  tags:
  - AppLovin
  - Axon
  - AppDiscovery
  - User Acquisition
  - Advertising
  - Conversion Tracking
  created: '2026-05-05'
  modified: '2026-05-06'
binds:
- namespace: env
  keys:
    APPLOVIN_CAMPAIGN_MGMT_KEY: APPLOVIN_CAMPAIGN_MGMT_KEY
    APPLOVIN_CAPI_KEY: APPLOVIN_CAPI_KEY
    APPLOVIN_REPORT_KEY: APPLOVIN_REPORT_KEY
capability:
  consumes:
  - type: http
    namespace: applovin-axon-campaign-management
    baseUri: https://api.ads.axon.ai/manage/v1
    description: Axon campaign management API.
    authentication:
      type: bearer
      token: '{{APPLOVIN_CAMPAIGN_MGMT_KEY}}'
    resources:
    - name: campaigns
      path: /campaign
      description: Campaign endpoints.
      operations:
      - name: list-campaigns
        method: GET
        description: List campaigns.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        - name: ids
          in: query
          type: string
          required: false
          description: Comma-separated campaign IDs.
        - name: page
          in: query
          type: integer
          required: false
          description: Page number.
        - name: size
          in: query
          type: integer
          required: false
          description: Page size (max 100).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: create-campaign
        method: POST
        description: Create a new campaign.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data: '{{tools.body}}'
      - name: update-campaign
        method: POST
        description: Update an existing campaign.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data: '{{tools.body}}'
    - name: creative-sets
      path: /creative_set
      description: Creative set endpoints.
      operations:
      - name: list-creative-sets
        method: GET
        description: List creative sets.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: create-creative-set
        method: POST
        description: Create a creative set.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data: '{{tools.body}}'
      - name: clone-creative-set
        method: POST
        description: Clone a creative set.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data:
            campaign_id: '{{tools.campaign_id}}'
            creative_set_id: '{{tools.creative_set_id}}'
            status: '{{tools.status}}'
    - name: assets
      path: /asset
      description: Creative asset endpoints.
      operations:
      - name: list-assets
        method: GET
        description: List uploaded assets.
        inputParameters:
        - name: account_id
          in: query
          type: string
          required: true
          description: Account identifier.
        - name: resource_type
          in: query
          type: string
          required: false
          description: image, html, or video.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  - type: http
    namespace: applovin-conversion-api-lead-gen
    baseUri: https://b.applovin.com
    description: AppLovin server-to-server conversion ingestion.
    authentication:
      type: bearer
      token: '{{APPLOVIN_CAPI_KEY}}'
    resources:
    - name: events
      path: /v1/event
      description: Conversion event ingestion.
      operations:
      - name: post-conversion-events
        method: POST
        description: Post a batch of conversion events (up to 100).
        inputParameters:
        - name: pixel_id
          in: query
          type: string
          required: true
          description: Axon Event Key for the destination pixel.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        body:
          type: json
          data:
            events: '{{tools.events}}'
  - type: http
    namespace: applovin-growth-reporting
    baseUri: https://r.applovin.com
    description: AppDiscovery / Axon reporting endpoint.
    authentication:
      type: apikey
      key: api_key
      value: '{{APPLOVIN_REPORT_KEY}}'
      placement: query
    resources:
    - name: report
      path: /report
      description: Aggregated campaign report rows.
      operations:
      - name: get-growth-report
        method: GET
        description: Get Growth (publisher or advertiser) report rows.
        inputParameters:
        - name: start
          in: query
          type: string
          required: true
          description: Start date or epoch.
        - name: end
          in: query
          type: string
          required: true
          description: End date, epoch, or 'now'.
        - name: format
          in: query
          type: string
          required: true
          description: 'Response format: json or csv.'
        - name: columns
          in: query
          type: string
          required: true
          description: Comma-separated list of columns.
        - name: report_type
          in: query
          type: string
          required: false
          description: publisher or advertiser.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  - type: http
    namespace: applovin-growth-asset-reporting
    baseUri: https://r.applovin.com
    description: AppDiscovery / Axon creative-level reporting.
    authentication:
      type: apikey
      key: api_key
      value: '{{APPLOVIN_REPORT_KEY}}'
      placement: query
    resources:
    - name: asset-report
      path: /assetReport
      description: Creative report by symbolic time range.
      operations:
      - name: get-asset-report
        method: GET
        description: Get asset report for a symbolic range.
        inputParameters:
        - name: range
          in: query
          type: string
          required: true
          description: yesterday, last_7d, or last_month.
        - name: columns
          in: query
          type: string
          required: true
          description: Comma-separated columns.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: asset-analytics-report
      path: /assetAnalyticsReport
      description: Creative report by date range.
      operations:
      - name: get-asset-analytics-report
        method: GET
        description: Get asset report for a custom date range.
        inputParameters:
        - name: start
          in: query
          type: string
          required: true
          description: Start date YYYY-MM-DD.
        - name: end
          in: query
          type: string
          required: true
          description: End date YYYY-MM-DD.
        - name: columns
          in: query
          type: string
          required: true
          description: Comma-separated columns.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8081
    namespace: advertiser-growth-api
    description: Unified REST API for AppLovin advertiser growth workflows.
    resources:
    - path: /v1/campaigns
      name: campaigns
      description: AppDiscovery / Axon campaigns.
      operations:
      - method: GET
        name: list-campaigns
        description: List campaigns.
        call: applovin-axon-campaign-management.list-campaigns
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: create-campaign
        description: Create a new campaign.
        call: applovin-axon-campaign-management.create-campaign
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: update-campaign
        description: Update an existing campaign.
        call: applovin-axon-campaign-management.update-campaign
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/creative-sets
      name: creative-sets
      description: AppDiscovery creative sets.
      operations:
      - method: GET
        name: list-creative-sets
        description: List creative sets.
        call: applovin-axon-campaign-management.list-creative-sets
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: create-creative-set
        description: Create a creative set.
        call: applovin-axon-campaign-management.create-creative-set
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: clone-creative-set
        description: Clone an existing creative set.
        call: applovin-axon-campaign-management.clone-creative-set
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/assets
      name: assets
      description: Creative assets.
      operations:
      - method: GET
        name: list-assets
        description: List uploaded creative assets.
        call: applovin-axon-campaign-management.list-assets
        with:
          account_id: rest.account_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/conversion-events
      name: conversion-events
      description: Server-to-server conversion events.
      operations:
      - method: POST
        name: post-conversion-events
        description: Post a batch of conversion events to CAPI.
        call: applovin-conversion-api-lead-gen.post-conversion-events
        with:
          pixel_id: rest.pixel_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/growth-report
      name: growth-report
      description: Growth campaign report.
      operations:
      - method: GET
        name: get-growth-report
        description: Get Growth (advertiser or publisher) report rows.
        call: applovin-growth-reporting.get-growth-report
        with:
          start: rest.start
          end: rest.end
          format: rest.format
          columns: rest.columns
          report_type: rest.report_type
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/asset-report
      name: asset-report
      description: Creative-level performance report.
      operations:
      - method: GET
        name: get-asset-report
        description: Get asset performance for a symbolic time range.
        call: applovin-growth-asset-reporting.get-asset-report
        with:
          range: rest.range
          columns: rest.columns
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: get-asset-analytics-report
        description: Get asset performance for a custom date range.
        call: applovin-growth-asset-reporting.get-asset-analytics-report
        with:
          start: rest.start
          end: rest.end
          columns: rest.columns
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9091
    namespace: advertiser-growth-mcp
    transport: http
    description: MCP server for AI-assisted AppDiscovery campaign management and analytics.
    tools:
    - name: list-campaigns
      description: List AppDiscovery campaigns.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-axon-campaign-management.list-campaigns
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: create-campaign
      description: Create a new AppDiscovery campaign.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: applovin-axon-campaign-management.create-campaign
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-campaign
      description: Update an AppDiscovery campaign.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: applovin-axon-campaign-management.update-campaign
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-creative-sets
      description: List creative sets.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-axon-campaign-management.list-creative-sets
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: create-creative-set
      description: Create a creative set.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: applovin-axon-campaign-management.create-creative-set
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: clone-creative-set
      description: Clone a creative set.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: applovin-axon-campaign-management.clone-creative-set
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-assets
      description: List creative assets.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-axon-campaign-management.list-assets
      with:
        account_id: tools.account_id
      outputParameters:
      - type: object
        mapping: $.
    - name: post-conversion-events
      description: Post server-to-server conversion events to CAPI.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: applovin-conversion-api-lead-gen.post-conversion-events
      with:
        pixel_id: tools.pixel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: get-growth-report
      description: Get AppDiscovery growth report.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-growth-reporting.get-growth-report
      with:
        start: tools.start
        end: tools.end
        format: tools.format
        columns: tools.columns
      outputParameters:
      - type: object
        mapping: $.
    - name: get-asset-report
      description: Get creative-level asset report by symbolic range.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-growth-asset-reporting.get-asset-report
      with:
        range: tools.range
        columns: tools.columns
      outputParameters:
      - type: object
        mapping: $.
    - name: get-asset-analytics-report
      description: Get creative-level asset report by custom date range.
      hints:
        readOnly: true
        openWorld: true
      call: applovin-growth-asset-reporting.get-asset-analytics-report
      with:
        start: tools.start
        end: tools.end
        columns: tools.columns
      outputParameters:
      - type: object
        mapping: $.