IRONSCALES · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the IRONSCALES Management API

5 actions 5 updates update extends openapi/_original/ironscales-management-api-openapi.json
Generated by API Evangelist Written by API Evangelist tooling for IRONSCALES's API. It is a proposal applied on top of the contract, not a document IRONSCALES publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-notex-apievangelist-providerx-apievangelist-harvested-fromx-apievangelist-harvested-onx-apievangelist-spec-versionx-apievangelist-rate-limitx-apievangelist-artifactsx-apievangelist-credential-source

Targets 5

$.info
$.securityDefinitions.JWT
$.paths['/get-token/'].post
$.paths['/mitigation/{company_id}/stats/'].get
$.paths

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the IRONSCALES Management API
  version: 1.0.0
extends: openapi/_original/ironscales-management-api-openapi.json
x-generated: '2026-08-04'
x-method: generated
x-source: >-
  API Evangelist enrichment pipeline. Captures our annotations over the provider-published Swagger 2.0
  document without mutating the harvested original. Nothing here changes provider semantics; every value
  is an observation recorded during enrichment.
actions:
- target: $.info
  update:
    x-apievangelist-provider: ironscales
    x-apievangelist-harvested-from: https://appapi.ironscales.com/appapi/docs/?format=openapi
    x-apievangelist-harvested-on: '2026-08-04'
    x-apievangelist-spec-version: swagger-2.0
    x-apievangelist-rate-limit: 120 requests per minute per company
    x-apievangelist-artifacts:
      authentication: authentication/ironscales-authentication.yml
      conventions: conventions/ironscales-conventions.yml
      errors: errors/ironscales-problem-types.yml
      rate_limits: rate-limits/ironscales-rate-limits.yml
      lifecycle: lifecycle/ironscales-lifecycle.yml
      data_model: data-model/ironscales-data-model.yml
      skills: skills/_index.yml
- target: $.securityDefinitions.JWT
  description: >-
    The provider declares this scheme as type "apikey" (lowercase k). Swagger 2.0 requires the exact
    string "apiKey", so strict validators reject the securityDefinitions block. Recorded rather than
    silently corrected, because the original is the provider's published artifact.
  update:
    x-apievangelist-note: >-
      Declared type is "apikey"; the Swagger 2.0 specification requires "apiKey". The credential is a JWT
      obtained from POST /get-token/ using the dashboard APP API Token, sent in the Authorization header.
    x-apievangelist-credential-source: POST /get-token/
- target: $.paths['/get-token/'].post
  update:
    x-apievangelist-role: >-
      Entry point for every other operation in this API — exchanges the dashboard-issued APP API Token for
      the JWT that all other operations require.
- target: $.paths['/mitigation/{company_id}/stats/'].get
  update:
    x-apievangelist-superseded-by: /mitigation/{company_id}/stats/v2/
    x-apievangelist-note: >-
      A V2 form of this operation exists at /mitigation/{company_id}/stats/v2/. IRONSCALES publishes no
      deprecation policy, so no retirement date for the V1 form is known.
- target: $.paths
  update:
    x-apievangelist-tenancy: >-
      Every path except /get-token/ is scoped by a company_id path parameter. Resolve the Company ID from
      the IRONSCALES dashboard before any call; the API exposes no company-discovery operation.
    x-apievangelist-idempotency: >-
      No Idempotency-Key contract exists. Treat all POST operations as at-most-once and reconcile by
      re-reading state rather than retrying.