Prices endpoints
This page is generated from the OpenAPI document of the API (src/Vellum.Web/openapi.json) when the documentation is built.
GET /api/workspaces/{workspaceId}/prices
Section titled “GET /api/workspaces/{workspaceId}/prices”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
cursor |
query | string | no |
limit |
query | integer (int32) or string (int32) | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | PageOfPriceEntryDto |
POST /api/workspaces/{workspaceId}/prices
Section titled “POST /api/workspaces/{workspaceId}/prices”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
Request body (application/json): CustomPriceRequest
| Field | Type | Required | Notes |
|---|---|---|---|
provider |
string | yes | |
region |
string or null | yes | |
sku |
string | yes | |
description |
string or null | yes | |
unit |
string | yes | |
unitPrice |
number (double) or string (double) or null | yes | pattern "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$" |
currency |
string | yes | |
effectiveDate |
string (date) | yes |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | PriceEntryDto |
DELETE /api/workspaces/{workspaceId}/prices/{priceId}
Section titled “DELETE /api/workspaces/{workspaceId}/prices/{priceId}”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
priceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
204 |
No Content | none |
409 |
Conflict | ErrorResponse |
POST /api/workspaces/{workspaceId}/prices/csv
Section titled “POST /api/workspaces/{workspaceId}/prices/csv”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
Request body (application/json): PriceCsvRequest
| Field | Type | Required | Notes |
|---|---|---|---|
csv |
string or null | yes |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | PriceCsvResult |
400 |
Bad Request | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/azure/meters
Section titled “GET /api/workspaces/{workspaceId}/prices/azure/meters”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
serviceName |
query | string | no |
region |
query | string | no |
skuName |
query | string | no |
meterName |
query | string | no |
currency |
query | string | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | AzureMeterPage |
502 |
Bad Gateway | ErrorResponse |
POST /api/workspaces/{workspaceId}/prices/azure
Section titled “POST /api/workspaces/{workspaceId}/prices/azure”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
Request body (application/json): AzureImportRequest
| Field | Type | Required | Notes |
|---|---|---|---|
meterId |
string | yes | |
skuId |
string or null | yes | |
armRegionName |
string or null | yes | |
currency |
string | yes |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | PriceEntryDto |
502 |
Bad Gateway | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/aws/services
Section titled “GET /api/workspaces/{workspaceId}/prices/aws/services”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | AwsServiceList |
502 |
Bad Gateway | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/aws/regions
Section titled “GET /api/workspaces/{workspaceId}/prices/aws/regions”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
service |
query | string | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | AwsRegionList |
502 |
Bad Gateway | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/aws/prices
Section titled “GET /api/workspaces/{workspaceId}/prices/aws/prices”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
service |
query | string | no |
region |
query | string | no |
search |
query | string | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | AwsPricePage |
502 |
Bad Gateway | ErrorResponse |
POST /api/workspaces/{workspaceId}/prices/aws
Section titled “POST /api/workspaces/{workspaceId}/prices/aws”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
Request body (application/json): AwsImportRequest
| Field | Type | Required | Notes |
|---|---|---|---|
service |
string | yes | |
region |
string | yes | |
rateCodes |
array of string or null | yes |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | array of PriceEntryDto |
502 |
Bad Gateway | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/gcp/services
Section titled “GET /api/workspaces/{workspaceId}/prices/gcp/services”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | GcpServiceList |
502 |
Bad Gateway | ErrorResponse |
GET /api/workspaces/{workspaceId}/prices/gcp/skus
Section titled “GET /api/workspaces/{workspaceId}/prices/gcp/skus”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
serviceId |
query | string | no |
region |
query | string | no |
search |
query | string | no |
currency |
query | string | no |
| Status | Meaning | Body |
|---|---|---|
200 |
OK | GcpSkuPage |
502 |
Bad Gateway | ErrorResponse |
POST /api/workspaces/{workspaceId}/prices/gcp
Section titled “POST /api/workspaces/{workspaceId}/prices/gcp”| Parameter | In | Type | Required |
|---|---|---|---|
workspaceId |
path | string (uuid) | yes |
Request body (application/json): GcpImportRequest
| Field | Type | Required | Notes |
|---|---|---|---|
serviceId |
string | yes | |
region |
string or null | yes | |
currency |
string | yes | |
skuIds |
array of string or null | yes |
| Status | Meaning | Body |
|---|---|---|
201 |
Created | array of PriceEntryDto |
502 |
Bad Gateway | ErrorResponse |