> ## Documentation Index
> Fetch the complete documentation index at: https://uqp.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# REST (OpenAPI)

> Exchange UQP requests, estimates and reviewed quotes through the draft REST OpenAPI reference contract.

You can inspect the canonical source from spec/bindings/rest/openapi.yaml below. These are **reference, not production** bindings; nothing is deployed. No UCP conformance is claimed. Example data, not real prices.

You submit a request, poll validation, obtain trusted provider review and explicitly approve the exact deposit and policies before checkout handoff. The provider is merchant of record; UQP never holds funds. Only trusted processor confirmation can mark a deposit paid. See [the lifecycle](https://uqp.dev/docs/lifecycle.md).

The [self-contained OpenAPI](https://uqp.dev/docs/api-reference/openapi.bundled.json) inlines every schema reference for the API reference pages; the source below is unchanged.

## Authorization and deferred bindings

OAuth 2.0 is the intended authorization foundation for protected operations, but scopes, grant profiles, issuer discovery and token requirements are not defined. OAuth is not itself an identity protocol. Enforce business access and consent at the service boundary; schema validation is not authorization. Keep credentials and contact information out of answers. A2A is deferred; no UQP task mapping is defined.

See [checkout handoff](https://uqp.dev/docs/checkout-handoff.md) for deposit approval and payment boundaries.

## Source

```yaml theme={null}
{
  "openapi": "3.1.0",
  "info": {
    "title": "UQP reference bindings \u2014 not production",
    "version": "0.1.0",
    "description": "No UCP conformance claim. OAuth 2.0 bearer authorization is described only, not implemented by the local fixture."
  },
  "paths": {
    "/manifest": {
      "get": {
        "operationId": "get_manifest",
        "summary": "get manifest",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "../../schemas/quote-manifest.json"
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/quotes": {
      "post": {
        "operationId": "request_quote",
        "summary": "request quote",
        "parameters": [
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "../../schemas/quote-request.json"
              }
            }
          }
        }
      }
    },
    "/quotes/{id}": {
      "get": {
        "operationId": "get_quote",
        "summary": "get quote",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/quotes/{id}/accept": {
      "post": {
        "operationId": "accept_quote",
        "summary": "accept quote",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    },
                    "checkout": {
                      "$ref": "../../schemas/common.json#/$defs/checkoutHandoff",
                      "type": "object",
                      "properties": {
                        "url": {
                          "type": "null"
                        }
                      }
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate",
                    "quote",
                    "checkout"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "../../schemas/common.json#/$defs/clientApproval"
              }
            }
          }
        }
      }
    },
    "/quotes/{id}/review": {
      "post": {
        "operationId": "review_quote",
        "summary": "Trusted artist review issues binding Quote",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "403": {
            "description": "Trusted artist authorization required"
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "valid_until": {
                    "type": "string",
                    "format": "date-time"
                  }
                },
                "required": [
                  "valid_until"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/quotes/{id}/decline": {
      "post": {
        "operationId": "decline_quote",
        "summary": "Decline Quote",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/quotes/{id}/resubmit": {
      "post": {
        "operationId": "resubmit_quote",
        "summary": "Correct a mutation-required payload on the same ID",
        "parameters": [
          {
            "name": "Idempotency-Key",
            "in": "header",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "minLength": 1
                    },
                    "state": {
                      "$ref": "../../schemas/lifecycle.json"
                    },
                    "estimate": {
                      "$ref": "../../schemas/estimate.json"
                    },
                    "quote": {
                      "$ref": "../../schemas/quote.json"
                    }
                  },
                  "required": [
                    "id",
                    "state",
                    "estimate"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "400": {
            "description": "Invalid request",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "404": {
            "description": "Not found",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "409": {
            "description": "Conflict; current_state on lifecycle conflicts",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "error": {
                      "type": "object",
                      "properties": {
                        "code": {
                          "type": "string",
                          "minLength": 1
                        },
                        "message": {
                          "type": "string",
                          "minLength": 1
                        },
                        "current_state": {
                          "$ref": "../../schemas/lifecycle.json"
                        }
                      },
                      "required": [
                        "code",
                        "message"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "error"
                  ],
                  "additionalProperties": false
                }
              }
            },
            "headers": {
              "RateLimit-Policy": {
                "description": "Optional per-business policy; no protocol-wide values.",
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "../../schemas/quote-request.json"
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "QuoteManifest": {
        "$ref": "../../schemas/quote-manifest.json"
      },
      "QuoteRequest": {
        "$ref": "../../schemas/quote-request.json"
      },
      "Quote": {
        "$ref": "../../schemas/quote.json"
      },
      "Deposit": {
        "$ref": "../../schemas/common.json#/$defs/deposit"
      },
      "PriceRange": {
        "$ref": "../../schemas/common.json#/$defs/priceRange"
      },
      "ClientApproval": {
        "$ref": "../../schemas/common.json#/$defs/clientApproval"
      },
      "Attribution": {
        "$ref": "../../schemas/common.json#/$defs/attribution"
      },
      "RoutingPolicy": {
        "$ref": "../../schemas/common.json#/$defs/routingPolicy"
      },
      "Quantity": {
        "$ref": "../../schemas/common.json#/$defs/quantity"
      },
      "QuantityUnit": {
        "$ref": "../../schemas/common.json#/$defs/quantityUnit"
      },
      "CheckoutHandoff": {
        "$ref": "../../schemas/common.json#/$defs/checkoutHandoff"
      }
    }
  }
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.