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.
# 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 Discovery Pages API
version: 1.0.0
extends: openapi/canvas-discovery-pages-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: 3
- target: $.paths['/v1/discovery_pages'].get
update:
x-apievangelist-phrasing:
intent: Get the login discovery page settings
effect: read
questions:
- What sign-in buttons does our login discovery page show?
- Is the discovery page active for our root account?
instructions:
- text: Show the discovery page configuration.
- text: Get the current login discovery page buttons and labels.
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/discovery_pages'].put
update:
x-apievangelist-phrasing:
intent: Replace the login discovery page settings
effect: write
questions:
- How do I change which identity providers appear on the login discovery page?
- Does updating the discovery page replace the whole configuration?
instructions:
- text: Set the discovery page primary button to provider {primary} labeled {primary_label}, secondary {secondary} labeled {secondary_label}.
slots:
primary: requestBody.discovery_page[primary][authentication_provider_id]
primary_label: requestBody.discovery_page[primary][label]
secondary: requestBody.discovery_page[secondary][authentication_provider_id]
secondary_label: requestBody.discovery_page[secondary][label]
- text: Turn the discovery page active setting to {active}, primary {primary} as {primary_label}, secondary {secondary} as {secondary_label}.
slots:
active: requestBody.discovery_page[active]
primary: requestBody.discovery_page[primary][authentication_provider_id]
primary_label: requestBody.discovery_page[primary][label]
secondary: requestBody.discovery_page[secondary][authentication_provider_id]
secondary_label: requestBody.discovery_page[secondary][label]
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/discovery_pages/token'].post
update:
x-apievangelist-phrasing:
intent: Get a discovery page preview token
effect: write
questions:
- Can I preview a discovery page layout before saving it?
- How long is a discovery page preview token valid?
instructions:
- text: Generate a preview token for a discovery page with primary provider {primary}.
slots:
primary: requestBody.discovery_page[primary][authentication_provider_id]
- text: Create a preview JWT for primary {primary} labeled {primary_label}.
slots:
primary: requestBody.discovery_page[primary][authentication_provider_id]
primary_label: requestBody.discovery_page[primary][label]
method: generated
generated: '2026-10-01'
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
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.