> ## Documentation Index
> Fetch the complete documentation index at: https://docs.base44.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get session recording settings

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Returns whether session recordings are on for the app, and how they capture visits. See [Session recordings](/documentation/performance-and-seo/session-recordings) for how recordings work and what they cost.

`enabled` reads `false` when recordings were turned on but the app has since moved to another owner or workspace, or the owner's plan no longer includes them. A `true` value doesn't guarantee visits are being recorded: that also needs the app to be published, and recordings to have reached the app owner's account.

<Note>This endpoint accepts a personal API key belonging to a user with editor access to the app. A read-only key is refused, and workspace API keys are not accepted.</Note>



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/session-recordings/apps/{app_id}/recording-settings
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - PersonalAccessTokenAuth: []
paths:
  /api/session-recordings/apps/{app_id}/recording-settings:
    get:
      summary: Get session recording settings
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Returns whether session recordings are on for the app, and how they
        capture visits. See [Session
        recordings](/documentation/performance-and-seo/session-recordings) for
        how recordings work and what they cost.


        `enabled` reads `false` when recordings were turned on but the app has
        since moved to another owner or workspace, or the owner's plan no longer
        includes them. A `true` value doesn't guarantee visits are being
        recorded: that also needs the app to be published, and recordings to
        have reached the app owner's account.


        <Note>This endpoint accepts a personal API key belonging to a user with
        editor access to the app. A read-only key is refused, and workspace API
        keys are not accepted.</Note>
      operationId: >-
        get_recording_settings_api_session_recordings_apps__app_id__recording_settings_get
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            maxLength: 64
            pattern: ^[a-zA-Z0-9._-]+$
            description: ID of the app.
            title: App Id
          description: ID of the app.
          example: 6820f3a4e7b91d003c45a1f2
      responses:
        '200':
          description: The app's session recording settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RecordingSettingsResponse'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: Your API key is read-only.
        '404':
          description: >-
            App not found, you don't have editor access to it, or it's outside
            the apps your API key can reach.
        '422':
          description: '`app_id` isn''t a valid app ID.'
components:
  schemas:
    RecordingSettingsResponse:
      properties:
        app_id:
          type: string
          title: App Id
          description: ID of the app.
          example: 6820f3a4e7b91d003c45a1f2
        enabled:
          type: boolean
          title: Enabled
          description: >-
            Whether recordings are on. Reads `false` when they were turned on
            but the app has since moved to another owner or workspace, or the
            owner's plan no longer includes recordings.
          example: true
        enabled_at:
          anyOf:
            - type: string
            - type: 'null'
          title: Enabled At
          description: >-
            When recordings were turned on, as a UTC timestamp in ISO 8601
            format, or `null` when they're off. A value read back carries no
            offset, and the response right after turning recordings on carries
            `+00:00`. The response to turning recordings off keeps the previous
            value.
          example: '2026-09-01T10:15:00.123000'
        enabled_by:
          anyOf:
            - type: string
            - type: 'null'
          title: Enabled By
          description: >-
            Email of the user who turned recordings on, or `null` when they're
            off. The response to turning recordings off keeps the previous
            value.
          example: jane@acme.com
        exclude_admins:
          type: boolean
          title: Exclude Admins
          description: >-
            Whether visits by the app's owners and admins are left out of
            recording.
          default: true
          example: true
        sampling_rate:
          type: number
          title: Sampling Rate
          description: >-
            Share of eligible visits that get recorded, from `0` to `1`. `1`
            records every visit.
          default: 1
          example: 1
      type: object
      required:
        - app_id
        - enabled
      title: RecordingSettingsResponse
      description: An app's session recording settings.
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: 'Personal access token, sent as `Authorization: Bearer <token>`.'

````