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

# Get a smart playlist



## OpenAPI

````yaml /api-reference/openapi.json get /smart-playlists/{id}
openapi: 3.1.0
info:
  title: Rockbox HTTP API
  version: 1.0.0
  summary: >-
    HTTP REST API for rockboxd — playback, library, playlists, devices,
    settings.
  description: >-
    Rockbox Daemon exposes its full feature surface over HTTP REST on port 6063
    (configurable via `ROCKBOX_TCP_PORT`). It complements the GraphQL API on
    :6062 and the gRPC API on :6061 — all three speak to the same in-process
    state.


    All handlers are defined in `crates/server/src/handlers/` and registered in
    `crates/server/src/lib.rs:run_http_server()`.
  contact:
    name: Rockbox Daemon
    url: https://github.com/tsirysndr/rockboxd
  license:
    name: GPL-2.0
    url: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
servers:
  - url: http://localhost:6063
    description: Default local rockboxd
security: []
tags:
  - name: Albums
  - name: Artists
  - name: Tracks
  - name: Search
  - name: Browse
  - name: Player
  - name: Playlist (queue)
  - name: Saved playlists
  - name: Smart playlists
  - name: Track stats
  - name: Devices
  - name: Settings
  - name: System
  - name: Bluetooth
paths:
  /smart-playlists/{id}:
    parameters:
      - $ref: '#/components/parameters/IdPath'
    get:
      tags:
        - Smart playlists
      summary: Get a smart playlist
      operationId: getSmartPlaylist
      responses:
        '200':
          description: Smart playlist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SmartPlaylist'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    IdPath:
      name: id
      in: path
      required: true
      schema:
        type: string
  schemas:
    SmartPlaylist:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
          nullable: true
        image:
          type: string
          nullable: true
        folder_id:
          type: string
          nullable: true
        rules:
          $ref: '#/components/schemas/RuleCriteria'
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    RuleCriteria:
      type: object
      description: >-
        Smart-playlist rule set. See `crates/playlists/src/rules.rs` for the
        canonical definition.
      properties:
        operator:
          type: string
          enum:
            - AND
            - OR
          default: AND
        rules:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
                description: >-
                  play_count | skip_count | last_played | year | duration_ms |
                  genre | artist | …
              op:
                type: string
                description: eq | ne | gt | gte | lt | lte | contains | within | not_within
              value: {}
        sort:
          type: object
          nullable: true
          properties:
            field:
              type: string
            dir:
              type: string
              enum:
                - asc
                - desc
        limit:
          type: integer
          format: int32
          nullable: true
  responses:
    NotFound:
      description: Not found

````