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

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

Raw ↑
# 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.
All 92 tools →

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.