Kevel Decision API

Request ad decisions and creatives.

OpenAPI Specification

kevel-decision-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Kevel APIs Ads Decision API
  description: 'OpenAPI 3.1 description of the public Kevel ad-tech platform APIs covering

    the Decision API for ad requests, the Management API for advertisers,

    campaigns, flights, ads, creatives, sites, and zones, and the Reporting API

    for performance analytics. Endpoint shapes are derived from Kevel''s public

    developer docs at https://dev.kevel.com/ and the published API index at

    http://dev.kevel.com/llms.txt.

    '
  version: 1.0.0
  contact:
    name: Kevel
    url: https://www.kevel.com/
servers:
- url: https://api.kevel.co/v1
  description: Kevel Management API.
- url: https://e-{networkId}.adzerk.net
  description: Kevel Decision API (per network host).
  variables:
    networkId:
      default: '1'
      description: Your Kevel network ID.
security:
- ApiKeyAuth: []
tags:
- name: Decision
  description: Request ad decisions and creatives.
paths:
  /api/v2:
    servers:
    - url: https://e-{networkId}.adzerk.net
      variables:
        networkId:
          default: '1'
    post:
      tags:
      - Decision
      summary: Make an ad decision
      operationId: makeDecision
      security: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DecisionRequest'
      responses:
        '200':
          description: Decision response with selected ads.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DecisionResponse'
components:
  schemas:
    DecisionRequest:
      type: object
      required:
      - placements
      properties:
        placements:
          type: array
          items:
            $ref: '#/components/schemas/Placement'
        user:
          type: object
          properties:
            key:
              type: string
        keywords:
          type: array
          items:
            type: string
        url:
          type: string
        referrer:
          type: string
        ip:
          type: string
        consent:
          type: object
          additionalProperties: true
    Placement:
      type: object
      required:
      - networkId
      - siteId
      - adTypes
      properties:
        divName:
          type: string
        networkId:
          type: integer
        siteId:
          type: integer
        adTypes:
          type: array
          items:
            type: integer
        zoneIds:
          type: array
          items:
            type: integer
        count:
          type: integer
          minimum: 1
          maximum: 20
        keywords:
          type: array
          items:
            type: string
    DecisionResponse:
      type: object
      properties:
        user:
          type: object
          properties:
            key:
              type: string
        decisions:
          type: object
          additionalProperties:
            type: array
            items:
              type: object
              properties:
                adId:
                  type: integer
                creativeId:
                  type: integer
                flightId:
                  type: integer
                campaignId:
                  type: integer
                clickUrl:
                  type: string
                impressionUrl:
                  type: string
                contents:
                  type: array
                  items:
                    type: object
                    additionalProperties: true
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-Adzerk-ApiKey
      description: Management/Reporting API key issued from the Kevel UI.