Microsoft Azure · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Microsoft Azure Custom Speech Web Hooks: API
10 actions
10 updates
phrasing
extends
openapi/microsoft-azure-custom-speech-web-hooks-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Microsoft Azure's API. It is a proposal applied on top of the contract, not a document Microsoft Azure publishes.
What the actions change
x-apievangelist-phrasing
Targets 10
$.info
$.paths['/webhooks'].get
$.paths['/webhooks'].post
$.paths['/webhooks/{id}'].get
$.paths['/webhooks/{id}'].delete
$.paths['/webhooks/{id}'].patch
$.paths['/webhooks/{id}/ping'].post
$.paths['/webhooks/{id}/test'].post
$.paths['/webhooks/{id}:ping'].post
$.paths['/webhooks/{id}:test'].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 Microsoft Azure Custom Speech Web Hooks: API'
version: 1.0.0
extends: openapi/microsoft-azure-custom-speech-web-hooks-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: 9
- target: $.paths['/webhooks'].get
update:
x-apievangelist-phrasing:
intent: List speech web hooks
effect: read
questions:
- Which web hooks are registered for my Custom Speech subscription?
- Can I page through my speech web hooks a few at a time?
instructions:
- text: List all web hooks on my speech subscription.
- text: Show {top} web hooks after skipping the first {skip}.
slots:
top: query.top
skip: query.skip
method: generated
generated: '2026-09-26'
- target: $.paths['/webhooks'].post
update:
x-apievangelist-phrasing:
intent: Register a speech web hook
effect: write
questions:
- How do I get a callback when my speech transcription or training finishes?
- Can I sign web hook callbacks with a secret so I can verify the X-MicrosoftSpeechServices-Signature header?
instructions:
- text: Register web hook {name} that calls {url} for events {events}.
slots:
name: requestBody.displayName
url: requestBody.webUrl
events: requestBody.events
- text: Create a speech web hook posting to {url} named {name}, described as {description}, for {events}.
slots:
url: requestBody.webUrl
name: requestBody.displayName
description: requestBody.description
events: requestBody.events
method: generated
generated: '2026-10-01'
- target: $.paths['/webhooks/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a speech web hook
effect: read
questions:
- What URL and events is one of my speech web hooks configured with?
- Can I look up a single Custom Speech web hook by its id?
instructions:
- text: Get speech web hook {id}.
slots:
id: path.id
- text: Show the callback URL and subscribed events of web hook {id}.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/webhooks/{id}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a speech web hook
effect: destructive
questions:
- How do I stop speech service callbacks by removing a web hook?
- Can I delete a Custom Speech web hook I no longer use?
instructions:
- text: Delete speech web hook {id}.
slots:
id: path.id
- text: Unregister web hook {id} so it gets no more callbacks.
slots:
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/webhooks/{id}'].patch
update:
x-apievangelist-phrasing:
intent: Update a speech web hook
effect: write
questions:
- Can I change the callback URL or events of an existing speech web hook?
- What happens to callback signatures if I clear the secret on a web hook?
instructions:
- text: Point speech web hook {id} at new URL {url}.
slots:
id: path.id
url: requestBody.webUrl
- text: Rename web hook {id} to {name} and subscribe it to {events}.
slots:
id: path.id
name: requestBody.displayName
events: requestBody.events
method: generated
generated: '2026-10-01'
- target: $.paths['/webhooks/{id}/ping'].post
update:
x-apievangelist-phrasing:
intent: Ping a web hook via the /ping path
effect: write
questions:
- Is there a /ping path I can POST to so my registered web hook URL gets a ping event?
- Does the /ping route send the hook's own definition as the payload?
instructions:
- text: Ping web hook {hook} using the /ping path.
slots:
hook: path.id
- text: POST to the /ping route of web hook {hook} to confirm its URL responds.
slots:
hook: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/webhooks/{id}/test'].post
update:
x-apievangelist-phrasing:
intent: Test a web hook via the /test path
effect: write
questions:
- Can I use the /test path to replay each registered event type to my hook URL?
- Why would the /test route return 204 instead of 200?
instructions:
- text: Send test events to web hook {hook} using the /test path.
slots:
hook: path.id
- text: Fire the /test route on web hook {hook} for every event type it listens to.
slots:
hook: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/webhooks/{id}:ping'].post
update:
x-apievangelist-phrasing:
intent: Ping a web hook via the :ping action
effect: write
questions:
- Is there a :ping action that sends a ping event to my web hook URL?
- What signature header comes with a :ping request if the hook has a secret?
instructions:
- text: Ping web hook {hook} with the :ping action.
slots:
hook: path.id
- text: Call the colon-style :ping action on hook {hook} to check delivery.
slots:
hook: path.id
method: generated
generated: '2026-09-26'
- target: $.paths['/webhooks/{id}:test'].post
update:
x-apievangelist-phrasing:
intent: Test a web hook via the :test action
effect: write
questions:
- Can the :test action send a sample request for each of my hook's event types?
- Where does the :test action get its payload when it replays events?
instructions:
- text: Test web hook {hook} with the :test action.
slots:
hook: path.id
- text: Run the colon-style :test action on hook {hook} for all registered events.
slots:
hook: path.id
method: generated
generated: '2026-09-26'
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/microsoft-azure-custom-speech-web-hooks-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.