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

# List all the cats.



## OpenAPI

````yaml get /api/meows
openapi: 3.0.3
info:
  title: Meow as a Service (MaaS) API documentation
  version: 1.0.0
  description: >-
    An API to manage cats or `meows` as we refer it, including listing, viewing,
    creating, updating, and deleting cats.
servers:
  - url: https://maas-alpha.vercel.app/
    description: Production Server
  - url: http://localhost:3000/
    description: Development Server
security:
  - bearerAuth: []
paths:
  /api/meows:
    get:
      summary: List all the cats.
      parameters:
        - name: q
          in: query
          schema:
            type: string
          description: Search query for cat names
        - name: page
          in: query
          schema:
            type: integer
            default: 1
          description: Page no you want to fetch
        - name: limit
          in: query
          schema:
            type: integer
            default: 10
          description: How many cats you want to fetch per page
        - name: filter
          in: query
          schema:
            type: object
          description: 'Filter for any key. E.g. { "owner_id": "<your_owner_id>" }'
        - name: sort
          in: query
          schema:
            type: string
            default: created_at
          description: Sort with any field you want
        - name: order
          in: query
          schema:
            type: string
            enum:
              - asc
              - desc
            default: desc
          description: The sort order with asc or desc
        - name: select
          in: query
          schema:
            type: string
            default: name,id,breed
          description: Comma separated list of the fields to select
      responses:
        '200':
          description: List of meows
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Cat'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  schemas:
    Cat:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        breed:
          type: string
        image:
          type: string
        personality:
          $ref: '#/components/schemas/Personality'
        owner_id:
          type: string
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
    Personality:
      type: string
      enum:
        - Playful
        - Calm
        - Bold
        - Affectionate
        - Energetic
        - Gentle
        - Curious
        - Confident
        - Friendly
        - Mysterious
  responses:
    Unauthorized:
      description: Unauthorized request
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
              error:
                type: string
    Forbidden:
      description: 'Forbidden: insufficient permissions'
      content:
        application/json:
          schema:
            type: object
            properties:
              message:
                type: string
              error:
                type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````