Canvas · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Canvas LMS REST Outcome Imports API

7 actions 7 updates phrasing extends openapi/canvas-outcome-imports-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Canvas's API. It is a proposal applied on top of the contract, not a document Canvas publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 7

$.info
$.paths['/v1/accounts/{account_id}/outcome_imports'].post
$.paths['/v1/courses/{course_id}/outcome_imports'].post
$.paths['/v1/accounts/{account_id}/outcome_imports/{id}'].get
$.paths['/v1/courses/{course_id}/outcome_imports/{id}'].get
$.paths['/v1/accounts/{account_id}/outcome_imports/{id}/created_group_ids'].get
$.paths['/v1/courses/{course_id}/outcome_imports/{id}/created_group_ids'].get

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 Canvas LMS REST Outcome Imports API
  version: 1.0.0
extends: openapi/canvas-outcome-imports-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: 6
- target: $.paths['/v1/accounts/{account_id}/outcome_imports'].post
  update:
    x-apievangelist-phrasing:
      intent: Import outcomes into an account
      effect: write
      questions:
      - How do I bulk-import learning outcomes into an account from a CSV?
      - What file format does an account-level outcomes import expect?
      instructions:
      - text: Import outcomes from {attachment} into account {account_id}.
        slots:
          attachment: requestBody.attachment
          account_id: path.account_id
      - text: Upload an outcomes CSV to account {account_id}.
        slots:
          account_id: path.account_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/courses/{course_id}/outcome_imports'].post
  update:
    x-apievangelist-phrasing:
      intent: Import outcomes into a course
      effect: write
      questions:
      - How do I import learning outcomes into a single course from a CSV?
      - Can a teacher load outcomes into just their own course?
      instructions:
      - text: Import outcomes from {attachment} into course {course_id}.
        slots:
          attachment: requestBody.attachment
          course_id: path.course_id
      - text: Upload an outcomes CSV to course {course_id}.
        slots:
          course_id: path.course_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/accounts/{account_id}/outcome_imports/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check an account outcome import's status
      effect: read
      questions:
      - Has my account-level outcomes import finished?
      - Can I check the latest outcome import for an account without knowing its ID?
      instructions:
      - text: Get the status of outcome import {id} in account {account_id}.
        slots:
          id: path.id
          account_id: path.account_id
      - text: Check the latest outcome import in account {account_id}.
        slots:
          account_id: path.account_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/courses/{course_id}/outcome_imports/{id}'].get
  update:
    x-apievangelist-phrasing:
      intent: Check a course outcome import's status
      effect: read
      questions:
      - Has the outcomes import into my course finished or failed?
      - How do I see the most recent outcome import for a course?
      instructions:
      - text: Get the status of outcome import {id} in course {course_id}.
        slots:
          id: path.id
          course_id: path.course_id
      - text: Check the latest outcome import in course {course_id}.
        slots:
          course_id: path.course_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/accounts/{account_id}/outcome_imports/{id}/created_group_ids'].get
  update:
    x-apievangelist-phrasing:
      intent: List outcome groups an account import created
      effect: read
      questions:
      - Which outcome groups were created by an account's outcome import?
      - How do I get the group IDs from a successful account outcomes import?
      instructions:
      - text: List the outcome group IDs created by import {id} in account {account_id}.
        slots:
          id: path.id
          account_id: path.account_id
      - text: Show which outcome groups the latest import created in account {account_id}.
        slots:
          account_id: path.account_id
      method: generated
      generated: '2026-10-01'
- target: $.paths['/v1/courses/{course_id}/outcome_imports/{id}/created_group_ids'].get
  update:
    x-apievangelist-phrasing:
      intent: List outcome groups a course import created
      effect: read
      questions:
      - Which outcome groups did my course's outcome import create?
      - Can I get the new group IDs after importing outcomes into a course?
      instructions:
      - text: List the outcome group IDs created by import {id} in course {course_id}.
        slots:
          id: path.id
          course_id: path.course_id
      - text: Show which outcome groups the latest import created in course {course_id}.
        slots:
          course_id: path.course_id
      method: generated
      generated: '2026-10-01'