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

# List all Skills

> Retrieve a paginated list of every published Skill scoped to your current Workspace, including IDs, names, versions, and timestamps.



## OpenAPI

````yaml /openapispec.json get /api/skills
openapi: 3.0.3
info:
  title: Valendata REST API
  version: 1.0.0
  description: >-
    Trigger Skills, manage Workflows, retrieve Runs, and stream structured
    results from any language using JSON over HTTPS.
servers:
  - url: https://api.valendata.com
    description: Production
security:
  - ApiKeyAuth: []
tags:
  - name: Skills
    description: Execute and inspect published Skills.
  - name: Workflows
    description: Trigger multi-step Workflows and list them.
  - name: Runs
    description: Read past Workflow run history.
paths:
  /api/skills:
    get:
      tags:
        - Skills
      summary: List all Skills
      description: >-
        Retrieve a paginated list of every published Skill scoped to your
        current Workspace, including IDs, names, versions, and timestamps.
      operationId: listSkills
      parameters:
        - name: page
          in: query
          schema:
            type: integer
            default: 1
            minimum: 1
          description: One-based page number to return.
        - name: page_size
          in: query
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 100
          description: Number of Skill objects per page. Accepts values between 1 and 100.
      responses:
        '200':
          description: Paginated list of Skills
          content:
            application/json:
              schema:
                type: object
                properties:
                  skills:
                    type: array
                    items:
                      $ref: '#/components/schemas/SkillSummary'
                  total:
                    type: integer
                    description: Total number of Skills in your Workspace.
                  page:
                    type: integer
                  page_size:
                    type: integer
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
        '500':
          $ref: '#/components/responses/InternalError'
      security:
        - SessionAuth: []
components:
  schemas:
    SkillSummary:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier (`skl_...`).
        name:
          type: string
        description:
          type: string
        version:
          type: string
        created_at:
          type: string
          format: date-time
    Error:
      type: object
      properties:
        detail:
          oneOf:
            - type: string
            - type: object
              additionalProperties: true
          description: >-
            Error message. Usually a plain string; may be a structured object
            for some errors.
      example:
        detail: Invalid or expired API key
  responses:
    Unauthorized:
      description: >-
        Unauthorized. The Authorization header is missing, malformed, or the
        credential is invalid or expired.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: Too many requests, or insufficient credits to start this run.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    InternalError:
      description: Internal server error on Valendata's side.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: vd_sk_...
      description: >-
        API key with the `vd_sk_` prefix. Create keys from Settings, API Keys in
        the dashboard.
    SessionAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Session token (JWT) obtained by calling `POST /api/auth/login` with your
        email and password.

````