Sources endpoints
This page is generated from the OpenAPI document of the API (src/Vellum.Web/openapi.json) when the documentation is built.
GET /api/projects/{projectId}/sources
Section titled “GET /api/projects/{projectId}/sources”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | array of SourceDto |
POST /api/projects/{projectId}/sources
Section titled “POST /api/projects/{projectId}/sources”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
Request body (application/json): CreateSourceRequest
| Field | Type | Required | Notes |
|---|---|---|---|
kind |
string or null | yes | |
name |
string or null | yes | |
repository |
string or null | yes | |
accountId |
integer (int64) or string (int64) or null | no | pattern "^-?(?:0|[1-9]\\d*)$" |
region |
string or null | no | |
apiKey |
string or null | no | |
path |
string or null | no |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | SourceDto |
400 |
Bad Request | ErrorResponse |
409 |
Conflict | ErrorResponse |
POST /api/projects/{projectId}/sources/upload
Section titled “POST /api/projects/{projectId}/sources/upload”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
Request body (application/json): UploadModelFileRequest
| Field | Type | Required | Notes |
|---|---|---|---|
path |
string or null | yes | |
content |
string or null | yes | |
name |
string or null | no |
| Status | Meaning | Body |
|---|---|---|
202 |
Accepted | UploadModelFileResponse |
400 |
Bad Request | ErrorResponse |
409 |
Conflict | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
GET /api/projects/{projectId}/sources/{sourceId}
Section titled “GET /api/projects/{projectId}/sources/{sourceId}”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | SourceDto |
404 |
Not Found | ErrorResponse |
PATCH /api/projects/{projectId}/sources/{sourceId}
Section titled “PATCH /api/projects/{projectId}/sources/{sourceId}”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
Request body (application/json): UpdateSourceRequest
| Field | Type | Required | Notes |
|---|---|---|---|
name |
string or null | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | SourceDto |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
DELETE /api/projects/{projectId}/sources/{sourceId}
Section titled “DELETE /api/projects/{projectId}/sources/{sourceId}”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
204 |
No Content | none |
404 |
Not Found | ErrorResponse |
POST /api/projects/{projectId}/sources/{sourceId}/archive
Section titled “POST /api/projects/{projectId}/sources/{sourceId}/archive”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
202 |
Accepted | StartScanResponse |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
413 |
Payload Too Large | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
503 |
Service Unavailable | ErrorResponse |
GET /api/projects/{projectId}/sources/kinds
Section titled “GET /api/projects/{projectId}/sources/kinds”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | SourceKindsDto |
GET /api/projects/{projectId}/sources/repositories
Section titled “GET /api/projects/{projectId}/sources/repositories”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
kind |
query | string | no |
owner |
query | string | no |
page |
query | integer (int32) or string (int32) | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | RepositoryListDto |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
502 |
Bad Gateway | ErrorResponse |
POST /api/projects/{projectId}/sources/bulk
Section titled “POST /api/projects/{projectId}/sources/bulk”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
Request body (application/json): BulkAddRequest
| Field | Type | Required | Notes |
|---|---|---|---|
kind |
string or null | yes | |
repositories |
array of string or null | yes | |
ref |
string or null | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | BulkAddResponse |
400 |
Bad Request | ErrorResponse |
POST /api/projects/{projectId}/sources/{sourceId}/scans
Section titled “POST /api/projects/{projectId}/sources/{sourceId}/scans”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
Request body (application/json): StartSourceScanRequest
| Field | Type | Required | Notes |
|---|---|---|---|
ref |
string or null | yes | |
includePaths |
array of string or null | yes | |
excludePaths |
array of string or null | yes | |
pullRequest |
integer (int32) or string (int32) or null | no | pattern "^-?(?:0|[1-9]\\d*)$" |
| Status | Meaning | Body |
|---|---|---|
202 |
Accepted | StartScanResponse |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
POST /api/projects/{projectId}/sources/{sourceId}/traces
Section titled “POST /api/projects/{projectId}/sources/{sourceId}/traces”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
fileName |
query | string | no |
Request body (application/json): Stream
| Status | Meaning | Body |
|---|---|---|
202 |
Accepted | TraceUploadResponse |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
413 |
Payload Too Large | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
PUT /api/projects/{projectId}/sources/{sourceId}/newrelic/key
Section titled “PUT /api/projects/{projectId}/sources/{sourceId}/newrelic/key”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
Request body (application/json): SetNewRelicKeyRequest
| Field | Type | Required | Notes |
|---|---|---|---|
apiKey |
string or null | yes |
| Status | Meaning | Body |
|---|---|---|
204 |
No Content | none |
400 |
Bad Request | ErrorResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
POST /api/projects/{projectId}/sources/{sourceId}/newrelic/test
Section titled “POST /api/projects/{projectId}/sources/{sourceId}/newrelic/test”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | NewRelicTestResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |
POST /api/projects/{projectId}/sources/newrelic/test
Section titled “POST /api/projects/{projectId}/sources/newrelic/test”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
Request body (application/json): TestNewRelicRequest
| Field | Type | Required | Notes |
|---|---|---|---|
accountId |
integer (int64) or string (int64) or null | yes | pattern "^-?(?:0|[1-9]\\d*)$" |
region |
string or null | yes | |
apiKey |
string or null | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | NewRelicTestResponse |
400 |
Bad Request | ErrorResponse |
GET /api/projects/{projectId}/sources/{sourceId}/snapshots
Section titled “GET /api/projects/{projectId}/sources/{sourceId}/snapshots”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | array of SourceSnapshotDto |
404 |
Not Found | ErrorResponse |
GET /api/projects/{projectId}/sources/{sourceId}/snapshots/compare
Section titled “GET /api/projects/{projectId}/sources/{sourceId}/snapshots/compare”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
base |
query | string (uuid) | yes |
head |
query | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | SnapshotComparisonDto |
404 |
Not Found | ErrorResponse |
GET /api/projects/{projectId}/sources/{sourceId}/documents
Section titled “GET /api/projects/{projectId}/sources/{sourceId}/documents”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | array of SourceDocumentDto |
404 |
Not Found | ErrorResponse |
GET /api/projects/{projectId}/sources/{sourceId}/bindings
Section titled “GET /api/projects/{projectId}/sources/{sourceId}/bindings”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | array of SourceBindingDto |
404 |
Not Found | ErrorResponse |
GET /api/projects/{projectId}/sources/push
Section titled “GET /api/projects/{projectId}/sources/push”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | AgentPushSettings |
403 |
Forbidden | ErrorResponse |
POST /api/projects/{projectId}/sources/push
Section titled “POST /api/projects/{projectId}/sources/push”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
Request body (application/json): AgentPushRequest
| Field | Type | Required | Notes |
|---|---|---|---|
name |
string | yes | |
commitSha |
string or null | yes | |
rules |
array of AgentPushRule | yes | |
scope |
AgentPushScope | yes | |
files |
array of AgentPushFile | yes | |
skipped |
array of AgentPushSkip | yes | |
facts |
array of AgentPushFact | yes | |
isComplete |
boolean | yes | |
extractionGap |
string or null | yes | |
filesListed |
integer (int32) or string (int32) | yes | pattern "^-?(?:0|[1-9]\\d*)$" |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | AgentPushResponse |
400 |
Bad Request | ErrorResponse |
403 |
Forbidden | ErrorResponse |
409 |
Conflict | ErrorResponse |
413 |
Payload Too Large | ErrorResponse |
429 |
Too Many Requests | ErrorResponse |
POST /api/projects/{projectId}/sources/{sourceId}/accept
Section titled “POST /api/projects/{projectId}/sources/{sourceId}/accept”| Parameter | In | Type | Required |
|---|---|---|---|
projectId |
path | string (uuid) | yes |
sourceId |
path | string (uuid) | yes |
Request body (application/json): AcceptSourceRequest
| Field | Type | Required | Notes |
|---|---|---|---|
acknowledgeImpact |
boolean | no | default false |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | DecideProposalsResponse |
404 |
Not Found | ErrorResponse |
409 |
Conflict | ErrorResponse |