---
title: "Create My Source"
method: POST
path: "/api/skill-catalog/my-sources"
tags: ["skill-catalog"]
---

# Create My Source

`POST /api/skill-catalog/my-sources`

## Request

- Base URL: `https://app.thinqos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.thinqos.com/api/skill-catalog/my-sources`
- Auth: none declared

Register a GitHub skill source owned by the caller, then sync it inline so
its skills show up immediately (v1: github_repo only).

## Headers

- `x-impersonate-identity-id` string, nullable

## Request body

- MySourceCreateBody: Register a user-owned GitHub skill source (TOS-1711 v1: github_repo only).
  - `name` string, required
  - `owner` string, required
  - `repo` string, required
  - `branch` string, nullable
  - `path_prefix` string, nullable

## Response `201`

Successful Response

- SkillSourceOut: Public representation of a skill source. ``*_secret`` config fields are redacted before this is constructed.
  - `id` string, uuid, required
  - `slug` string, required
  - `name` string, required
  - `kind` 'github_repo' | 'json_index' | 'skills_sh', required
  - `config` object
  - `trust_default` 'none' | 'allowed_tools_review' | 'verified', required
  - `enabled` boolean, required
  - `priority` integer, required
  - `tenant_kind` 'system' | 'identity', required
  - `tenant_id` string, uuid, nullable
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/thinqos/apis/thinqos-api.md) · [All operations](https://skmtc.dev/thinqos/apis/thinqos-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thinqos/apis/thinqos-api/revisions/ce2c2ce318b1?raw)
