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.
View Overlay File View on GitHub Overlay Specification

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

Raw ↑
# 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'