# 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 Image API version: 1.0.0 extends: openapi/microsoft-azure-image-api-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: 19 - target: $.paths['/projects/{projectId}/images'].get update: x-apievangelist-phrasing: intent: Browse training images in a Custom Vision project effect: read questions: - How do I page through all the training images in my Custom Vision project? - Can I filter project images by tagging status or by image metadata? - What is the most images I can pull back in one batch of project images? instructions: - text: Show me the first 50 training images in project {projectId}. slots: projectId: path.projectId - text: List {take} images from project {projectId} for iteration {iterationId}, skipping the first {skip}. slots: take: query.take projectId: path.projectId iterationId: query.iterationId skip: query.skip - text: Browse images in project {projectId} whose tagging status is {taggingStatus}. slots: projectId: path.projectId taggingStatus: query.taggingStatus method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images'].post update: x-apievangelist-phrasing: intent: Upload raw image files as training images effect: write questions: - Can I upload binary image data straight into a Custom Vision training set? - Which image formats are accepted when uploading raw image bytes for training? - What happens when only some of the image files in a multipart upload succeed? instructions: - text: Upload this raw image file {imageData} into the training set of project {projectId}. slots: imageData: requestBody.imageData projectId: path.projectId - text: Upload binary image {imageData} to project {projectId} and tag it with {tagIds}. slots: imageData: requestBody.imageData projectId: path.projectId tagIds: query.tagIds method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images'].delete update: x-apievangelist-phrasing: intent: Delete training images from a project effect: destructive questions: - How do I remove specific training images from my vision project? - Can I wipe every image out of a Custom Vision project at once? - Is there a way to remove images from all iterations and not just the current workspace? instructions: - text: Delete images {imageIds} from project {projectId}. slots: imageIds: query.imageIds projectId: path.projectId - text: Delete all training images in project {projectId}, including from every iteration. slots: projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/count'].get update: x-apievangelist-phrasing: intent: Count images in a project by tag or status effect: read questions: - How many images does my Custom Vision project hold in total? - Can I count only images matching a metadata filter or tagging status? instructions: - text: Count all images in project {projectId}. slots: projectId: path.projectId - text: Count images in project {projectId} with tagging status {taggingStatus} for iteration {iterationId}. slots: projectId: path.projectId taggingStatus: query.taggingStatus iterationId: query.iterationId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/files'].post update: x-apievangelist-phrasing: intent: Add a batch of image files with tags and metadata effect: write questions: - Can I send a batch of image file entries with tags and metadata in one JSON request? - What are the limits on images, tags and metadata pairs per file batch? instructions: - text: Add this batch of image file entries {images} to project {projectId}. slots: images: requestBody.images projectId: path.projectId - text: Add the file batch {images} to project {projectId}, tagging each with {tagIds} and attaching metadata {metadata}. slots: images: requestBody.images projectId: path.projectId tagIds: requestBody.tagIds metadata: requestBody.metadata method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/id'].get update: x-apievangelist-phrasing: intent: Fetch specific training images by their ids effect: read questions: - Can I look up particular training images when I already know their ids? - How many image ids can I request at once when fetching images by id? instructions: - text: Get images {imageIds} from project {projectId}. slots: imageIds: query.imageIds projectId: path.projectId - text: Fetch images {imageIds} as they exist in iteration {iterationId} of project {projectId}. slots: imageIds: query.imageIds iterationId: query.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/metadata'].post update: x-apievangelist-phrasing: intent: Update metadata on existing training images effect: write questions: - Can I change the key-value metadata on images already in my training set? - How many images can I update metadata for in a single request? instructions: - text: Update the metadata of images {imageIds} in project {projectId}. slots: imageIds: query.imageIds projectId: path.projectId - text: Set new metadata on training images {imageIds} in project {projectId}. slots: imageIds: query.imageIds projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/predictions'].post update: x-apievangelist-phrasing: intent: Promote predicted images into the training set effect: write questions: - Can I turn images my model already made predictions on into training images? - Which tags can I apply when adding prediction images back into training? instructions: - text: Add predicted images {images} to the training set of project {projectId}. slots: images: requestBody.images projectId: path.projectId - text: Move prediction images {images} into project {projectId} training data tagged {tagIds}. slots: images: requestBody.images projectId: path.projectId tagIds: requestBody.tagIds method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/regions'].post update: x-apievangelist-phrasing: intent: Add bounding-box regions to existing images effect: write questions: - How do I draw object detection regions on images I already uploaded? - What is the maximum number of regions I can add in one batch? instructions: - text: Add these bounding-box regions {regions} to images in project {projectId}. slots: regions: requestBody.regions projectId: path.projectId - text: Label object regions {regions} on my training images in project {projectId}. slots: regions: requestBody.regions projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/regions'].delete update: x-apievangelist-phrasing: intent: Delete bounding-box regions from images effect: destructive questions: - Can I remove incorrectly drawn regions from my object detection images? - How many image regions can be deleted in a single call? instructions: - text: Delete regions {regionIds} from project {projectId}. slots: regionIds: query.regionIds projectId: path.projectId - text: Remove the bounding boxes {regionIds} I drew in project {projectId}. slots: regionIds: query.regionIds projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/suggested'].post update: x-apievangelist-phrasing: intent: Find untagged images by suggested tags effect: read questions: - Which untagged images does my model suggest belong to a given tag? - Can I filter suggested-tag images by a confidence threshold? - How do I paginate through untagged images matched by suggested tags? instructions: - text: Find untagged images in project {projectId} whose suggested tags from iteration {iterationId} match {tagIds}. slots: projectId: path.projectId iterationId: query.iterationId tagIds: requestBody.tagIds - text: Show untagged images in project {projectId} suggested by iteration {iterationId} with confidence at least {threshold}. slots: projectId: path.projectId iterationId: query.iterationId threshold: requestBody.threshold method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/suggested/count'].post update: x-apievangelist-phrasing: intent: Count untagged images per suggested tag effect: read questions: - How many untagged images are suggested for each of my tags above a confidence level? - Can I get just a count of suggested-tag matches instead of the images themselves? instructions: - text: Count untagged images per suggested tag {tagIds} in project {projectId} using iteration {iterationId}. slots: tagIds: requestBody.tagIds projectId: path.projectId iterationId: query.iterationId - text: Tally suggested-tag matches at threshold {threshold} for project {projectId}, iteration {iterationId}. slots: threshold: requestBody.threshold projectId: path.projectId iterationId: query.iterationId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/tagged'].get update: x-apievangelist-phrasing: intent: List tagged images in a project effect: read questions: - What images in my project already have tags applied? - Can I list only images carrying the Dog or Cat tags? instructions: - text: List tagged images in project {projectId}. slots: projectId: path.projectId - text: Show tagged images in project {projectId} that carry tags {tagIds}, newest first. slots: projectId: path.projectId tagIds: query.tagIds method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/tagged/count'].get update: x-apievangelist-phrasing: intent: Count images carrying given tags effect: read questions: - How many images in my project are labeled with a particular tag? - What is the count of tagged images in a specific training iteration? instructions: - text: Count tagged images in project {projectId} that have tags {tagIds}. slots: projectId: path.projectId tagIds: query.tagIds - text: Give me the tagged image total for iteration {iterationId} of project {projectId}. slots: iterationId: query.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/tags'].post update: x-apievangelist-phrasing: intent: Apply tags to a set of images effect: write questions: - How do I label a batch of existing images with tags? - Can I attach several tags to many images in a single request? instructions: - text: Apply these image-tag pairs {tags} in project {projectId}. slots: tags: requestBody.tags projectId: path.projectId - text: Tag my existing images in project {projectId} using entries {tags}. slots: projectId: path.projectId tags: requestBody.tags method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/tags'].delete update: x-apievangelist-phrasing: intent: Remove tags from a set of images effect: destructive questions: - Can I untag images that were labeled wrong without deleting the images? - What are the limits on images and tags when removing tags in bulk? instructions: - text: Remove tags {tagIds} from images {imageIds} in project {projectId}. slots: tagIds: query.tagIds imageIds: query.imageIds projectId: path.projectId - text: Strip tag {tagIds} off images {imageIds} in project {projectId} but keep the images. slots: tagIds: query.tagIds imageIds: query.imageIds projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/untagged'].get update: x-apievangelist-phrasing: intent: List untagged images in a project effect: read questions: - Which images in my project still need a label? - Can I page through untagged images oldest first? instructions: - text: List untagged images in project {projectId}. slots: projectId: path.projectId - text: Show {take} untagged images from project {projectId} ordered by {orderBy}. slots: take: query.take projectId: path.projectId orderBy: query.orderBy method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/untagged/count'].get update: x-apievangelist-phrasing: intent: Count untagged images in a project effect: read questions: - How many images in my project have no tags yet? - What is the untagged image count for a particular iteration? instructions: - text: Count the untagged images in project {projectId}. slots: projectId: path.projectId - text: Tell me how many unlabeled images iteration {iterationId} of project {projectId} has. slots: iterationId: query.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/images/urls'].post update: x-apievangelist-phrasing: intent: Add training images from web URLs effect: write questions: - Can I add training images by pointing at their URLs instead of uploading files? - How many image URLs and tags can I send in one batch? instructions: - text: Add images from these URLs {images} to project {projectId}. slots: images: requestBody.images projectId: path.projectId - text: Import image URLs {images} into project {projectId} and tag them {tagIds}. slots: images: requestBody.images projectId: path.projectId tagIds: requestBody.tagIds method: generated generated: '2026-10-01'