---
title: "Queue a missing upstream source for indexing and mirror review."
method: POST
path: "/api/source-requests"
tags: ["Sources", "Agent Docs"]
---

# Queue a missing upstream source for indexing and mirror review.

`POST /api/source-requests`

## Request

- Base URL: `https://huggingbay.xyz`
- URL: `https://huggingbay.xyz/api/source-requests`
- Auth: none declared

Public demand-capture endpoint for supported upstream references. It creates or updates a sanitized moderation queue item and never returns contact, referrer, user-agent, visitor bucket, or digest data.

**Inputs.** No path or query fields are required. The request body schema lists accepted fields and required values.

**Outputs.** See each status below for its media type, schema and headers. A missing record or unavailable capability is not a successful empty result.

**Errors.** API JSON failures use the documented response schema. Read code, message and next; retry only when the response allows it. Auth, invalid input and missing records need a caller change.

**Rate limits.** Write and protocol operations can have separate route-specific limits. Read Retry-After and retry_after_s when present; do not infer a write allowance from the public read budget.

**Example setup.** This example is not executed by documentation checks. Review the operation and obtain any required user consent before sending it.

## Request body

- SourceRequest
  - `repo` string, required: Full upstream URL or owner/name reference.
  - `source` 'huggingface' | 'modelscope' | 'github' | 'zenodo' | 'arxiv'
  - `useCase` string
  - `targetTool` string
  - `desiredFiles` string[]
  - `contact` string: Private operator-only contact hint. Never returned in public status responses.

## Response `200`

Existing request returned or source already indexed

- SourceRequestStatus
  - `schemaVersion` 'hugging-bay.source-request-status.v1', required
  - `generatedAt` string, required
  - `id` string, required
  - `status` string, required
  - `created` boolean
  - `newRequest` boolean
  - `indexed` boolean
  - `request` object, required
    - `source` string, required
    - `repo` string, required
    - `repoType` string
    - `requestCount` number, required
    - `firstRequestedAt` string
    - `lastRequestedAt` string
  - `artifact` ArtifactSummary (unresolved $ref)
  - `actions` object, required
  - `guidance` string[], required

## Other responses

- `201`: Source request created
- `422`: Unsupported or invalid source reference

---

[API](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api.md) · [All operations](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/huggingbay/apis/hugging-bay-public-api/revisions/865eb0f1b6ef?raw)
