# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Admin API V1 Device Tokens API version: 1.0.0 extends: openapi/optimizely-device-tokens-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['/api/v1/admin/device-tokens/register'].post update: x-apievangelist-phrasing: intent: Register a device for push notifications effect: write questions: - How do I register a mobile device token so the current user gets push notifications? - Can the app sign a device up for notifications with just its token? instructions: - text: Register device token {deviceToken} for push notifications. slots: deviceToken: requestBody.deviceToken - text: Sign up device {deviceToken} to receive notifications. slots: deviceToken: requestBody.deviceToken method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/device-tokens/unregister'].post update: x-apievangelist-phrasing: intent: Stop push notifications to a device effect: destructive questions: - How can an app stop push notifications to a device when the user logs out? - Can I unregister a device token so it no longer gets notified? instructions: - text: Unregister device token {deviceToken}. slots: deviceToken: requestBody.deviceToken - text: Stop sending push notifications to device {deviceToken}. slots: deviceToken: requestBody.deviceToken method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens'].get update: x-apievangelist-phrasing: intent: List stored device tokens effect: read questions: - Which device tokens are stored in the Optimizely Commerce admin? - Can I filter device tokens to ones that are disabled? instructions: - text: List all stored device tokens. - text: Show device tokens matching {filter}. slots: filter: query.$filter method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens'].post update: x-apievangelist-phrasing: intent: Create a device token record as an admin effect: write questions: - Can an admin add a device token record directly for a user profile? - What fields does an admin-created device token record need? instructions: - text: Create an admin device token record {token} for user profile {userProfileId}. slots: token: requestBody.token userProfileId: requestBody.userProfileId - text: Add device token entity {token} with disabled set to {disabled}. slots: token: requestBody.token disabled: requestBody.disabled method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens({id})'].get update: x-apievangelist-phrasing: intent: Get one device token record effect: read questions: - Which user does a stored device token belong to? - Can I look up a single device token record by id? instructions: - text: Fetch device token record {id}. slots: id: path.id - text: Show the user profile and status of device token {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens({id})'].put update: x-apievangelist-phrasing: intent: Replace a device token record effect: write questions: - Can I overwrite a stored device token record entirely? - Does replacing a device token record require resending the token value? instructions: - text: Replace device token record {id} with token {token}. slots: id: path.id token: requestBody.token - text: Overwrite the full record of device token {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens({id})'].delete update: x-apievangelist-phrasing: intent: Delete one device token record effect: destructive questions: - How do I delete a single stored device token record? - Can deleting a device token record be guarded by an ETag? instructions: - text: Delete device token record {id}. slots: id: path.id - text: Delete device token {id} only if its ETag is {etag}. slots: id: path.id etag: header.If-Match method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens({id})'].patch update: x-apievangelist-phrasing: intent: Enable or disable a stored device token effect: write questions: - Can I disable a stored device token without deleting it? - Is it possible to reassign a device token record to another user profile? instructions: - text: Set device token {id} disabled flag to {disabled}. slots: id: path.id disabled: requestBody.disabled - text: Move device token {id} to user profile {userProfileId}. slots: id: path.id userProfileId: requestBody.userProfileId method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/DeviceTokens/Default.Default()'].get update: x-apievangelist-phrasing: intent: Get default values for a device token effect: read questions: - What defaults does a new device token record start with? - Is there an empty device token template? instructions: - text: Get the default field values for a new device token. - text: Show the blank device token template. method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/devicetokens/delete'].delete update: x-apievangelist-phrasing: intent: Bulk delete device token records effect: destructive questions: - Can I remove many device token records in one request? - Is there a batch delete for device tokens by id list? instructions: - text: Bulk delete device token records {ids}. slots: ids: query.ids - text: Permanently delete every device token in {ids}. slots: ids: query.ids method: generated generated: '2026-09-26' - target: $.paths['/api/v1/admin/devicetokens({key})/customproperties({custompropertyKey})'].get update: x-apievangelist-phrasing: intent: Get a custom property on a device token effect: read questions: - How can I read a custom property stored on a device token? - Can I fetch one custom field value from a device token record? instructions: - text: Get custom property {custompropertyKey} of device token {key}. slots: key: path.key custompropertyKey: path.custompropertyKey - text: Show the {custompropertyKey} custom property on device token {key}. slots: key: path.key custompropertyKey: path.custompropertyKey method: generated generated: '2026-09-26'