LISNR Tones Service API Reference API

The Tones Service API Reference API from LISNR — 1 operation(s) for tones service api reference.

OpenAPI Specification

lisnr-tones-service-api-reference-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: LISNR Portal API (observed) Accounts Tones Service API Reference API
  version: v2
  description: 'Unofficial OpenAPI description of the LISNR Portal API, DERIVED by the API Evangelist enrichment pipeline from the first-party LISNR Portal single-page application bundle (https://portal.lisnr.com/scripts/script.865ef81c.js, build 2025-12-16). Paths, HTTP methods, path/query parameters, the `Authorization: JWT <token>` scheme and the `{ result: ... }` response envelope are all OBSERVED from that first-party client. Request and response body schemas are NOT described here because LISNR does not publish them; nothing has been invented. LISNR publishes an official OpenAPI only for the Tones Service API (see openapi/lisnr-tones-openapi-original.json).'
  contact:
    name: LISNR Technical Support
    email: techsupport@lisnr.com
  x-apievangelist-provenance:
    method: derived
    source: https://portal.lisnr.com/scripts/script.865ef81c.js
    config_source: https://portal.lisnr.com/config.js
    build: '2025-12-16T18:23:14Z'
    note: Observed client surface, not a LISNR-published specification.
servers:
- url: https://api.lisnr.com
  description: LISNR Portal API (apiBaseURL from portal config.js)
security:
- jwtToken: []
tags:
- name: Tones Service API Reference
paths:
  /:
    post:
      summary: Create a Tone
      parameters:
      - $ref: '#/components/APITokenHeader'
      description: Returns a URL (valid for twenty-four hours) used to retrieve the tone. All tones have a bit depth of twenty-four bits.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateToneEvent'
        required: true
      responses:
        '200':
          description: Tone generated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateToneResult'
        '400':
          description: Invalid request body.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InvalidRequestBodySchema'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedSchema'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenSchema'
        '429':
          description: Too many requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsSchema'
        '500':
          description: Failed to generate tone.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Tones Service API Reference
components:
  schemas:
    TooManyRequestsSchema:
      title: Too Many Requests Schema
      type: object
      properties:
        message:
          type: string
          example: Too many requests.
    CreateToneEvent:
      title: Create Tone Event Schema
      required:
      - payload
      - profile
      type: object
      properties:
        profile:
          type: string
          enum:
          - zone66
          - zone266
          - point1000
          - point2000
          - pkab2
          - pkab2_wideband
          - standard2
          - standard2_wideband
          example: point1000
          description: Profile of tone. The Tones API supports the creation of the above tone profiles. Refer to the SDK documentation for profile compatibility.
        payload:
          $ref: '#/components/PayloadProperty'
        format:
          type: string
          example: wav
          enum:
          - wav
          - mp3
          description: File format of tone.
          default: wav
        zip:
          type: boolean
          example: true
          description: Whether the tone should be compressed to a ZIP file.
          default: true
        prependSilence:
          type: boolean
          example: false
          description: Whether the tone should be prepended with 200 milliseconds of silence. Due to iOS limitations, this is necessary for API-generated tones to successfully broadcast from iOS browsers.
          default: false
        channel:
          type: integer
          example: 0
          description: Channel the provided tone profile will transmit on. Zone66 and Point1000 accept channel values of 0, 1, or 2. Zone266 and Point2000 automatically broadcast on channel 1. Channel can only be used with Zone66, Zone266, Point1000, and Point2000 tone profiles.
        tonelockType:
          type: string
          example: account_based
          enum:
          - account_based
          - custom_value
          - time_based
          description: Type of ToneLock that will be used on the provided tone payload. If custom_value type is selected, the tonelockValue must be provided. Refer to the SDK documentation for ToneLock type functionality details.
        tonelockValue:
          type: string
          example: 2d5cbbc0-5e97-437c-aabc-5891f7a74683
          description: ToneLock value for the provided tone when using custom_value ToneLock type. Format should be a 36 character string composed of 32 hexadecimal digits and 4 hyphens (RFC4122 Compliant UUID). Any receiving devices cannot demodulate a tone enabled with ToneLock unless they are enabled with a matching ToneLock value.
        encrypt:
          type: boolean
          example: false
          description: Whether the tone payload should be encrypted using AES256. In order to receive and demodulate the encrypted tone, the receiving application must initialize it's Radius object using an SDK token from the same account the API token was created from.
          default: false
    Error:
      title: Error Schema
      type: object
      properties:
        message:
          type: string
          example: Tone creation failed.
    UnauthorizedSchema:
      title: Unauthorized Schema
      type: object
      properties:
        message:
          type: string
          example: Unauthorized.
    ForbiddenSchema:
      title: Forbidden Schema
      type: object
      properties:
        message:
          type: string
          example: User is not authorized to access this resource with an explicit deny.
    CreateToneResult:
      title: Create Tone Result Schema
      type: object
      properties:
        url:
          type: string
          description: Valid for twenty-four hours.
          example: https://lisnr-tones-us-east-1.s3.amazonaws.com/radius3-point1000-f185cd4d-aed0-4813-b4e7-87b1ba8d13e7.wav?...
    InvalidRequestBodySchema:
      title: Invalid Request Body Schema
      type: object
      properties:
        message:
          type: string
          example: Invalid request body.
  securitySchemes:
    jwtToken:
      type: apiKey
      in: header
      name: Authorization
      description: 'A LISNR JWT prefixed with the literal string `JWT `, e.g. `Authorization: JWT eyJ...`.'