Microsoft Azure · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Microsoft Azure Face Client Persongroups API
17 actions
17 updates
phrasing
extends
openapi/microsoft-azure-person-groups-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 17 · first 16 shown; the file carries all of them
$.info
$.paths['/persongroups/{personGroupId}/persons'].get
$.paths['/persongroups/{personGroupId}/persons'].post
$.paths['/persongroups/{personGroupId}/persons/{personId}'].get
$.paths['/persongroups/{personGroupId}/persons/{personId}'].delete
$.paths['/persongroups/{personGroupId}/persons/{personId}'].patch
$.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].get
$.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].delete
$.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].patch
$.paths['/persongroups/{personGroupId}'].get
$.paths['/persongroups/{personGroupId}'].put
$.paths['/persongroups/{personGroupId}'].delete
$.paths['/persongroups/{personGroupId}'].patch
$.paths['/persongroups/{personGroupId}/training'].get
$.paths['/persongroups'].get
$.paths['/persongroups/{personGroupId}/train'].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 Face Client Persongroups API
version: 1.0.0
extends: openapi/microsoft-azure-person-groups-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: 16
- target: $.paths['/persongroups/{personGroupId}/persons'].get
update:
x-apievangelist-phrasing:
intent: List the people in a person group
effect: read
questions:
- Who is enrolled in a given Face person group?
- Can I page through persons in a person group starting after a certain personId?
instructions:
- text: List all persons in person group {group}.
slots:
group: path.personGroupId
- text: Show {top} persons in group {group} starting after {start}.
slots:
top: query.top
group: path.personGroupId
start: query.start
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons'].post
update:
x-apievangelist-phrasing:
intent: Add a new person to a person group
effect: write
questions:
- How do I enroll a new person in a Face person group?
- Can I attach custom userData when creating a person?
instructions:
- text: Create a person named {name} in person group {group}.
slots:
name: requestBody.name
group: path.personGroupId
- text: Add person {name} to group {group} with user data {user_data}.
slots:
name: requestBody.name
group: path.personGroupId
user_data: requestBody.userData
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}'].get
update:
x-apievangelist-phrasing:
intent: Get a person and their registered faces
effect: read
questions:
- Which faces are registered to a specific person in my person group?
- What name and userData are stored for one person?
instructions:
- text: Get person {person} from person group {group}.
slots:
person: path.personId
group: path.personGroupId
- text: Show the persisted face ids registered for person {person} in group {group}.
slots:
person: path.personId
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a person from a person group
effect: destructive
questions:
- If I delete a person from a person group, are their faces and features removed too?
- How can I remove someone from a Face person group?
instructions:
- text: Delete person {person} from person group {group}.
slots:
person: path.personId
group: path.personGroupId
- text: Remove person {person} and all their face data from group {group}.
slots:
person: path.personId
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}'].patch
update:
x-apievangelist-phrasing:
intent: Rename a person or change their userData
effect: write
questions:
- Can I rename a person already enrolled in a person group?
- What can I change on an existing person besides their faces?
instructions:
- text: Rename person {person} in group {group} to {name}.
slots:
person: path.personId
group: path.personGroupId
name: requestBody.name
- text: Set user data {user_data} on person {person} in group {group}.
slots:
user_data: requestBody.userData
person: path.personId
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].get
update:
x-apievangelist-phrasing:
intent: Get one persisted face of a person
effect: read
questions:
- What information is stored for a single persisted face of a person?
- Can I read the userData attached to one of a person's faces?
instructions:
- text: Get persisted face {face} of person {person} in group {group}.
slots:
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
- text: Show the stored details of face {face} for person {person}, group {group}.
slots:
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a face from a person
effect: destructive
questions:
- How do I remove one bad face image from a person without deleting the person?
- Are face deletions for the same person processed one at a time?
instructions:
- text: Delete face {face} from person {person} in group {group}.
slots:
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
- text: Remove persisted face {face} from person {person} (group {group}).
slots:
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces/{persistedFaceId}'].patch
update:
x-apievangelist-phrasing:
intent: Update the userData of a person's face
effect: write
questions:
- Can I change the userData on a face that is already registered to a person?
- Which field of an existing persisted face can I edit?
instructions:
- text: Set user data {user_data} on face {face} of person {person} in group {group}.
slots:
user_data: requestBody.userData
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
- text: Update the note on persisted face {face} for person {person}, group {group}, to {user_data}.
slots:
face: path.persistedFaceId
person: path.personId
group: path.personGroupId
user_data: requestBody.userData
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}'].get
update:
x-apievangelist-phrasing:
intent: Get a person group's name and settings
effect: read
questions:
- Which recognition model does my person group use?
- What name and userData are set on a person group?
instructions:
- text: Get person group {group}.
slots:
group: path.personGroupId
- text: Show person group {group} including its recognition model ({return_model}).
slots:
group: path.personGroupId
return_model: query.returnRecognitionModel
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}'].put
update:
x-apievangelist-phrasing:
intent: Create a person group
effect: write
questions:
- How do I set up a new person group for face identification?
- Can I choose the recognition model when creating a person group?
instructions:
- text: Create person group {group} named {name}.
slots:
group: path.personGroupId
name: requestBody.name
- text: Create person group {group} called {name} using recognition model {model}.
slots:
group: path.personGroupId
name: requestBody.name
model: requestBody.recognitionModel
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a person group and all its people
effect: destructive
questions:
- Does deleting a person group also delete every person's face features?
- Can I delete an entire Face person group at once?
instructions:
- text: Delete person group {group}.
slots:
group: path.personGroupId
- text: Remove person group {group} along with everyone enrolled in it.
slots:
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}'].patch
update:
x-apievangelist-phrasing:
intent: Rename a person group or change its userData
effect: write
questions:
- Can I rename an existing person group?
- If I only send userData when updating a person group, is the name kept?
instructions:
- text: Rename person group {group} to {name}.
slots:
group: path.personGroupId
name: requestBody.name
- text: Change the group-level user data of person group {group} to {user_data}.
slots:
user_data: requestBody.userData
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/training'].get
update:
x-apievangelist-phrasing:
intent: Check a person group's training status
effect: read
questions:
- Has training finished on my person group yet?
- Is my person group training still running?
instructions:
- text: Check the training status of person group {group}.
slots:
group: path.personGroupId
- text: Tell me whether training on group {group} is completed or ongoing.
slots:
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups'].get
update:
x-apievangelist-phrasing:
intent: List person groups
effect: read
questions:
- What person groups exist on my Face resource?
- Can I page through person groups in alphabetical order of their id?
instructions:
- text: List all my person groups.
- text: List {top} person groups after id {start}.
slots:
top: query.top
start: query.start
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/train'].post
update:
x-apievangelist-phrasing:
intent: Train a person group
effect: write
questions:
- How do I retrain a person group after adding new faces?
- Does queueing person group training start it right away?
instructions:
- text: Train person group {group}.
slots:
group: path.personGroupId
- text: Queue a training run for group {group} now that faces were added.
slots:
group: path.personGroupId
method: generated
generated: '2026-10-01'
- target: $.paths['/persongroups/{personGroupId}/persons/{personId}/persistedfaces'].post
update:
x-apievangelist-phrasing:
intent: Add a face image to a person
effect: write
questions:
- How do I add a new face photo to a person for identification?
- Can I pick one face from a group photo using a target rectangle?
instructions:
- text: Add a face to person {person} in group {group}.
slots:
person: path.personId
group: path.personGroupId
- text: Add the face at rectangle {target} to person {person} in group {group} using detection model {model}.
slots:
target: query.targetFace
person: path.personId
group: path.personGroupId
model: query.detectionModel
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/microsoft-azure-person-groups-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.