---
title: "Connect an event source and mint its endpoint"
method: POST
path: "/v1/event-sources/{source}"
tags: ["event-sources"]
---

# Connect an event source and mint its endpoint

`POST /v1/event-sources/{source}`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/event-sources/{source}`
- Auth: HTTP bearer

Creates the workspace's endpoint for one outside system and returns the URL to paste into that system's dashboard. **The URL is returned once and cannot be read again** — only its digest is stored. Re-connecting an already-connected source mints a NEW URL and clears the stored signing secret, which is what makes this the remedy if a URL leaks.

## Path parameters

- `source` string, required

## Headers

- `X-Tenant-Id` string, nullable

## Response `200`

Successful Response

- EventSourceCreated: A freshly minted endpoint. The ONLY response that ever carries the URL.
  - `source` EventSourceView, required: One connected system, as the dashboard sees it.
    - `source` string, required
    - `label` string, required
    - `status` string, required
    - `secret_configured` boolean, required
    - `last_event_at` string, date-time, nullable, required
  - `endpoint_url` string, required

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED)
- `404`: Not found
- `409`: Conflict
- `422`: Validation error

---

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