API reference
Connections
Connections attach providers (source, cloud, services) to a project. Secrets are masked before storage. See the guide for the full flow.
List connections
GET
/api/projects/{projectId}/connections[
{
"id": "con_1",
"provider": "github",
"status": "active",
"metadata": { "repos": ["acme/web"] },
"createdAt": "2026-06-29T10:00:00.000Z"
}
]Create a connection (token)
POST
/api/projects/{projectId}/connections| Field | Type | Description |
|---|---|---|
providerrequired | string | e.g. vercel, supabase, aws, gitlab. |
token | string | API token / key for token-based providers (masked before storage). |
metadata | object | Non-secret config, e.g. which repos/projects to scan. |
OAuth authorize URL
GET
/api/oauth/{provider}/authorize?projectId={projectId}Returns a url to redirect the user through the provider's consent screen. Used for GitHub and GitLab. See Connect a repository.
Update connection metadata
PATCH
/api/projects/{projectId}/connections/{connectionId}Merge non-secret config — for example, scoping a Vercel org token to selected projects.
Disconnect
DELETE
/api/projects/{projectId}/connections/{connectionId}Revokes the connection; access stops immediately.
curl -X DELETE \
https://api.riscly.com/api/projects/PROJECT_ID/connections/CONNECTION_ID \
-H "Authorization: Bearer $RISCLY_TOKEN" \
-H "x-org-id: $RISCLY_ORG_ID"