openapi: 3.2.0 info: title: server Liff API version: 1.0.0 description: LIFF Server API. servers: - url: https://api.line.me/ security: - Bearer: [] tags: - name: liff paths: /liff/v1/apps: post: operationId: addLIFFApp externalDocs: url: https://developers.line.biz/en/reference/liff-server/#add-liff-app summary: Create LIFF app tags: - liff description: Adding the LIFF app to a channel requestBody: content: application/json: schema: $ref: '#/components/schemas/AddLiffAppRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AddLiffAppResponse' example: liffId: '{liffId}' '400': description: 'This status code means one of the following: - The request contains an invalid value. - The maximum number of LIFF apps that can be added to the channel has been reached. ' '401': description: 'Authentication failed. ' get: operationId: getAllLIFFApps externalDocs: url: https://developers.line.biz/en/reference/liff-server/#get-all-liff-apps summary: Get all LIFF apps description: Gets information on all the LIFF apps added to the channel. tags: - liff responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/GetAllLiffAppsResponse' example: apps: - liffId: '{liffId}' view: type: full url: https://example.com/myservice description: Happy New York permanentLinkPattern: concat - liffId: '{liffId}' view: type: tall url: https://example.com/myservice2 features: ble: true qrCode: true permanentLinkPattern: concat scope: - profile - chat_message.write botPrompt: none '401': description: 'Authentication failed. ' '404': description: 'There is no LIFF app on the channel. ' /liff/v1/apps/{liffId}: parameters: - name: liffId in: path required: true description: ID of the LIFF app to be updated schema: type: string put: operationId: updateLIFFApp externalDocs: url: https://developers.line.biz/en/reference/liff-server/#update-liff-app summary: Update LIFF app from a channel description: Update LIFF app settings tags: - liff requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateLiffAppRequest' required: true responses: '200': description: OK '400': description: 'The request contains an invalid value. ' '401': description: 'Authentication failed. ' '404': description: 'This status code means one of the following: - The specified LIFF app does not exist. - The specified LIFF app has been added to another channel. ' delete: operationId: deleteLIFFApp externalDocs: url: https://developers.line.biz/en/reference/liff-server/#delete-liff-app summary: Delete LIFF app from a channel description: 'Deletes a LIFF app from a channel. ' tags: - liff responses: '200': description: OK '401': description: 'Authentication failed. ' '404': description: 'This status code means one of the following: - The specified LIFF app does not exist. - The specified LIFF app has been added to another channel. ' components: schemas: AddLiffAppRequest: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#add-liff-app type: object required: - view properties: view: $ref: '#/components/schemas/LiffView' description: type: string description: 'Name of the LIFF app. The LIFF app name can''t include "LINE" or similar strings, or inappropriate strings. ' features: $ref: '#/components/schemas/LiffFeatures' permanentLinkPattern: type: string description: 'How additional information in LIFF URLs is handled. Specify `concat`. ' scope: type: array items: $ref: '#/components/schemas/LiffScope' botPrompt: $ref: '#/components/schemas/LiffBotPrompt' LiffScope: type: string enum: - openid - email - profile - chat_message.write description: 'Array of scopes required for some LIFF SDK methods to function. The default value is `["profile", "chat_message.write"]`. ' LiffView: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#add-liff-app type: object required: - type - url properties: type: description: 'Size of the LIFF app view. Specify one of these values: - compact - tall - full ' type: string enum: - compact - tall - full url: type: string format: uri description: 'Endpoint URL. This is the URL of the web app that implements the LIFF app (e.g. https://example.com). Used when the LIFF app is launched using the LIFF URL. The URL scheme must be https. URL fragments (#URL-fragment) can''t be specified. ' moduleMode: type: boolean description: '`true` to use the LIFF app in modular mode. When in modular mode, the action button in the header is not displayed. ' LiffApp: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#get-all-liff-apps type: object properties: liffId: type: string description: LIFF app ID view: $ref: '#/components/schemas/LiffView' description: type: string description: Name of the LIFF app features: $ref: '#/components/schemas/LiffFeatures' permanentLinkPattern: type: string description: 'How additional information in LIFF URLs is handled. concat is returned. ' scope: type: array items: $ref: '#/components/schemas/LiffScope' botPrompt: $ref: '#/components/schemas/LiffBotPrompt' UpdateLiffView: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#update-liff-app type: object properties: type: description: 'Size of the LIFF app view. Specify one of these values: - compact - tall - full ' type: string enum: - compact - tall - full url: type: string format: uri description: 'Endpoint URL. This is the URL of the web app that implements the LIFF app (e.g. https://example.com). Used when the LIFF app is launched using the LIFF URL. The URL scheme must be https. URL fragments (#URL-fragment) can''t be specified. ' moduleMode: type: boolean description: '`true` to use the LIFF app in modular mode. When in modular mode, the action button in the header is not displayed. ' LiffFeatures: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#get-all-liff-apps type: object properties: ble: type: boolean description: '`true` if the LIFF app supports Bluetooth® Low Energy for LINE Things. `false` otherwise. ' qrCode: type: boolean description: '`true` to use the 2D code reader in the LIFF app. false otherwise. The default value is `false`. ' default: false LiffBotPrompt: type: string description: "Specify the setting for bot link feature with one of the following values:\n\n`normal`: Display the option to add the LINE Official Account as a friend in the channel consent screen.\n`aggressive`: Display a screen with the option to add the LINE Official Account as a friend after the channel consent screen.\n`none`: Don't display the option to add the LINE Official Account as a friend.\n The default value is none.\n" enum: - normal - aggressive - none UpdateLiffAppRequest: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#add-liff-app type: object properties: view: $ref: '#/components/schemas/UpdateLiffView' description: type: string description: 'Name of the LIFF app. The LIFF app name can''t include "LINE" or similar strings, or inappropriate strings. ' features: $ref: '#/components/schemas/LiffFeatures' permanentLinkPattern: type: string description: 'How additional information in LIFF URLs is handled. Specify `concat`. ' scope: type: array items: $ref: '#/components/schemas/LiffScope' botPrompt: $ref: '#/components/schemas/LiffBotPrompt' GetAllLiffAppsResponse: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#get-all-liff-apps type: object properties: apps: type: array items: $ref: '#/components/schemas/LiffApp' AddLiffAppResponse: externalDocs: url: https://developers.line.biz/en/reference/liff-server/#add-liff-app type: object required: - liffId properties: liffId: type: string securitySchemes: Bearer: type: http scheme: bearer description: Channel access token