Introduction
Quotes API
Overview
Quotations with listing-backed lines. Quote /v1/catalog-types defines optional header details fields on quotes. Sellable items and listing catalog types are on the Listings service (/listings/v1/catalog-types, /listings/v1/listings).
Integration guide: Quotes service docs
OpenAPI v0.1.0 · source openapi/quotes.json
OpenAPI 3.0.0 · v0.1.0 · 56 operations
Operations
System
Liveness and generated documentation.
get/healthHealth check
/healthExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/health"Operation ID: getHealth
Responses
- 200
Service is running
application/json
get/v1/healthHealth check (versioned)
/v1/healthExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/health"Operation ID: getHealthV1
Responses
- 200
Service is running
application/json
Catalog
Quote header templates (optional `details` fields). Not listing/item catalog — use Listings for that.
get/v1/catalog-typesList quote catalog types
/v1/catalog-typesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/catalog-types"Quote-level header templates (optional `details` on quotes). Paginated. For sellable items use Listings `GET /listings/v1/catalog-types` and quote lines with `listing_id`.
Operation ID: listQuoteCatalogTypes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Catalog types
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/catalog-typesCreate quote catalog type
/v1/catalog-typesExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/catalog-types"Admin only. Defines optional header_fields validated on quote create. line_item_types is legacy metadata (quote lines use Listings).
Operation ID: createQuoteCatalogType
Request body(required)
application/jsonQuoteCatalogTypeCreate
Responses
- 201
Created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/catalog-types/{id}Get quote catalog type
/v1/catalog-types/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/catalog-types/example-id"Fetch one org-defined catalog type by id.
Operation ID: getQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Catalog type
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/v1/catalog-types/{id}Update quote catalog type
/v1/catalog-types/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/catalog-types/example-id"Admin only. PATCH partial fields.
Operation ID: updateQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuoteCatalogTypePatch
Responses
- 200
Updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/v1/catalog-types/{id}Delete quote catalog type
/v1/catalog-types/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/catalog-types/example-id"Admin only. Fails with 409 if any quote references this catalog_type_id.
Operation ID: deleteQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Deleted
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/catalog-typesList quote catalog types
/quotes/v1/catalog-typesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/catalog-types"Quote-level header templates (optional `details` on quotes). Paginated. For sellable items use Listings `GET /listings/v1/catalog-types` and quote lines with `listing_id`.
Operation ID: listQuoteCatalogTypes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Catalog types
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/catalog-typesCreate quote catalog type
/quotes/v1/catalog-typesExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/catalog-types"Admin only. Defines optional header_fields validated on quote create. line_item_types is legacy metadata (quote lines use Listings).
Operation ID: createQuoteCatalogType
Request body(required)
application/jsonQuoteCatalogTypeCreate
Responses
- 201
Created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/catalog-types/{id}Get quote catalog type
/quotes/v1/catalog-types/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/catalog-types/example-id"Fetch one org-defined catalog type by id.
Operation ID: getQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Catalog type
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/quotes/v1/catalog-types/{id}Update quote catalog type
/quotes/v1/catalog-types/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/catalog-types/example-id"Admin only. PATCH partial fields.
Operation ID: updateQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuoteCatalogTypePatch
Responses
- 200
Updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/quotes/v1/catalog-types/{id}Delete quote catalog type
/quotes/v1/catalog-types/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/catalog-types/example-id"Admin only. Fails with 409 if any quote references this catalog_type_id.
Operation ID: deleteQuoteCatalogType
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Deleted
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
Quotes
Quotes and listing-backed lines (CRUD + lifecycle).
get/v1/quotesList quotes
/v1/quotesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes"Operation ID: listQuotes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
| customer_id | query | string (uuid) | — |
| status | query | string | — |
Responses
- 200
Quotes
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotesCreate quote
/v1/quotesExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/quotes"Single quote resource (replaces legacy work orders + line items + nested quotes). Each line requires listing_id; description and unit_price are optional snapshots from Listings (filled via LISTINGS binding when omitted).
Operation ID: createQuote
Request body(required)
application/jsonQuoteCreate
Responses
- 201
Quote created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/quotes/{id}Get quote
/v1/quotes/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id"Operation ID: getQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/v1/quotes/{id}Update quote header
/v1/quotes/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id"Operation ID: updateQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuotePatch
Responses
- 200
Quote updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/v1/quotes/{id}Delete draft quote
/v1/quotes/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id"Operation ID: deleteQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 204
Deleted
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/quotes/{id}/linesList quote lines
/v1/quotes/{id}/linesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/lines"Operation ID: listQuoteLines
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Lines
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
put/v1/quotes/{id}/linesReplace quote lines
/v1/quotes/{id}/linesExample request
curl -sS \
-X PUT \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/lines"Draft only. Replaces all lines with listing-backed snapshots.
Operation ID: replaceQuoteLines
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuoteLineReplace
Responses
- 200
Lines replaced
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/issueIssue quote
/v1/quotes/{id}/issueExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/issue"Operation ID: issueQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/sendSend quote
/v1/quotes/{id}/sendExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/send"Operation ID: sendQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/rejectReject quote
/v1/quotes/{id}/rejectExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/reject"Operation ID: rejectQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/reviseRevise quote
/v1/quotes/{id}/reviseExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/revise"Operation ID: reviseQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/acceptAccept quote
/v1/quotes/{id}/acceptExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
-d '{
}' \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/accept"Operation ID: acceptQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonobject
Responses
- 200
Quote accepted
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/quotesList quotes
/quotes/v1/quotesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes"Operation ID: listQuotes
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
| customer_id | query | string (uuid) | — |
| status | query | string | — |
Responses
- 200
Quotes
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotesCreate quote
/quotes/v1/quotesExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes"Single quote resource (replaces legacy work orders + line items + nested quotes). Each line requires listing_id; description and unit_price are optional snapshots from Listings (filled via LISTINGS binding when omitted).
Operation ID: createQuote
Request body(required)
application/jsonQuoteCreate
Responses
- 201
Quote created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/quotes/{id}Get quote
/quotes/v1/quotes/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id"Operation ID: getQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/quotes/v1/quotes/{id}Update quote header
/quotes/v1/quotes/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id"Operation ID: updateQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuotePatch
Responses
- 200
Quote updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/quotes/v1/quotes/{id}Delete draft quote
/quotes/v1/quotes/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id"Operation ID: deleteQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 204
Deleted
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/quotes/{id}/linesList quote lines
/quotes/v1/quotes/{id}/linesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/lines"Operation ID: listQuoteLines
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Lines
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
put/quotes/v1/quotes/{id}/linesReplace quote lines
/quotes/v1/quotes/{id}/linesExample request
curl -sS \
-X PUT \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/lines"Draft only. Replaces all lines with listing-backed snapshots.
Operation ID: replaceQuoteLines
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonQuoteLineReplace
Responses
- 200
Lines replaced
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/issueIssue quote
/quotes/v1/quotes/{id}/issueExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/issue"Operation ID: issueQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/sendSend quote
/quotes/v1/quotes/{id}/sendExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/send"Operation ID: sendQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/rejectReject quote
/quotes/v1/quotes/{id}/rejectExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/reject"Operation ID: rejectQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/reviseRevise quote
/quotes/v1/quotes/{id}/reviseExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/revise"Operation ID: reviseQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Quote
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/acceptAccept quote
/quotes/v1/quotes/{id}/acceptExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
-d '{
}' \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/accept"Operation ID: acceptQuote
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonobject
Responses
- 200
Quote accepted
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
Evidence
Media attached to a quote.
get/v1/quotes/{id}/evidenceList quote evidence
/v1/quotes/{id}/evidenceExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/evidence"Operation ID: listQuoteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
| stage | query | string | — |
| media_type | query | string | — |
| customer_visible | query | boolean | — |
Responses
- 200
Evidence
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/quotes/{id}/evidenceCreate evidence
/v1/quotes/{id}/evidenceExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/evidence"Operation ID: createQuoteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonEvidenceCreate
Responses
- 201
Evidence created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/evidence/{id}Get evidence
/v1/evidence/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/evidence/example-id"Operation ID: getEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Evidence
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/v1/evidence/{id}Update evidence
/v1/evidence/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
-d '{
}' \
"https://api.mayawealth.co.uk/quotes/v1/evidence/example-id"Operation ID: updateEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonobject
Responses
- 200
Evidence updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/v1/evidence/{id}Delete evidence
/v1/evidence/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/evidence/example-id"Operation ID: deleteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 204
Deleted
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/quotes/{id}/evidenceList quote evidence
/quotes/v1/quotes/{id}/evidenceExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/evidence"Operation ID: listQuoteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
| stage | query | string | — |
| media_type | query | string | — |
| customer_visible | query | boolean | — |
Responses
- 200
Evidence
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/evidenceCreate evidence
/quotes/v1/quotes/{id}/evidenceExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/evidence"Operation ID: createQuoteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonEvidenceCreate
Responses
- 201
Evidence created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/evidence/{id}Get evidence
/quotes/v1/evidence/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/evidence/example-id"Operation ID: getEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Evidence
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
patch/quotes/v1/evidence/{id}Update evidence
/quotes/v1/evidence/{id}Example request
curl -sS \
-X PATCH \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
-d '{
}' \
"https://api.mayawealth.co.uk/quotes/quotes/v1/evidence/example-id"Operation ID: updateEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonobject
Responses
- 200
Evidence updated
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
delete/quotes/v1/evidence/{id}Delete evidence
/quotes/v1/evidence/{id}Example request
curl -sS \
-X DELETE \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/evidence/example-id"Operation ID: deleteEvidence
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 204
Deleted
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
Signatures
Electronic signatures on a quote.
post/v1/quotes/{id}/signature-requestsCreate signature request
/v1/quotes/{id}/signature-requestsExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/signature-requests"Operation ID: createQuoteSignatureRequest
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonSignatureRequestCreate
Responses
- 201
Request created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/quotes/{id}/signaturesList quote signatures
/v1/quotes/{id}/signaturesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/quotes/example-id/signatures"Operation ID: listQuoteSignatures
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Signatures
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/v1/signatures/{id}Get signature
/v1/signatures/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/signatures/example-id"Operation ID: getSignature
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Signature
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/v1/signature-requests/{requestId}/completeComplete signature request
/v1/signature-requests/{requestId}/completeExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/v1/signature-requests/example-id/complete"Operation ID: completeSignatureRequest
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| requestId* | path | string (uuid) | — |
Request body(required)
application/jsonSignatureCompleteRequest
Responses
- 200
Signature completed
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/quotes/{id}/signature-requestsCreate signature request
/quotes/v1/quotes/{id}/signature-requestsExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/signature-requests"Operation ID: createQuoteSignatureRequest
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Request body(required)
application/jsonSignatureRequestCreate
Responses
- 201
Request created
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/quotes/{id}/signaturesList quote signatures
/quotes/v1/quotes/{id}/signaturesExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/quotes/example-id/signatures"Operation ID: listQuoteSignatures
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Signatures
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/signatures/{id}Get signature
/quotes/v1/signatures/{id}Example request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/signatures/example-id"Operation ID: getSignature
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| id* | path | string (uuid) | — |
Responses
- 200
Signature
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
post/quotes/v1/signature-requests/{requestId}/completeComplete signature request
/quotes/v1/signature-requests/{requestId}/completeExample request
curl -sS \
-X POST \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
-H "Content-Type: application/json" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/signature-requests/example-id/complete"Operation ID: completeSignatureRequest
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| requestId* | path | string (uuid) | — |
Request body(required)
application/jsonSignatureCompleteRequest
Responses
- 200
Signature completed
application/json
- 400
Malformed request.
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 404
The requested resource was not found.
application/json
- 409
Conflict — version mismatch, idempotency conflict, or invalid state transition.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
Audit
Immutable change log for this service.
get/v1/auditAudit trail
/v1/auditExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/v1/audit"Operation ID: listAudit
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Audit events
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json
get/quotes/v1/auditAudit trail
/quotes/v1/auditExample request
curl -sS \
-X GET \
-H "Accept: application/json" \
-H "Authorization: Bearer <jwt>" \
"https://api.mayawealth.co.uk/quotes/quotes/v1/audit"Operation ID: listAudit
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| page | query | integer | — |
| page_size | query | integer | — |
Responses
- 200
Audit events
application/json
- 401
Missing or invalid JWT.
application/json
- 403
Authenticated but not permitted.
application/json
- 422
Validation failed.
application/json
- 429
Rate limit exceeded.
application/json
- 500
Unexpected server error.
application/json