LINE · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Channel Access Token API
9 actions
9 updates
phrasing
extends
openapi/line-channel-access-token-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for LINE's API. It is a proposal applied on top of the contract, not a document LINE publishes.
What the actions change
x-apievangelist-phrasing
Targets 9
$.info
$.paths['/oauth2/v3/token'].post
$.paths['/oauth2/v2.1/tokens/kid'].get
$.paths['/oauth2/v2.1/token'].post
$.paths['/oauth2/v2.1/verify'].get
$.paths['/oauth2/v2.1/revoke'].post
$.paths['/v2/oauth/accessToken'].post
$.paths['/v2/oauth/verify'].post
$.paths['/v2/oauth/revoke'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Channel Access Token API
version: 1.0.0
extends: openapi/line-channel-access-token-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: 8
- target: $.paths['/oauth2/v3/token'].post
update:
x-apievangelist-phrasing:
intent: Issue a stateless channel access token
effect: write
questions:
- How do I get a stateless channel access token that isn't capped by the active token limit?
- How long does a stateless LINE channel access token stay valid?
- Can a stateless channel access token be revoked before it expires?
instructions:
- text: Issue a new stateless channel access token that lasts 15 minutes.
- text: Get me a stateless channel token with no max active token limit.
method: generated
generated: '2026-09-26'
- target: $.paths['/oauth2/v2.1/tokens/kid'].get
update:
x-apievangelist-phrasing:
intent: List valid channel access token key IDs
effect: read
questions:
- Which key IDs belong to my currently valid v2.1 channel access tokens?
- Can I see the kid of every channel access token still active on my channel?
instructions:
- text: List all valid channel access token key IDs using JWT assertion {client_assertion}.
slots:
client_assertion: query.client_assertion
- text: Get the kids of my live v2.1 tokens with assertion type {client_assertion_type} and assertion {client_assertion}.
slots:
client_assertion_type: query.client_assertion_type
client_assertion: query.client_assertion
method: generated
generated: '2026-09-26'
- target: $.paths['/oauth2/v2.1/token'].post
update:
x-apievangelist-phrasing:
intent: Issue a v2.1 channel token with a JWT assertion
effect: write
questions:
- How do I issue a channel access token with an expiration date I choose?
- Can I authenticate with a signed JWT to get a v2.1 channel access token?
instructions:
- text: Issue a v2.1 channel access token using signed JWT {client_assertion}.
slots:
client_assertion: requestBody.client_assertion
- text: Request a custom-expiry channel token with grant type {grant_type}, assertion type {client_assertion_type} and JWT {client_assertion}.
slots:
grant_type: requestBody.grant_type
client_assertion_type: requestBody.client_assertion_type
client_assertion: requestBody.client_assertion
method: generated
generated: '2026-09-26'
- target: $.paths['/oauth2/v2.1/verify'].get
update:
x-apievangelist-phrasing:
intent: Verify a v2.1 channel access token
effect: read
questions:
- Is my channel access token with a user-specified expiration still valid?
- What endpoint checks a v2.1 JWT-issued channel token?
instructions:
- text: Verify v2.1 channel access token {access_token}.
slots:
access_token: query.access_token
- text: Check whether JWT-issued token {access_token} is still valid.
slots:
access_token: query.access_token
method: generated
generated: '2026-09-26'
- target: $.paths['/oauth2/v2.1/revoke'].post
update:
x-apievangelist-phrasing:
intent: Revoke a v2.1 channel access token
effect: destructive
questions:
- How do I revoke a v2.1 channel access token I issued with a JWT?
- Does revoking a v2.1 token require my channel ID and channel secret?
instructions:
- text: Revoke v2.1 channel access token {access_token} for channel {client_id} with secret {client_secret}.
slots:
access_token: requestBody.access_token
client_id: requestBody.client_id
client_secret: requestBody.client_secret
- text: Invalidate the custom-expiry token {access_token} on channel {client_id} using secret {client_secret}.
slots:
access_token: requestBody.access_token
client_id: requestBody.client_id
client_secret: requestBody.client_secret
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/oauth/accessToken'].post
update:
x-apievangelist-phrasing:
intent: Issue a short-lived channel access token
effect: write
questions:
- How can I get a short-lived channel access token from my channel ID and secret?
- Which grant type issues a short-lived LINE channel token?
instructions:
- text: Issue a short-lived channel access token for channel {client_id} with secret {client_secret}.
slots:
client_id: requestBody.client_id
client_secret: requestBody.client_secret
- text: Get a short-lived token using grant type {grant_type}, channel {client_id} and secret {client_secret}.
slots:
grant_type: requestBody.grant_type
client_id: requestBody.client_id
client_secret: requestBody.client_secret
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/oauth/verify'].post
update:
x-apievangelist-phrasing:
intent: Verify a short-lived or long-lived channel token
effect: read
questions:
- Can I check if a short-lived or long-lived channel access token is still valid?
- What does validating a long-lived channel token return?
instructions:
- text: Verify short-lived or long-lived channel token {access_token}.
slots:
access_token: requestBody.access_token
- text: Tell me if long-lived channel access token {access_token} still works.
slots:
access_token: requestBody.access_token
method: generated
generated: '2026-09-26'
- target: $.paths['/v2/oauth/revoke'].post
update:
x-apievangelist-phrasing:
intent: Revoke a short-lived or long-lived channel token
effect: destructive
questions:
- How do I revoke a short-lived or long-lived channel access token?
- Can I kill a leaked long-lived channel token right away?
instructions:
- text: Revoke short-lived or long-lived channel token {access_token}.
slots:
access_token: requestBody.access_token
- text: Invalidate leaked long-lived channel token {access_token} now.
slots:
access_token: requestBody.access_token
method: generated
generated: '2026-09-26'