For AI agents: the complete documentation index for the Restless API is available at https://build.restless.ai/llms.txt. This page is also available as Markdown at https://build.restless.ai/endpoints/patch-api-v1-projects-slug-data-sources.md (or send an Accept: text/markdown request header).

Update a data source

PATCH https://app.restless.ai/api/v1/projects/{slug}/data-sources

OpenAPI definition for a single operation of the Restless API - parameters, request body, and response schemas.

openapi: 3.1.0
info:
  title: Restless Public API
  version: 1.0.0
  description: >-
    Personal-API-key authenticated access to everything your Restless user can reach. Pass your key
    as `Authorization: Bearer rk_live_...`. Read-only keys are refused on writes.
servers:
  - url: https://app.restless.ai
security:
  - apiKey: []
tags:
  - name: Account
    description: The identity and access behind the API key.
  - name: Projects
    description: The projects this key can reach.
  - name: Logs
    description: Search captured API requests, or fetch one in full.
  - name: Users
    description: The end-users calling the API, including at-risk ones.
  - name: Metrics
    description: Time-series and top-endpoint aggregations over captured traffic.
  - name: Docs
    description: 'The public docs portal: its settings and its written content.'
  - name: Use cases
    description: Owner-curated task walkthroughs shown on the docs portal.
  - name: Context
    description: Extra knowledge the docs AI and MCP server answer from.
  - name: Recovery
    description: Next-step hints the SDK returns to agents that hit a known error.
  - name: Data sources
    description: Connected repos that feed docs and SDK content.
  - name: MCP
    description: The tool catalog the project's MCP server exposes.
  - name: Feedback
    description: Notes agents left about what confused or blocked them.
  - name: Members
    description: Who can reach the project, plus pending invites.
components:
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: A personal API key (starts with rk_live_).
  schemas:
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
            message:
              type: string
  responses:
    Unauthorized:
      description: Missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: No such project/resource you can access.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
paths:
  /api/v1/projects/{slug}/data-sources:
    patch:
      tags:
        - Data sources
      summary: Update a data source
      parameters:
        - name: slug
          in: path
          required: true
          schema:
            type: string
          description: Project slug.
        - name: sourceId
          in: query
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                siteUrl:
                  type: string
                  description: >-
                    Public URL of the live docs site. Empty clears it and removes the portal header
                    link.
              required:
                - siteUrl
      responses:
        '200':
          description: OK