AppLovin Revenue Reporting API

Mediation revenue and user-level reporting

OpenAPI Specification

applovin-revenue-reporting-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: AppLovin Axon Campaign Management Ad Units Revenue Reporting API
  version: v1
  x-generated-from: documentation
  x-source-url: https://support.axon.ai/en/app-discovery/api/axon-campaign-management-api/
  x-last-validated: '2026-05-05'
  description: 'REST endpoints used to programmatically manage AppLovin AppDiscovery

    (Axon) campaigns, creative sets, and creative assets. All endpoints

    require an `Authorization` header with the Campaign Management API key

    and an `account_id` query parameter. Rate limit: 1,000 requests per 60

    seconds (HTTP 429 on overflow).

    '
  contact:
    name: AppLovin Support
    url: https://support.axon.ai
servers:
- url: https://api.ads.axon.ai/manage/v1
  description: Axon campaign management API
security:
- bearerAuth: []
tags:
- name: Revenue Reporting
  description: Mediation revenue and user-level reporting
paths:
  /maxReport:
    get:
      operationId: getMaxRevenueReport
      summary: Get MAX Revenue Report
      description: 'Retrieve aggregated MAX revenue and user-level metrics for a publisher

        account. Specify the columns you want returned plus a date range

        (start, end) within a rolling 45-day window. Optional filters, sort,

        limit, and offset support customised reporting and pagination.

        '
      tags:
      - Revenue Reporting
      parameters:
      - $ref: '#/components/parameters/ApiKey'
      - $ref: '#/components/parameters/Columns'
      - $ref: '#/components/parameters/Start'
      - $ref: '#/components/parameters/End'
      - $ref: '#/components/parameters/Format'
      - $ref: '#/components/parameters/Limit'
      - $ref: '#/components/parameters/Offset'
      - $ref: '#/components/parameters/NotZero'
      responses:
        '200':
          description: Report results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RevenueReportResponse'
              example:
                code: 200
                count: 2
                results:
                - day: '2019-03-25'
                  hour: 00:00
                  application: My Test App
                  impressions: '987654'
                - day: '2019-03-26'
                  hour: 00:00
                  application: My Test App
                  impressions: '876543'
            text/csv:
              schema:
                type: string
                description: CSV-encoded report rows with header row
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  parameters:
    Columns:
      name: columns
      in: query
      required: true
      description: Comma-separated list of report columns to return.
      schema:
        type: string
        example: day,application,ad_format,country,impressions,ecpm,revenue
    End:
      name: end
      in: query
      required: true
      description: Inclusive end date in YYYY-MM-DD. Must fall within a 45-day request window with start.
      schema:
        type: string
        format: date
        example: '2019-03-29'
    Format:
      name: format
      in: query
      required: false
      description: Response format. Defaults to JSON.
      schema:
        type: string
        enum:
        - json
        - csv
        default: json
    Offset:
      name: offset
      in: query
      required: false
      description: Number of rows to skip for pagination.
      schema:
        type: integer
        minimum: 0
    ApiKey:
      name: api_key
      in: query
      required: true
      description: Report Key (issued under Account > Keys in the Axon dashboard).
      schema:
        type: string
        example: Hyfi8MkctXXXXXXXXXXXXXXXXXXXXXXX
    Limit:
      name: limit
      in: query
      required: false
      description: Maximum rows to return.
      schema:
        type: integer
        minimum: 1
    NotZero:
      name: not_zero
      in: query
      required: false
      description: Set to 1 to exclude rows where all metrics are zero.
      schema:
        type: integer
        enum:
        - 0
        - 1
    Start:
      name: start
      in: query
      required: true
      description: Inclusive start date in YYYY-MM-DD. Must fall within a 45-day request window with end.
      schema:
        type: string
        format: date
        example: '2019-03-25'
  schemas:
    RevenueReportResponse:
      type: object
      description: 'Top-level wrapper around revenue report results.

        x-schema-source: documentation

        '
      properties:
        code:
          type: integer
          description: HTTP status code echoed in the body (200 indicates success).
          example: 200
        count:
          type: integer
          description: Number of rows in `results`.
          example: 2
        results:
          type: array
          description: Result rows whose keys are the requested columns.
          items:
            $ref: '#/components/schemas/RevenueReportRow'
      required:
      - code
      - count
      - results
    RevenueReportRow:
      type: object
      description: 'A single report row. The exact set of keys depends on the requested

        `columns` parameter. Common columns are listed below.

        '
      additionalProperties: true
      properties:
        day:
          type: string
          format: date
          description: Reporting day in YYYY-MM-DD.
        hour:
          type: string
          description: Reporting hour bucket in HH:00 format (UTC).
        application:
          type: string
          description: Display name of the publisher application.
        package_name:
          type: string
          description: Bundle identifier (iOS) or package name (Android).
        ad_format:
          type: string
          description: Ad format (BANNER, INTER, REWARD, MREC, NATIVE).
        country:
          type: string
          description: ISO 3166-1 alpha-2 country code.
        network:
          type: string
          description: Mediated ad network name.
        impressions:
          type: string
          description: Impression count as a string.
        clicks:
          type: string
          description: Click count as a string.
        ctr:
          type: string
          description: Click-through rate.
        ecpm:
          type: string
          description: Effective CPM in USD.
        revenue:
          type: string
          description: Revenue in USD.
    Error:
      type: object
      properties:
        code:
          type: integer
          description: HTTP status code.
        message:
          type: string
          description: Human-readable error description.
      required:
      - code
  responses:
    Unauthorized:
      description: Missing or invalid api_key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: 401
            message: Unauthorized
    BadRequest:
      description: Malformed or invalid request parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            code: 400
            message: Invalid date range
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Campaign Management API key passed in the `Authorization` header.