Context.dev · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Context Monitors API
14 actions
14 updates
phrasing
extends
openapi/contextdev-monitors-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Context.dev's API. It is a proposal applied on top of the contract, not a document Context.dev publishes.
What the actions change
x-apievangelist-phrasing
Targets 14
$.info
$.paths['/monitors'].get
$.paths['/monitors'].post
$.paths['/monitors/{monitor_id}'].get
$.paths['/monitors/{monitor_id}'].delete
$.paths['/monitors/{monitor_id}'].patch
$.paths['/monitors/{monitor_id}/runs'].get
$.paths['/monitors/{monitor_id}/changes'].get
$.paths['/monitors/runs'].get
$.paths['/monitors/credit-usage'].get
$.paths['/monitors/limits'].get
$.paths['/monitors/changes'].get
$.paths['/monitors/changes/{change_id}'].get
$.paths['/monitors/{monitor_id}/run'].post
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 Context Monitors API
version: 1.0.0
extends: openapi/contextdev-monitors-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['/monitors'].get
update:
x-apievangelist-phrasing:
intent: List and search my website monitors
effect: read
questions:
- How do I see all the website monitors set up on my Context.dev account?
- Can I search my monitors by name as I type, or only by exact match?
- Which of my monitors are paused versus active, and can I filter by tag?
instructions:
- text: List all of my website monitors.
- text: Search my monitors for {q}.
slots:
q: query.q
- text: Show only monitors with status {status} tagged {tag}.
slots:
status: query.status
tag: query.tag
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors'].post
update:
x-apievangelist-phrasing:
intent: Create a website change monitor
effect: write
questions:
- How do I start watching a web page for changes?
- 'What do I need to define when setting up a new monitor: target, detection method and schedule?'
- Does a newly created monitor take a baseline snapshot right away?
instructions:
- text: Create a new monitor called {name} that watches {target} on schedule {schedule}.
slots:
name: requestBody.name
target: requestBody.target
schedule: requestBody.schedule
- text: Set up a monitor named {name} on {target} using change detection {change_detection} and notify webhook {webhook}.
slots:
name: requestBody.name
target: requestBody.target
change_detection: requestBody.change_detection
webhook: requestBody.webhook
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}'].get
update:
x-apievangelist-phrasing:
intent: Get the details of one monitor
effect: read
questions:
- Where can I see the full configuration of a single monitor?
- What schedule and target is one particular monitor currently using?
instructions:
- text: Show me the details of monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
- text: Fetch the configuration for monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a monitor
effect: destructive
questions:
- How do I permanently remove a monitor I no longer need?
- Can I delete a website monitor instead of just pausing it?
instructions:
- text: Delete monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
- text: Remove monitor {monitor_id} from my account for good.
slots:
monitor_id: path.monitor_id
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}'].patch
update:
x-apievangelist-phrasing:
intent: Update an existing monitor's settings
effect: write
questions:
- Can I pause an existing monitor or rename it without recreating it?
- Does changing the target of an existing monitor reset its baseline?
- Is it possible to change how often an existing monitor checks the page?
instructions:
- text: Rename monitor {monitor_id} to {name}.
slots:
monitor_id: path.monitor_id
name: requestBody.name
- text: Set the status of existing monitor {monitor_id} to {status}.
slots:
monitor_id: path.monitor_id
status: requestBody.status
- text: Change the schedule of existing monitor {monitor_id} to {schedule}.
slots:
monitor_id: path.monitor_id
schedule: requestBody.schedule
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}/runs'].get
update:
x-apievangelist-phrasing:
intent: List the run history of one monitor
effect: read
questions:
- When did a specific monitor last run, and did it succeed?
- Can I see only the failed runs for one monitor?
instructions:
- text: Show the run history for monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
- text: List runs of monitor {monitor_id} with status {status}.
slots:
monitor_id: path.monitor_id
status: query.status
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}/changes'].get
update:
x-apievangelist-phrasing:
intent: List changes detected by one monitor
effect: read
questions:
- What changes has a particular monitor picked up on its page?
- Can I see the changes one monitor detected within a date range?
instructions:
- text: Show the changes detected by monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
- text: List changes from monitor {monitor_id} between {since} and {until}.
slots:
monitor_id: path.monitor_id
since: query.since
until: query.until
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/runs'].get
update:
x-apievangelist-phrasing:
intent: List monitor runs across my whole account
effect: read
questions:
- Is there one feed of runs across every monitor on my account?
- Which monitor runs failed anywhere in my account recently?
instructions:
- text: Show the latest runs across all my monitors.
- text: List account-wide monitor runs with status {status}.
slots:
status: query.status
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/credit-usage'].get
update:
x-apievangelist-phrasing:
intent: See credits spent per monitor
effect: read
questions:
- Which of my monitors are using the most credits?
- How many credits did each monitor consume over a given period?
instructions:
- text: Break down my credit spend by monitor.
- text: Show credits charged per monitor from {since} to {until}.
slots:
since: query.since
until: query.until
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/limits'].get
update:
x-apievangelist-phrasing:
intent: Check my monitor count against the plan limit
effect: read
questions:
- How many monitors am I allowed to have on my plan?
- Am I close to the maximum number of monitors my account allows?
instructions:
- text: Check how many monitors I have and my maximum allowed.
- text: Tell me how much monitor capacity I have left.
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/changes'].get
update:
x-apievangelist-phrasing:
intent: List detected changes across all monitors
effect: read
questions:
- How do I get one feed of every change detected across all my monitors?
- Can I filter the account-wide change feed by tag or detection type?
- What changed on any of the sites I watch since yesterday?
instructions:
- text: Show all changes detected across my monitors since {since}.
slots:
since: query.since
- text: List account-wide changes tagged {tag}.
slots:
tag: query.tag
- text: Show changes across all monitors with change detection type {change_detection_type}.
slots:
change_detection_type: query.change_detection_type
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/changes/{change_id}'].get
update:
x-apievangelist-phrasing:
intent: Get the details of one detected change
effect: read
questions:
- Where can I see exactly what was different in a single detected change?
- Can I look up one change record by its ID?
instructions:
- text: Show me the details of change {change_id}.
slots:
change_id: path.change_id
- text: Open detected change {change_id}.
slots:
change_id: path.change_id
method: generated
generated: '2026-10-01'
- target: $.paths['/monitors/{monitor_id}/run'].post
update:
x-apievangelist-phrasing:
intent: Trigger a monitor run immediately
effect: write
questions:
- Can I force a monitor to check its page right now instead of waiting for its schedule?
- Is an on-demand monitor run processed instantly or queued?
instructions:
- text: Run monitor {monitor_id} now.
slots:
monitor_id: path.monitor_id
- text: Trigger an immediate off-schedule check for monitor {monitor_id}.
slots:
monitor_id: path.monitor_id
method: generated
generated: '2026-10-01'