openapi: 3.1.0 info: title: ThingsBoard Admin admin-controller qr-code-settings-controller API description: 'ThingsBoard Admin API — subset of the ThingsBoard REST API (open-source IoT platform). Covers: Admin, Audit Log, Event, Usage Info, Queue, Queue Stats, Mail Config Template, Qr Code Settings, Job.' version: 4.3.0.3DEMO contact: name: ThingsBoard team url: https://thingsboard.io email: info@thingsboard.io license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: https://demo.thingsboard.io description: ThingsBoard Live Demo - url: http://localhost:8080 description: Local ThingsBoard server tags: - name: qr-code-settings-controller description: Qr Code Settings paths: /api/mobile/qr/settings: get: tags: - qr-code-settings-controller summary: Get Mobile Application Settings (getMobileAppSettings) description: 'The response payload contains configuration for android/iOS applications and platform qr code widget settings. Available for any authorized user. ' operationId: getQrCodeSettings responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/QrCodeSettings' post: tags: - qr-code-settings-controller summary: Create or Update the Mobile Application Settings (saveMobileAppSettings) description: 'The request payload contains configuration for android/iOS applications and platform qr code widget settings. Available for users with ''SYS_ADMIN'' authority.' operationId: saveQrCodeSettings requestBody: content: application/json: schema: $ref: '#/components/schemas/QrCodeSettings' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/QrCodeSettings' /api/noauth/qr: get: tags: - qr-code-settings-controller operationId: getApplicationRedirect parameters: - name: User-Agent in: header required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: object /api/noauth/qr/{secret}: get: tags: - qr-code-settings-controller summary: Get User Token (getUserTokenByMobileSecret) description: Returns the token of the User based on the provided secret key. operationId: getUserTokenByMobileSecret parameters: - name: secret in: path description: A string value representing short-lived secret key required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/JwtPair' /api/mobile/qr/deepLink: get: tags: - qr-code-settings-controller summary: Get the Deep Link to the Associated Mobile Application (getMobileAppDeepLink) description: "Fetch the url that takes user to linked mobile application \n\nAvailable for any authorized user. " operationId: getMobileAppDeepLink responses: '200': description: OK content: text/plain: schema: type: string /.well-known/assetlinks.json: get: tags: - qr-code-settings-controller summary: Get Associated Android Applications (getAssetLinks) operationId: getAssetLinks responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/JsonNode' /.well-known/apple-app-site-association: get: tags: - qr-code-settings-controller summary: Get Associated Ios Applications (getAppleAppSiteAssociation) operationId: getAppleAppSiteAssociation responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/JsonNode' components: schemas: MobileAppBundleId: type: object properties: id: type: string format: uuid description: ID of the entity, time-based UUID v1 example: 784f394c-42b6-435a-983c-b7beff2784f9 entityType: type: string enum: - TENANT - CUSTOMER - USER - DASHBOARD - ASSET - DEVICE - ALARM - RULE_CHAIN - RULE_NODE - ENTITY_VIEW - WIDGETS_BUNDLE - WIDGET_TYPE - TENANT_PROFILE - DEVICE_PROFILE - ASSET_PROFILE - API_USAGE_STATE - TB_RESOURCE - OTA_PACKAGE - EDGE - RPC - QUEUE - NOTIFICATION_TARGET - NOTIFICATION_TEMPLATE - NOTIFICATION_REQUEST - NOTIFICATION - NOTIFICATION_RULE - QUEUE_STATS - OAUTH2_CLIENT - DOMAIN - MOBILE_APP - MOBILE_APP_BUNDLE - CALCULATED_FIELD - JOB - ADMIN_SETTINGS - AI_MODEL - API_KEY example: DEVICE required: - entityType - id QRCodeConfig: type: object properties: showOnHomePage: type: boolean badgeEnabled: type: boolean qrCodeLabelEnabled: type: boolean badgePosition: type: string enum: - RIGHT - LEFT qrCodeLabel: type: string JsonNode: description: A value representing the any type (object or primitive) examples: - {} QrCodeSettings: type: object description: A JSON value representing the mobile apps configuration properties: id: $ref: '#/components/schemas/QrCodeSettingsId' createdTime: type: integer format: int64 description: Entity creation timestamp in milliseconds since Unix epoch example: 1746028547220 readOnly: true tenantId: $ref: '#/components/schemas/TenantId' description: JSON object with Tenant Id. readOnly: true useSystemSettings: type: boolean description: Use settings from system level example: true useDefaultApp: type: boolean description: 'Type of application: true means use default Thingsboard app' example: true mobileAppBundleId: $ref: '#/components/schemas/MobileAppBundleId' description: Mobile app bundle. qrCodeConfig: $ref: '#/components/schemas/QRCodeConfig' description: QR code config configuration. androidEnabled: type: boolean description: Indicates if google play link is available example: true iosEnabled: type: boolean description: Indicates if apple store link is available example: true googlePlayLink: type: string readOnly: true appStoreLink: type: string readOnly: true required: - qrCodeConfig TenantId: type: object properties: id: type: string format: uuid description: ID of the entity, time-based UUID v1 example: 784f394c-42b6-435a-983c-b7beff2784f9 entityType: type: string description: string enum: - TENANT example: TENANT required: - entityType - id JwtPair: type: object description: JWT Pair properties: token: type: string description: The JWT Access Token. Used to perform API calls. example: AAB254FF67D.. refreshToken: type: string description: The JWT Refresh Token. Used to get new JWT Access Token if old one has expired. example: AAB254FF67D.. scope: type: string enum: - SYS_ADMIN - TENANT_ADMIN - CUSTOMER_USER - REFRESH_TOKEN - PRE_VERIFICATION_TOKEN - MFA_CONFIGURATION_TOKEN QrCodeSettingsId: type: object properties: id: type: string format: uuid description: string example: 784f394c-42b6-435a-983c-b7beff2784f9 required: - id securitySchemes: HTTP login form: type: http description: Enter Username / Password scheme: loginPassword bearerFormat: /api/auth/login|X-Authorization API key form: type: apiKey description: 'Enter the API key value with ''ApiKey'' prefix in format: **ApiKey ** Example: **ApiKey tb_5te51SkLRYpjGrujUGwqkjFvooWBlQpVe2An2Dr3w13wjfxDW**
**NOTE**: Use only ONE authentication method at a time. If both are authorized, JWT auth takes the priority.
' name: X-Authorization in: header