Kaminari Ad Tags API

The tags API from Kaminari Ad — 3 operation(s) for tags.

GitHub OpenAPI

Operations 5

GET /api/v1/scans/{scan_id}/tags List Scan Tags #
GET /api/v1/tag-definitions List Tag Definitions #
GET /api/v1/tag-definitions/{slug} Get Tag Definition #
PATCH /api/v1/tag-definitions/{slug} Update Tag Definition #
DELETE /api/v1/tag-definitions/{slug} Delete Tag Definition #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kaminari-ad:kaminari-ad-tags-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kaminari-ad-tags-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Kaminari Ad Tags API
  description: 'REST API for Kaminari Ad, the ad quality and ad security platform for publishers, ad networks, SSPs and DSPs. Submit ad creatives, ad tags and landing pages for scanning, read verdicts with evidence, manage policies, alerts and webhooks.


    Authenticate with an API key as a Bearer token: https://kaminari.ad/docs/developers/authentication'
  contact:
    name: Kaminari Ad Support
    url: https://kaminari.ad/contact
    email: support@kaminari.ad
  version: 0.1.0
servers:
- url: https://app.kaminari.ad
tags:
- name: Tags
paths:
  /api/v1/scans/{scan_id}/tags:
    get:
      tags:
      - Tags
      summary: List Scan Tags
      description: List all tags for a scan.
      operationId: list_scan_tags_api_v1_scans__scan_id__tags_get
      security:
      - HTTPBearer: []
      parameters:
      - name: scan_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          title: Scan Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ScanTagResponse'
                title: Response List Scan Tags Api V1 Scans  Scan Id  Tags Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/tag-definitions:
    get:
      tags:
      - Tags
      summary: List Tag Definitions
      description: 'List all available tag definitions with usage statistics.


        Archived tags are excluded by default. ``include_archived=true``

        adds back only the tags your own organization archived; archived

        platform tags are retired and never returned.'
      operationId: list_tag_definitions_api_v1_tag_definitions_get
      security:
      - HTTPBearer: []
      parameters:
      - name: category
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Category
      - name: include_archived
        in: query
        required: false
        schema:
          type: boolean
          default: false
          title: Include Archived
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TagDefinitionWithStatsResponse'
                title: Response List Tag Definitions Api V1 Tag Definitions Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /api/v1/tag-definitions/{slug}:
    get:
      tags:
      - Tags
      summary: Get Tag Definition
      description: Get a tag definition with linked rules.
      operationId: get_tag_definition_api_v1_tag_definitions__slug__get
      security:
      - HTTPBearer: []
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagDefinitionDetailResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    patch:
      tags:
      - Tags
      summary: Update Tag Definition
      description: Update display_name and/or description of a custom tag definition.
      operationId: update_tag_definition_api_v1_tag_definitions__slug__patch
      security:
      - HTTPBearer: []
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTagDefinitionRequest'
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
    delete:
      tags:
      - Tags
      summary: Delete Tag Definition
      description: Delete a custom tag definition. Scan tag assignments cascade-delete.
      operationId: delete_tag_definition_api_v1_tag_definitions__slug__delete
      security:
      - HTTPBearer: []
      parameters:
      - name: slug
        in: path
        required: true
        schema:
          type: string
          title: Slug
      responses:
        '204':
          description: Successful Response
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    TagSeverity:
      type: string
      enum:
      - high
      - medium
      - low
      title: TagSeverity
      description: 'Logical severity for a tag definition.


        Independent of category/source — captures how serious the signal is.


        HIGH: confirmed malicious / hard block (red badge).

        MEDIUM: suspicious / warning (yellow badge).

        LOW: informational signal, content classification, soft behaviour

        flag (blue/grey badge). Default for new custom tags.'
    TagVisibility:
      type: string
      enum:
      - hidden
      - internal
      - public
      title: TagVisibility
      description: Visibility tier for a tag definition.
    UpdateTagDefinitionRequest:
      properties:
        display_name:
          anyOf:
          - type: string
          - type: 'null'
          title: Display Name
        description:
          anyOf:
          - type: string
          - type: 'null'
          title: Description
        visibility:
          anyOf:
          - $ref: '#/components/schemas/TagVisibility'
          - type: 'null'
        severity:
          anyOf:
          - $ref: '#/components/schemas/TagSeverity'
          - type: 'null'
      type: object
      title: UpdateTagDefinitionRequest
      description: Request body for PATCH /tag-definitions/{slug}.
    ScanTagResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        scan_id:
          type: string
          format: uuid
          title: Scan Id
        tag_slug:
          type: string
          title: Tag Slug
        detail:
          type: string
          title: Detail
        url:
          type: string
          title: Url
          default: ''
        surface:
          type: string
          title: Surface
          default: page
        display_name:
          type: string
          title: Display Name
          default: ''
        category:
          type: string
          title: Category
          default: ''
        severity:
          type: string
          title: Severity
          default: ''
        created_at:
          type: string
          format: date-time
          title: Created At
      type: object
      required:
      - id
      - scan_id
      - tag_slug
      - detail
      - created_at
      title: ScanTagResponse
      description: A single tag applied to a scan.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    TagDefinitionDetailResponse:
      properties:
        slug:
          type: string
          title: Slug
        category:
          type: string
          title: Category
        source:
          type: string
          title: Source
        display_name:
          type: string
          title: Display Name
        description:
          type: string
          title: Description
        scope:
          type: string
          title: Scope
        organization_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Organization Id
        visibility:
          type: string
          title: Visibility
        severity:
          type: string
          title: Severity
        scans_count:
          type: integer
          title: Scans Count
        rules_count:
          type: integer
          title: Rules Count
        archived_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Archived At
        linked_rules:
          items:
            $ref: '#/components/schemas/LinkedRuleResponse'
          type: array
          title: Linked Rules
      type: object
      required:
      - slug
      - category
      - source
      - display_name
      - description
      - scope
      - organization_id
      - visibility
      - severity
      - scans_count
      - rules_count
      title: TagDefinitionDetailResponse
      description: Tag definition with full list of linked custom rules.
    TagDefinitionWithStatsResponse:
      properties:
        slug:
          type: string
          title: Slug
        category:
          type: string
          title: Category
        source:
          type: string
          title: Source
        display_name:
          type: string
          title: Display Name
        description:
          type: string
          title: Description
        scope:
          type: string
          title: Scope
        organization_id:
          anyOf:
          - type: string
            format: uuid
          - type: 'null'
          title: Organization Id
        visibility:
          type: string
          title: Visibility
        severity:
          type: string
          title: Severity
        scans_count:
          type: integer
          title: Scans Count
        rules_count:
          type: integer
          title: Rules Count
        archived_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Archived At
      type: object
      required:
      - slug
      - category
      - source
      - display_name
      - description
      - scope
      - organization_id
      - visibility
      - severity
      - scans_count
      - rules_count
      title: TagDefinitionWithStatsResponse
      description: 'Tag definition enriched with scans and rules counts.


        ``visibility`` is one of ``hidden`` / ``internal`` / ``public``

        (see :class:`TagVisibility`). ``scans_count`` is scoped to the

        caller''s organization. ``archived_at`` is ``null`` for active tags

        and a timestamp for archived (hidden-but-kept) tags.'
    LinkedRuleResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        name:
          type: string
          title: Name
        rule_type:
          type: string
          title: Rule Type
        target:
          type: string
          title: Target
        is_active:
          type: boolean
          title: Is Active
      type: object
      required:
      - id
      - name
      - rule_type
      - target
      - is_active
      title: LinkedRuleResponse
      description: Minimal info about a custom rule that produces a given tag.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer