# authorship: generated by API Evangelist tooling. Stamped 2026-08-18
# on the file's own generator header (roadmap#64). An unmarked file is
# NOT assumed to be ours -- absence of evidence was never stamped.
x-method: generated
overlay: 1.0.0
info:
title: API Evangelist enhancements for CybelAngel Reports API
version: 1.0.0
x-generated: '2026-08-17'
x-method: generated
x-source: >-
Generated by the API Evangelist enrichment pipeline from the provider's own published
specification, harvested verbatim from the Stoplight developer portal at
developers.cybelangel.com. This overlay records API Evangelist's derived findings; the
harvested specification in openapi/cybelangel-platform-reports-openapi.yml is never mutated.
extends: openapi/cybelangel-platform-reports-openapi.yml
actions:
- target: $.info
description: Attach the API Evangelist profile pointers for this API.
update:
x-apievangelist-profile: https://apis.io/provider/cybelangel
x-apievangelist-repository: https://github.com/api-evangelist/cybelangel
x-apievangelist-harvested: '2026-08-17'
x-apievangelist-harvest-source: developers.cybelangel.com (Stoplight project export)
x-apievangelist-base-url: https://platform.cybelangel.com/api
x-apievangelist-auth: oauth2 clientCredentials with 10 named scopes
- target: $.info
description: Cross-link the derived artifacts that describe the cross-cutting semantics this spec omits.
update:
x-apievangelist-artifacts:
authentication: authentication/cybelangel-authentication.yml
scopes: scopes/cybelangel-scopes.yml
conventions: conventions/cybelangel-conventions.yml
errors: errors/cybelangel-problem-types.yml
rate_limits: rate-limits/cybelangel-rate-limits.yml
lifecycle: lifecycle/cybelangel-lifecycle.yml
data_model: data-model/cybelangel-data-model.yml
conformance: conformance/cybelangel-conformance.yml
sandbox: sandbox/cybelangel-sandbox.yml
skills: skills/_index.yml
- target: $.info
description: Record the runtime facts the specification does not carry.
update:
x-apievangelist-runtime:
token_endpoint: https://auth.cybelangel.com/oauth/token
token_audience: https://platform.cybelangel.com/
grant_type: client_credentials
jwks_uri: https://auth.cybelangel.com/.well-known/jwks.json
rate_limit_requests_per_second: 15
rate_limit_concurrent_requests: 20
rate_limit_tokens_per_month: 2000
rate_limit_response_headers: none
idempotency: not supported
mock_server: https://stoplight.io/mocks/cybelangel
- target: $.info
description: Record the token-lifetime contradiction between this spec and the docs.
update:
x-apievangelist-notes:
token_ttl_conflict: >-
info.description here says tokens "expire 24 hours" and the example response carries
expires_in 86400, but the provider's own authentication page says "A token has validity
period of 1 hour". Clients should treat 3600s as the ceiling.
error_schema_gap: >-
Every 4xx/5xx response in this document is declared with a description only and no
content schema, unlike the six api.cybelangel.com specs which declare
APIErrorResponse[...] envelopes.
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.