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

> List streams in an S2 basin with prefix filtering and cursor-based pagination.

# List streams.

<Tip>
  Model paging by specifying `start_after` as the last stream name that was returned.
</Tip>


## OpenAPI

````yaml get /streams
openapi: 3.1.0
info:
  title: S2, the durable streams API
  description: Streams as a cloud storage primitive.
  termsOfService: https://s2.dev/terms
  contact:
    email: support@s2.dev
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://aws.s2.dev/v1
security:
  - access_token: []
tags:
  - name: metrics
    description: Usage metrics and data.
  - name: basins
    description: Manage basins
  - name: access-tokens
    description: Manage access tokens
  - name: locations
    description: Manage locations
  - name: streams
    description: Manage streams
  - name: records
    description: Manage records
paths:
  /streams:
    servers:
      - url: https://{basin}.b.s2.dev/v1
        description: Endpoint for the basin
        variables:
          basin:
            default: ''
            description: Basin name
    get:
      tags:
        - streams
      summary: List streams.
      operationId: list_streams
      parameters:
        - name: prefix
          in: query
          description: Filter to streams whose names begin with this prefix.
          required: false
          schema:
            type: string
            default: ''
        - name: start_after
          in: query
          description: >-
            Filter to streams whose names lexicographically start after this
            string.
          required: false
          schema:
            type: string
            default: ''
        - name: limit
          in: query
          description: Number of results, up to a maximum of 1000.
          required: false
          schema:
            type: integer
            default: 1000
            maximum: 1000
            minimum: 0
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListStreamsResponse'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
        '404':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
        '408':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorInfo'
components:
  schemas:
    ListStreamsResponse:
      type: object
      required:
        - streams
        - has_more
      properties:
        has_more:
          type: boolean
          description: Indicates that there are more results that match the criteria.
        streams:
          type: array
          items:
            $ref: '#/components/schemas/StreamInfo'
          description: Matching streams.
          maxItems: 1000
    ErrorInfo:
      type: object
      required:
        - code
        - message
      properties:
        code:
          type: string
        message:
          type: string
    StreamInfo:
      type: object
      required:
        - name
        - created_at
      properties:
        cipher:
          oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/EncryptionAlgorithm'
              description: Encryption algorithm for this stream, if encryption is enabled.
        created_at:
          type: string
          format: date-time
          description: Creation time in RFC 3339 format.
        deleted_at:
          type:
            - string
            - 'null'
          format: date-time
          description: Deletion time in RFC 3339 format, if the stream is being deleted.
        name:
          $ref: '#/components/schemas/StreamNameStr'
          description: Stream name.
    EncryptionAlgorithm:
      type: string
      enum:
        - aegis-256
        - aes-256-gcm
    StreamNameStr:
      type: string
      maxLength: 512
      minLength: 1
  securitySchemes:
    access_token:
      type: http
      scheme: bearer
      description: >-
        Bearer authentication header of the form `Bearer <token>`, where
        `<token>` is your access token.

````