Elastic Stack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Kibana Synthetics API

19 actions 19 updates phrasing extends openapi/elk-stack-synthetics-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Elastic Stack's API. It is a proposal applied on top of the contract, not a document Elastic Stack publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 19 · first 16 shown; the file carries all of them

$.info
$.paths['/api/synthetics/monitor/test/{monitorId}'].post
$.paths['/api/synthetics/monitors'].get
$.paths['/api/synthetics/monitors'].post
$.paths['/api/synthetics/monitors/_bulk_delete'].post
$.paths['/api/synthetics/monitors/{id}'].get
$.paths['/api/synthetics/monitors/{id}'].put
$.paths['/api/synthetics/monitors/{id}'].delete
$.paths['/api/synthetics/params'].get
$.paths['/api/synthetics/params'].post
$.paths['/api/synthetics/params/_bulk_delete'].post
$.paths['/api/synthetics/params/{id}'].get
$.paths['/api/synthetics/params/{id}'].put
$.paths['/api/synthetics/params/{id}'].delete
$.paths['/api/synthetics/private_locations'].get
$.paths['/api/synthetics/private_locations'].post

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 Kibana Synthetics API
  version: 1.0.0
extends: openapi/elk-stack-synthetics-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 18
- target: $.paths['/api/synthetics/monitor/test/{monitorId}'].post
  update:
    x-apievangelist-phrasing:
      intent: Run an on-demand test of a monitor
      effect: write
      questions:
      - Can I trigger a synthetic monitor to run right now instead of waiting for its schedule?
      - How do I get a test run ID back after kicking off an immediate monitor check?
      instructions:
      - text: Run an on-demand test of monitor {monitorId}.
        slots:
          monitorId: path.monitorId
      - text: Trigger an immediate check for synthetic monitor {monitorId} now.
        slots:
          monitorId: path.monitorId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors'].get
  update:
    x-apievangelist-phrasing:
      intent: List synthetic monitors
      effect: read
      questions:
      - Which uptime and synthetic monitors do I have configured?
      - Can I filter my monitors by location, type or tag?
      - How do I find only the monitors that are currently down?
      instructions:
      - text: List my synthetic monitors of type {monitorTypes}.
        slots:
          monitorTypes: query.monitorTypes
      - text: Show monitors tagged {tags} running from {locations}.
        slots:
          tags: query.tags
          locations: query.locations
      - text: Find monitors with status {status}.
        slots:
          status: query.status
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a synthetic monitor
      effect: write
      questions:
      - How do I set up a new HTTP uptime check for my site?
      - Can I create browser, TCP or ICMP monitors through the Synthetics API?
      instructions:
      - text: Create a new HTTP monitor for my homepage.
      - text: Add a browser synthetic monitor with the attributes I give you.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors/_bulk_delete'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete several monitors at once
      effect: destructive
      questions:
      - How do I remove a batch of synthetic monitors in one request?
      - Can I bulk delete monitors by their config IDs?
      instructions:
      - text: Bulk delete monitors {ids}.
        slots:
          ids: requestBody.ids
      - text: 'Remove all of these synthetic monitor configs: {ids}.'
        slots:
          ids: requestBody.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a synthetic monitor
      effect: read
      questions:
      - How do I view the full configuration of a single monitor?
      - What schedule and locations is one particular monitor using?
      instructions:
      - text: Get synthetic monitor {id}.
        slots:
          id: path.id
      - text: Show the settings for monitor {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a synthetic monitor
      effect: write
      questions:
      - Can I change just one field of a monitor, like its schedule, without resending everything?
      - How do I edit an existing synthetic monitor's attributes?
      instructions:
      - text: Update monitor {id} with the new attributes.
        slots:
          id: path.id
      - text: Partially edit synthetic monitor {id}, changing only the fields I list.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/monitors/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a synthetic monitor
      effect: destructive
      questions:
      - How do I remove a single monitor from the Synthetics app?
      - What privileges do I need to delete one monitor?
      instructions:
      - text: Delete synthetic monitor {id}.
        slots:
          id: path.id
      - text: Remove monitor {id} from Synthetics.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params'].get
  update:
    x-apievangelist-phrasing:
      intent: List Synthetics parameters
      effect: read
      questions:
      - What global parameters are defined for my synthetic monitors?
      - Where do I see all the reusable Synthetics params in this space?
      instructions:
      - text: List all Synthetics parameters.
      - text: Show every global param my monitors can reference.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params'].post
  update:
    x-apievangelist-phrasing:
      intent: Add Synthetics parameters
      effect: write
      questions:
      - How do I add reusable variables that my synthetic monitors can reference?
      - Can I create several Synthetics parameters in one request?
      instructions:
      - text: Add a new Synthetics parameter for my monitors.
      - text: Create these global params in the Synthetics app.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params/_bulk_delete'].post
  update:
    x-apievangelist-phrasing:
      intent: Delete several Synthetics parameters
      effect: destructive
      questions:
      - Can I delete multiple Synthetics parameters at once?
      - How do I bulk remove params my monitors no longer use?
      instructions:
      - text: Bulk delete Synthetics parameters {ids}.
        slots:
          ids: requestBody.ids
      - text: Remove the params with IDs {ids}.
        slots:
          ids: requestBody.ids
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a Synthetics parameter
      effect: read
      questions:
      - How do I look up a single Synthetics parameter by ID?
      - What's the key and value of one specific monitor param?
      instructions:
      - text: Get Synthetics parameter {id}.
        slots:
          id: path.id
      - text: Show the details of param {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Update a Synthetics parameter
      effect: write
      questions:
      - How do I change the value of a Synthetics parameter?
      - Can I rename a param's key or retag it?
      instructions:
      - text: Set the value of Synthetics parameter {id} to {value}.
        slots:
          id: path.id
          value: requestBody.value
      - text: Update param {id} with key {key} and tags {tags}.
        slots:
          id: path.id
          key: requestBody.key
          tags: requestBody.tags
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/params/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a Synthetics parameter
      effect: destructive
      questions:
      - How do I delete a single Synthetics parameter?
      - Can I remove one param from the Synthetics app by ID?
      instructions:
      - text: Delete Synthetics parameter {id}.
        slots:
          id: path.id
      - text: Remove param {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/private_locations'].get
  update:
    x-apievangelist-phrasing:
      intent: List private locations
      effect: read
      questions:
      - Which private locations can I run synthetic monitors from?
      - What self-hosted monitoring locations are set up?
      instructions:
      - text: List my private locations.
      - text: Show all self-hosted Synthetics locations.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/private_locations'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a private location
      effect: write
      questions:
      - How do I run monitors from inside my own network using a private location?
      - Which agent policy does a new private location need?
      instructions:
      - text: Create private location {label} using agent policy {agentPolicyId}.
        slots:
          label: requestBody.label
          agentPolicyId: requestBody.agentPolicyId
      - text: Add private location {label} on policy {agentPolicyId} at coordinates {geo}.
        slots:
          label: requestBody.label
          agentPolicyId: requestBody.agentPolicyId
          geo: requestBody.geo
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/private_locations/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a private location
      effect: read
      questions:
      - How do I see the details of one private location?
      - Which agent policy backs a specific private location?
      instructions:
      - text: Get private location {id}.
        slots:
          id: path.id
      - text: Show the configuration of private location {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/private_locations/{id}'].put
  update:
    x-apievangelist-phrasing:
      intent: Rename a private location
      effect: write
      questions:
      - Can I change the label of an existing private location?
      - What can I update on a private location after it's created?
      instructions:
      - text: Rename private location {id} to {label}.
        slots:
          id: path.id
          label: requestBody.label
      - text: Set the label of location {id} to {label}.
        slots:
          id: path.id
          label: requestBody.label
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/synthetics/private_locations/{id}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a private location
      effect: destructive
      questions:
      - How do I remove a private location I no longer run monitors from?
      - Can I delete a self-hosted Synthetics location?
      instructions:
      - text: Delete private location {id}.
        slots:
          id: path.id
      - text: Remove the self-hosted location {id}.
        slots:
          id: path.id
      method: generated
      generated: '2026-09-26'