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

# List Routes

> Returns a list of routes for a site.

export const ReadinessBadge = ({type}) => {
  const validTags = ["beta", "alpha", "experimental"];
  const tagText = type?.trim().toLowerCase();
  if (!tagText || !validTags.includes(tagText)) return null;
  useEffect(() => {
    const titleElement = document.querySelector("#page-title, .page-title, h1");
    if (!titleElement) return;
    if (titleElement.querySelector(".badge")) return;
    const badge = document.createElement("span");
    badge.className = `badge ${tagText}-badge`;
    badge.textContent = tagText;
    badge.style.transform = "translateY(-3px)";
    titleElement.appendChild(badge);
  }, []);
  return null;
};

<ReadinessBadge type="beta" />


## OpenAPI

````yaml GET /v2/routes
openapi: 3.1.0
info:
  title: Makeswift API
  description: Documentation for the Makeswift public REST API.
  version: '1.0'
servers:
  - url: https://api.makeswift.com
    description: Production server
security:
  - Authentication: []
tags:
  - name: Authentication
    description: ''
  - name: Workspace
    description: ''
  - name: Workspace Member
    description: ''
  - name: Site
    description: ''
  - name: Locale
    description: ''
  - name: Route
    description: ''
  - name: Page
    description: ''
  - name: Webhook Management
    description: ''
paths:
  /v2/routes:
    get:
      tags:
        - Route
      summary: List Routes
      description: Returns a list of routes for a site.
      operationId: SiteRouteController_listV2_v2
      parameters:
        - name: siteId
          in: query
          description: The site ID to list routes from.
          required: true
          schema:
            type: string
            format: uuid
        - name: limit
          in: query
          description: The maximum number of routes to return.
          required: false
          schema:
            type: number
            default: 20
            maximum: 100
            minimum: 1
        - name: startingAfter
          in: query
          description: >-
            The pagination cursor. This is used to indicate what ID to list
            from.
          required: false
          schema:
            type: string
            format: uuid
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListSiteRouteV2ResponseBodyDto'
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestResponseDto'
        '403':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenResponseDto'
components:
  schemas:
    ListSiteRouteV2ResponseBodyDto:
      type: object
      properties:
        object:
          type: string
          enum:
            - list
        data:
          type: array
          items:
            description: The route.
            type: object
            properties:
              object:
                type: string
                enum:
                  - route
              id:
                description: The ID of the route.
                type: string
                format: uuid
              pathname:
                description: The route pathname.
                type: string
                example: /furniture
            example:
              object: route
              id: 37b18c41-9752-4adf-9aef-f42ab4f74b04
              pathname: /furniture
            required:
              - object
              - id
              - pathname
        hasMore:
          description: The flag that indicates whether there are more routes available.
          type: boolean
      required:
        - object
        - data
        - hasMore
    BadRequestResponseDto:
      type: object
      properties:
        object:
          type: string
          enum:
            - error
        code:
          type: string
          enum:
            - bad_request
        message:
          type: string
      required:
        - object
        - code
        - message
    ForbiddenResponseDto:
      type: object
      properties:
        object:
          type: string
          enum:
            - error
        code:
          type: string
          enum:
            - forbidden
        message:
          type: string
      required:
        - object
        - code
        - message
  securitySchemes:
    Authentication:
      type: apiKey
      in: header
      name: x-api-key
      description: |-
        API key authentication. Accepts either:
        - App API key (e.g. sk_eczMHVBY9fV6GYFhvs53qcnxq7yptlXL3ABKOZtn6dQ)
        - Site API key (UUID format, e.g. 550e8400-e29b-41d4-a716-446655440000)

````