Datadog · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Datadog Custom API
14 actions
14 updates
phrasing
extends
openapi/datadog-custom-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Datadog's API. It is a proposal applied on top of the contract, not a document Datadog publishes.
What the actions change
x-apievangelist-phrasing
Targets 14
$.info
$.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].get
$.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].put
$.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].delete
$.paths['/api/v2/cost/custom_costs'].get
$.paths['/api/v2/cost/custom_costs'].put
$.paths['/api/v2/cost/custom_costs/{file_id}'].get
$.paths['/api/v2/cost/custom_costs/{file_id}'].delete
$.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].get
$.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].delete
$.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].patch
$.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].get
$.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].put
$.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].delete
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Datadog Custom API
version: 1.0.0
extends: openapi/datadog-custom-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 13
- target: $.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].get
update:
x-apievangelist-phrasing:
intent: Get a custom compliance framework
effect: read
questions:
- Can I fetch one version of a custom compliance framework?
- What requirements are in a custom framework I created?
instructions:
- text: Get custom framework {handle} version {version}.
slots:
handle: path.handle
version: path.version
- text: Show the controls in framework {handle} at version {version}.
slots:
handle: path.handle
version: path.version
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].put
update:
x-apievangelist-phrasing:
intent: Update a custom compliance framework
effect: write
questions:
- Can I change the requirements in an existing custom framework?
- Do I update a framework per version?
instructions:
- text: Update custom framework {handle} version {version} with {framework}.
slots:
handle: path.handle
version: path.version
framework: requestBody.data
- text: Replace the definition of framework {handle} v{version}.
slots:
handle: path.handle
version: path.version
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cloud_security_management/custom_frameworks/{handle}/{version}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a custom compliance framework
effect: destructive
questions:
- Can I remove a custom framework I no longer use?
- Is a custom framework deleted per version?
instructions:
- text: Delete custom framework {handle} version {version}.
slots:
handle: path.handle
version: path.version
- text: Remove framework {handle} at version {version}.
slots:
handle: path.handle
version: path.version
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cost/custom_costs'].get
update:
x-apievangelist-phrasing:
intent: List Custom Costs files
effect: read
questions:
- Which Custom Costs files have been uploaded to Cloud Cost Management?
- Can I see all the custom cost data files we've added?
instructions:
- text: List our Custom Costs files.
- text: Show every uploaded custom costs file.
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cost/custom_costs'].put
update:
x-apievangelist-phrasing:
intent: Upload a Custom Costs file
effect: write
questions:
- Can I bring costs from a vendor without a native integration into Cloud Cost Management?
- Where do I upload a custom costs file?
instructions:
- text: Upload a Custom Costs file.
- text: Send our latest custom cost data file to Cloud Cost Management.
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cost/custom_costs/{file_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a Custom Costs file
effect: read
questions:
- Can I fetch one Custom Costs file to check what was uploaded?
- What's in a specific custom costs file?
instructions:
- text: Get Custom Costs file {file_id}.
slots:
file_id: path.file_id
- text: Show the contents of custom costs file {file_id}.
slots:
file_id: path.file_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/cost/custom_costs/{file_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a Custom Costs file
effect: destructive
questions:
- Can I remove a custom costs file that was uploaded by mistake?
- What happens when I delete an uploaded custom costs file?
instructions:
- text: Delete Custom Costs file {file_id}.
slots:
file_id: path.file_id
- text: Remove the uploaded custom costs file {file_id}.
slots:
file_id: path.file_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a custom log destination
effect: read
questions:
- Can I look up how one custom log destination is configured?
- Where are my logs being forwarded for a given custom destination?
instructions:
- text: Get custom log destination {custom_destination_id}.
slots:
custom_destination_id: path.custom_destination_id
- text: Show the config of log forwarding destination {custom_destination_id}.
slots:
custom_destination_id: path.custom_destination_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a custom log destination
effect: destructive
questions:
- Can I stop forwarding logs to a custom destination by deleting it?
- Is deleting a custom log destination permanent?
instructions:
- text: Delete custom log destination {custom_destination_id}.
slots:
custom_destination_id: path.custom_destination_id
- text: Remove the log forwarding destination {custom_destination_id}.
slots:
custom_destination_id: path.custom_destination_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/logs/config/custom-destinations/{custom_destination_id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a custom log destination
effect: write
questions:
- Can I change only some fields of a custom log destination?
- Can I edit the query that decides which logs go to a custom destination?
instructions:
- text: Update custom log destination {custom_destination_id} with {destination}.
slots:
custom_destination_id: path.custom_destination_id
destination: requestBody.data
- text: Edit the forwarding settings of destination {custom_destination_id}.
slots:
custom_destination_id: path.custom_destination_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].get
update:
x-apievangelist-phrasing:
intent: Get a WAF custom rule
effect: read
questions:
- Can I look up one WAF custom rule by its ID?
- What conditions does an existing WAF custom rule match on?
instructions:
- text: Get WAF custom rule {custom_rule_id}.
slots:
custom_rule_id: path.custom_rule_id
- text: Show the definition of WAF custom rule {custom_rule_id}.
slots:
custom_rule_id: path.custom_rule_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].put
update:
x-apievangelist-phrasing:
intent: Update a WAF custom rule
effect: write
questions:
- Can I change the action or conditions of an existing WAF custom rule?
- Does updating a WAF custom rule return the updated rule?
instructions:
- text: Update WAF custom rule {custom_rule_id} with {rule}.
slots:
custom_rule_id: path.custom_rule_id
rule: requestBody.data
- text: Change the settings of WAF custom rule {custom_rule_id}.
slots:
custom_rule_id: path.custom_rule_id
method: generated
generated: '2026-10-01'
- target: $.paths['/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a WAF custom rule
effect: destructive
questions:
- Can I remove a WAF custom rule that's blocking legitimate traffic?
- Is a deleted WAF custom rule recoverable?
instructions:
- text: Delete WAF custom rule {custom_rule_id}.
slots:
custom_rule_id: path.custom_rule_id
- text: Remove the custom WAF rule {custom_rule_id}.
slots:
custom_rule_id: path.custom_rule_id
method: generated
generated: '2026-10-01'
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/datadog-custom-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.