Quotes

[Beta] Update Multiple Quotes

Changed on

This operation updates multiple quotes within a single document in one request — the batch variant of <a href="#/operations/quoteUpdate">Quote update</a>. The response is always 200 OK once the request itself is valid; each quote's outcome is reported independently in results[], so one bad quote does not fail the others. If several requests update the same quote in parallel, the last write wins. See QuotesBatchUpdateResult for the possible per-quote outcomes.

📘 Permissions

Requires the 'Can Edit Document' and 'Can Edit Content' permissions. The document must be in Draft (document.draft). Updating quotes is available on plans that include Product Catalog.

🚧 Beta

This endpoint is currently in beta and may change without notice.

🚧 Payload size

The maximum request body size is 512 KiB (524288 bytes). Larger requests return 413 before any quote is processed.

patch/public/v1/documents/{document_id}/quotes

Request

Path parameters

document_idstring required

Document ID

Request body

Example request

{
  "quotes": [
    {
      "id": "99aaa4f9-3250-4f5b-a953-6d7bfc5d8c9e",
      "currency": "USD",
      "sections": [
        {
          "items": [
            {
              "qty": 10,
              "price": 42.42,
              "cost": 42.42
            }
          ]
        }
      ]
    }
  ]
}

Response

The batch was processed. See results[].status for each quote's outcome.

countinteger required

Number of entries in results. Equal to the number of quotes in the request.

Example response

{
  "count": 2,
  "results": [
    {
      "id": "99aaa4f9-3250-4f5b-a953-6d7bfc5d8c9e",
      "status": "ok",
      "quote": {
        "id": "4b011d86-286b-4f86-b697-90a6ad3f1489",
        "currency": "USD",
        "total": "900",
        "summary": {
          "total": "900",
          "subtotal": "1000",
          "one_time_subtotal": "500",
          "recurring_subtotal": [
            {
              "billing_cycle": "monthly",
              "value": "500"
            }
          ],
          "total_discount": "100",
          "total_contract_value": "1900"
        },
        "sections": [
          {
            "summary": {
              "total": "1000",
              "subtotal": "1000",
              "one_time_subtotal": "500",
              "recurring_subtotal": [
                {
                  "billing_cycle": "monthly",
                  "value": "500"
                }
              ],
              "total_section_value": "1900"
            },
            "items": [
              {
                "qty": "1",
                "price": "500",
                "overall_total": "1000"
              }
            ],
            "total": "1000"
          }
        ]
      }
    }
  ]
}

Changes