# 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 Project API version: 1.0.0 extends: openapi/microsoft-azure-project-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: 20 - target: $.paths['/projects'].get update: x-apievangelist-phrasing: intent: List my Custom Vision projects effect: read questions: - What Custom Vision projects do I have in my training resource? - Can I see all of my image classification and object detection projects? instructions: - text: List all my Custom Vision projects. - text: Show every project in my Custom Vision training resource. method: generated generated: '2026-10-01' - target: $.paths['/projects'].post update: x-apievangelist-phrasing: intent: Create a Custom Vision project effect: write questions: - How do I start a new Custom Vision project? - Can I choose a domain and classification type when creating a project? - Which export platforms can I target when setting up a new project? instructions: - text: Create a Custom Vision project named {name}. slots: name: query.name - text: Create project {name} on domain {domainId} with classification type {classificationType}. slots: name: query.name domainId: query.domainId classificationType: query.classificationType - text: Start Custom Vision project {name} described as {description} for export platforms {platforms}. slots: name: query.name description: query.description platforms: query.targetExportPlatforms method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}'].get update: x-apievangelist-phrasing: intent: Get a Custom Vision project's details effect: read questions: - What are the settings of one specific Custom Vision project? - Can I look up a single project by its ID? instructions: - text: Get details for Custom Vision project {projectId}. slots: projectId: path.projectId - text: Show the settings and status of project {projectId}. slots: projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}'].delete update: x-apievangelist-phrasing: intent: Delete a Custom Vision project effect: destructive questions: - Can I permanently remove a Custom Vision project I no longer need? - What's the way to delete a whole project along with its iterations? instructions: - text: Delete Custom Vision project {projectId}. slots: projectId: path.projectId - text: Permanently remove project {projectId}. slots: projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}'].patch update: x-apievangelist-phrasing: intent: Rename or update a Custom Vision project effect: write questions: - Can I rename an existing Custom Vision project? - How do I change a project's description or settings after creating it? instructions: - text: Rename project {projectId} to {name}. slots: projectId: path.projectId name: requestBody.name - text: Update the description of project {projectId} to {description}. slots: projectId: path.projectId description: requestBody.description method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/artifacts'].get update: x-apievangelist-phrasing: intent: Download a project artifact from blob storage effect: read questions: - How do I download an artifact file that a project stored in blob storage? - Can I fetch a project artifact by its relative blob path? instructions: - text: Get the artifact at {path} for project {projectId}. slots: path: query.path projectId: path.projectId - text: Download artifact content {path} from project {projectId}'s blob storage. slots: path: query.path projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/export'].get update: x-apievangelist-phrasing: intent: Export a whole Custom Vision project effect: read questions: - Can I export an entire project so it can be imported into another resource? - Is there a way to package up a Custom Vision project for migration? instructions: - text: Export the entire project {projectId}. slots: projectId: path.projectId - text: Create a migration export of project {projectId}. slots: projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations'].get update: x-apievangelist-phrasing: intent: List a project's training iterations effect: read questions: - What training iterations exist for my project? - Can I see every model iteration trained in a project? instructions: - text: List the iterations of project {projectId}. slots: projectId: path.projectId - text: Show all trained iterations for project {projectId}. slots: projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}'].get update: x-apievangelist-phrasing: intent: Get one training iteration effect: read questions: - What's the status of one specific training iteration? - When was a particular iteration trained and is it exportable? instructions: - text: Get iteration {iterationId} of project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Show details for iteration {iterationId} in project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}'].delete update: x-apievangelist-phrasing: intent: Delete a training iteration effect: destructive questions: - Can I delete an old iteration from a project? - How do I clean up a training iteration I don't need anymore? instructions: - text: Delete iteration {iterationId} from project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Remove training iteration {iterationId} of project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}'].patch update: x-apievangelist-phrasing: intent: Rename a training iteration effect: write questions: - Can I rename a training iteration after it has been trained? - Is it possible to change the name shown for an iteration? instructions: - text: Rename iteration {iterationId} in project {projectId} to {name}. slots: iterationId: path.iterationId projectId: path.projectId name: requestBody.name - text: Give iteration {iterationId} of project {projectId} the new name {name}. slots: iterationId: path.iterationId projectId: path.projectId name: requestBody.name method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/export'].get update: x-apievangelist-phrasing: intent: List exports created for an iteration effect: read questions: - Which exports have already been created for an iteration? - Can I check whether an iteration's export is finished? instructions: - text: List the exports of iteration {iterationId} in project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Show existing export jobs for iteration {iterationId} of project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/export'].post update: x-apievangelist-phrasing: intent: Export a trained iteration for a platform effect: write questions: - How do I export a trained model to run on a device platform? - Can I pick an export flavor when exporting an iteration? instructions: - text: Export iteration {iterationId} of project {projectId} for platform {platform}. slots: iterationId: path.iterationId projectId: path.projectId platform: query.platform - text: Export iteration {iterationId} of project {projectId} to {platform} with flavor {flavor}. slots: iterationId: path.iterationId projectId: path.projectId platform: query.platform flavor: query.flavor method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/performance'].get update: x-apievangelist-phrasing: intent: Get an iteration's performance metrics effect: read questions: - What performance metrics does a trained iteration report? - Can I evaluate an iteration's performance at a specific probability threshold? instructions: - text: Get performance for iteration {iterationId} in project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Show performance of iteration {iterationId} of project {projectId} at threshold {threshold}. slots: iterationId: path.iterationId projectId: path.projectId threshold: query.threshold method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/performance/images'].get update: x-apievangelist-phrasing: intent: List images with an iteration's predictions effect: read questions: - Can I see the images and their predictions for a trained iteration? - Which images tagged Dog or Cat did an iteration predict on, 50 at a time? instructions: - text: List image predictions for iteration {iterationId} in project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Show {take} predicted images for iteration {iterationId} of project {projectId} with tags {tagIds}. slots: take: query.take iterationId: path.iterationId projectId: path.projectId tagIds: query.tagIds method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/performance/images/count'].get update: x-apievangelist-phrasing: intent: Count images with predictions for an iteration effect: read questions: - How many images have prediction results for an iteration? - Can I count an iteration's predicted images for specific tags only? instructions: - text: Count the predicted images for iteration {iterationId} of project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Count images tagged {tagIds} with predictions in iteration {iterationId} of project {projectId}. slots: tagIds: query.tagIds iterationId: path.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/publish'].post update: x-apievangelist-phrasing: intent: Publish an iteration to a prediction resource effect: write questions: - How do I publish a trained iteration so it can serve predictions? - Can I overwrite an existing publish name when publishing an iteration? instructions: - text: Publish iteration {iterationId} of project {projectId} as {publishName} to prediction resource {predictionId}. slots: iterationId: path.iterationId projectId: path.projectId publishName: query.publishName predictionId: query.predictionId - text: Republish iteration {iterationId} in project {projectId} as {publishName} on {predictionId}, overwriting it. slots: iterationId: path.iterationId projectId: path.projectId publishName: query.publishName predictionId: query.predictionId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/iterations/{iterationId}/publish'].delete update: x-apievangelist-phrasing: intent: Unpublish an iteration effect: destructive questions: - How do I take a published iteration offline? - Can I unpublish a model so the prediction endpoint stops serving it? instructions: - text: Unpublish iteration {iterationId} of project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId - text: Stop publishing iteration {iterationId} in project {projectId}. slots: iterationId: path.iterationId projectId: path.projectId method: generated generated: '2026-10-01' - target: $.paths['/projects/{projectId}/train'].post update: x-apievangelist-phrasing: intent: Queue a project for training effect: write questions: - How do I kick off training for a Custom Vision project? - Can I get an email when project training finishes? - Is it possible to set a budget in hours for advanced training? instructions: - text: Train project {projectId}. slots: projectId: path.projectId - text: Queue project {projectId} for {trainingType} training with a {reservedBudgetInHours}-hour budget. slots: projectId: path.projectId trainingType: query.trainingType reservedBudgetInHours: query.reservedBudgetInHours - text: Train project {projectId} and email {notificationEmailAddress} when it's done. slots: projectId: path.projectId notificationEmailAddress: query.notificationEmailAddress method: generated generated: '2026-10-01' - target: $.paths['/projects/import'].post update: x-apievangelist-phrasing: intent: Import a project from an export token effect: write questions: - Can I import a project using an export token? - What do I need to bring an exported project into this resource? instructions: - text: Import a project from token {token}. slots: token: query.token - text: Import the project from export token {token} and name it {name}. slots: token: query.token name: query.name method: generated generated: '2026-10-01'