# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Onesignal Templates API version: 1.0.0 extends: openapi/onesignal-templates-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 11 - target: $.paths['/templates/{template_id}?app_id={app_id}'].get update: x-apievangelist-phrasing: intent: View a message template's content effect: read questions: - What content and channel does one of my message templates hold? - When was a particular template last updated? instructions: - text: Show message template {template_id} from app {app_id}. slots: template_id: path.template_id app_id: query.app_id - text: Get the content, channel and timestamps of template {template_id} in app {app_id}. slots: template_id: path.template_id app_id: query.app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}?app_id={app_id}'].delete update: x-apievangelist-phrasing: intent: Permanently delete a message template effect: destructive questions: - Can I delete a template that's still used in a Journey? - How do I permanently remove an old message template? instructions: - text: Permanently delete message template {template_id} from app {app_id}. slots: template_id: path.template_id app_id: query.app_id - text: Remove template {template_id} in app {app_id} now that it's out of every Journey. slots: template_id: path.template_id app_id: query.app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}?app_id={app_id}'].patch update: x-apievangelist-phrasing: intent: Update a push, email or SMS template effect: write questions: - Do template edits take effect immediately for API sends? - How do I change the email body of an existing template? instructions: - text: Update message template {template_id} in app {app_id}, naming it {name}. slots: template_id: path.template_id app_id: query.app_id name: requestBody.name - text: Change the email body of template {template_id} in app {app_id} to {email_body}, keeping name {name}. slots: template_id: path.template_id app_id: query.app_id email_body: requestBody.email_body name: requestBody.name method: generated generated: '2026-09-26' - target: $.paths['/templates?app_id={app_id}&limit={limit}&offset={offset}'].get update: x-apievangelist-phrasing: intent: Browse an app's message templates effect: read questions: - Which message templates exist in my app? - Can I see only my email templates? instructions: - text: List the message templates in app {app_id}. slots: app_id: query.app_id - text: Show {limit} {channel} templates from app {app_id} starting at {offset}. slots: limit: query.limit channel: query.channel app_id: query.app_id offset: query.offset method: generated generated: '2026-09-26' - target: $.paths['/templates'].get update: x-apievangelist-phrasing: intent: List templates (legacy endpoint) effect: read questions: - Is there an older endpoint for listing an app's templates? - Which legacy call pages through templates by channel? instructions: - text: Use the legacy template list for app {app_id}. slots: app_id: query.app_id - text: Page the older template listing for app {app_id} on channel {channel} with limit {limit}. slots: app_id: query.app_id channel: query.channel limit: query.limit method: generated generated: '2026-09-26' - target: $.paths['/templates'].post update: x-apievangelist-phrasing: intent: Create a reusable message template effect: write questions: - How do I make a reusable template for push, email or SMS? - Can I create an email template with a subject line through the API? instructions: - text: Create a template named {name} in app {app_id} with message {contents}. slots: name: requestBody.name app_id: requestBody.app_id contents: requestBody.contents - text: Create email template {name} in app {app_id} with subject {email_subject} and body {email_body}. slots: name: requestBody.name app_id: requestBody.app_id email_subject: requestBody.email_subject email_body: requestBody.email_body method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}/copy_to_app?app_id={app_id}'].post update: x-apievangelist-phrasing: intent: Duplicate a template into another app effect: write questions: - Can I reuse a message template in a different app in my organization? - Does a copied template get a new template ID? instructions: - text: Copy message template {template_id} from app {app_id} into app {target_app_id}. slots: template_id: path.template_id app_id: query.app_id target_app_id: requestBody.target_app_id - text: Duplicate template {template_id} of app {app_id} so app {target_app_id} has its own copy. slots: template_id: path.template_id app_id: query.app_id target_app_id: requestBody.target_app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}'].get update: x-apievangelist-phrasing: intent: Fetch a template by ID (legacy endpoint) effect: read questions: - Is there an older endpoint to fetch a single template by ID? - Which legacy call returns one template? instructions: - text: Fetch template {template_id} for app {app_id} with the legacy lookup. slots: template_id: path.template_id app_id: query.app_id - text: Use the older single-template call on {template_id} in app {app_id}. slots: template_id: path.template_id app_id: query.app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}'].delete update: x-apievangelist-phrasing: intent: Delete a template (legacy endpoint) effect: destructive questions: - Is there a legacy endpoint for deleting a template by ID? - Which older call removes a template? instructions: - text: Delete template {template_id} in app {app_id} through the legacy endpoint. slots: template_id: path.template_id app_id: query.app_id - text: Use the older delete call to drop template {template_id} from app {app_id}. slots: template_id: path.template_id app_id: query.app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}'].patch update: x-apievangelist-phrasing: intent: Update a template's headings, subtitle or BCC effect: write questions: - Can I change a push template's heading and subtitle? - How do I add a BCC address to an email template? instructions: - text: Set the heading of template {template_id} in app {app_id} to {headings} and subtitle to {subtitle}. slots: template_id: path.template_id app_id: query.app_id headings: requestBody.headings subtitle: requestBody.subtitle - text: Add BCC {email_bcc} to email template {template_id} in app {app_id}. slots: email_bcc: requestBody.email_bcc template_id: path.template_id app_id: query.app_id method: generated generated: '2026-09-26' - target: $.paths['/templates/{template_id}/copy_to_app'].post update: x-apievangelist-phrasing: intent: Copy a template to a destination app (legacy) effect: write questions: - Is there an older endpoint for copying a template to a destination app? - Which legacy call copies templates across apps? instructions: - text: Copy template {template_id} from app {app_id} to destination {target_app_id} using the legacy endpoint. slots: template_id: path.template_id app_id: query.app_id target_app_id: requestBody.target_app_id - text: Run the older copy call to send template {template_id} of app {app_id} to app {target_app_id}. slots: template_id: path.template_id app_id: query.app_id target_app_id: requestBody.target_app_id method: generated generated: '2026-09-26'