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

# Create List



## OpenAPI

````yaml /openapi.json post /saved/lists
openapi: 3.1.0
info:
  title: Stardrift API
  description: >-
    Read and edit the authenticated user's trips, itineraries, recorded
    bookings, and saved lists. Private records are owner-scoped. MCP tool names
    are documented separately from these HTTP operations.
  version: v1
servers:
  - url: https://stardrift.ai/api
security: []
paths:
  /saved/lists:
    post:
      tags:
        - saved
      summary: Create List
      operationId: create_list_saved_lists_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateListRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SavedListOut'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CreateListRequest:
      properties:
        title:
          type: string
          title: Title
        source:
          type: string
          enum:
            - manual
            - chat
            - tiktok
            - ig
            - shared
          title: Source
          default: manual
        source_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Url
        city:
          anyOf:
            - type: string
            - type: 'null'
          title: City
        cover_image_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Cover Image Url
        intro:
          anyOf:
            - type: string
            - type: 'null'
          title: Intro
        visibility:
          anyOf:
            - type: string
              enum:
                - public
                - private
            - type: 'null'
          title: Visibility
      type: object
      required:
        - title
      title: CreateListRequest
    SavedListOut:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        title:
          type: string
          title: Title
        source:
          type: string
          title: Source
        source_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Url
        source_author:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Author
        city:
          anyOf:
            - type: string
            - type: 'null'
          title: City
        cover_image_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Cover Image Url
        item_count:
          type: integer
          title: Item Count
        is_shared:
          type: boolean
          title: Is Shared
        status:
          type: string
          title: Status
        failed_reason:
          anyOf:
            - type: string
              const: post_unavailable
            - type: 'null'
          title: Failed Reason
        created_at:
          type: string
          title: Created At
        updated_at:
          type: string
          title: Updated At
        visibility:
          type: string
          enum:
            - public
            - private
          title: Visibility
        slug:
          anyOf:
            - type: string
            - type: 'null'
          title: Slug
        public_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Public Url
        routes:
          items:
            $ref: '#/components/schemas/SavedRouteOut'
          type: array
          title: Routes
          default: []
        intro:
          anyOf:
            - type: string
            - type: 'null'
          title: Intro
        sections:
          items:
            $ref: '#/components/schemas/SavedSection'
          type: array
          title: Sections
          default: []
      type: object
      required:
        - id
        - title
        - source
        - source_url
        - source_author
        - city
        - cover_image_url
        - item_count
        - is_shared
        - status
        - created_at
        - updated_at
        - visibility
        - slug
        - public_url
      title: SavedListOut
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    SavedRouteOut:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        list_id:
          type: string
          format: uuid
          title: List Id
        name:
          type: string
          title: Name
        activity:
          type: string
          title: Activity
        status:
          type: string
          title: Status
        chains:
          items:
            type: string
          type: array
          title: Chains
        length_m:
          type: integer
          title: Length M
        ascent_m:
          type: integer
          title: Ascent M
        descent_m:
          type: integer
          title: Descent M
        min_elev_m:
          type: number
          title: Min Elev M
        max_elev_m:
          type: number
          title: Max Elev M
        profile:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Profile
        tag_lengths:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Tag Lengths
        osm_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Osm Name
        claimed_length_km:
          anyOf:
            - type: number
            - type: 'null'
          title: Claimed Length Km
        claimed_ascent_m:
          anyOf:
            - type: number
            - type: 'null'
          title: Claimed Ascent M
        place_item_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Place Item Id
      type: object
      required:
        - id
        - list_id
        - name
        - activity
        - status
        - chains
        - length_m
        - ascent_m
        - descent_m
        - min_elev_m
        - max_elev_m
      title: SavedRouteOut
      description: >-
        A resolved trail/ride the list's reel is about. Geometry is Google

        encoded polylines (`chains`, main line first) — clients decode with
        their

        existing polyline utils. Only resolved rows are served; `low_confidence`

        means the geometry contradicts the creator's claimed stats (likely a

        superset/sibling route) and the client should present it tentatively.
    SavedSection:
      properties:
        id:
          type: string
          title: Id
        title:
          type: string
          title: Title
        blurb:
          anyOf:
            - type: string
            - type: 'null'
          title: Blurb
        item_ids:
          items:
            type: string
            format: uuid
          type: array
          title: Item Ids
          default: []
      type: object
      required:
        - id
        - title
      title: SavedSection
      description: '`item_ids` is both membership and display order; stale ids drop on read.'
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````