Features How It Works Pricing Free Tools Blog About Contact
Sign in Start free trial

Integration

forquotez REST API and webhooks

forquotez has a REST API for quotes, contacts, companies, deals and forms, plus outbound webhooks for 12 events such as quote signed and deal stage changed. Requests use a bearer token, webhooks are signed with HMAC-SHA256, and API access is part of the Enterprise plan.

By the forquotez team. Last updated October 13, 2026.

What the API does

The API is for connecting forquotez to your own systems: a data warehouse, an internal dashboard, a billing tool or a provisioning script that should run when a quote is signed.

It has two parts. The REST API lets your code read data and make a small number of writes. Webhooks push a JSON payload to your server when something happens, so you do not have to poll.

All requests go to /api/v1 and return JSON. Each request needs a bearer token in the Authorization header. Tokens are created by an admin under Settings, in API and Webhooks. A token is shown once at creation, is limited to your organization's data, and can be revoked at any time.

The full endpoint reference, with request and response examples and signature verification code in PHP, Node.js and Python, is in the API documentation.

What syncs

DataDirectionWhen
Quotes: list (filter by status) and detail with line itemsReadOn request
Contacts: list (filter by email or company), detail, createRead and createOn request
Companies: list (filter by domain) and detailReadOn request
Deals: list (filter by status or pipeline), detail, update name, value, status and stageRead and updateOn request
Forms: list (filter by status) and detailReadOn request
Quote events: created, sent, viewed, signed, declined, expired, voidedWebhook, forquotez to your serverWhen the event happens
Signature events: request sent, all signatures completedWebhook, forquotez to your serverWhen the event happens
CRM events: deal created, deal stage changed, contact createdWebhook, forquotez to your serverWhen the event happens

That is 12 webhook events in total. Quotes and forms are read-only through the API: quotes are created in the runner, and forms in the quote builder.

Webhook delivery

Each delivery is an HTTPS POST with a JSON body containing the event name, a Unix timestamp and the event data. Three headers come with it:

  • X-Forquotez-Signature: an HMAC-SHA256 of the request body, computed with your endpoint's signing secret.
  • X-Forquotez-Timestamp: when the payload was generated.
  • X-Forquotez-Event: the event name, for example quote.signed.

Recompute the HMAC on your side and compare it before trusting a payload.

Setup steps

  1. Confirm your organization is on the Enterprise plan. The API and Webhooks section then appears under Settings.
  2. As an admin, create an API token and give it a name that says what uses it. Copy the value immediately, because it is shown only once.
  3. Make a test request to /api/v1/quotes with the header Authorization: Bearer followed by your token.
  4. To receive webhooks, add an HTTPS endpoint URL in the same settings screen and select the events you want.
  5. Copy the endpoint's signing secret and add signature verification to your receiver, using the examples in the API documentation.
  6. Trigger an event, such as saving a quote, and confirm your server receives and verifies it.

Limits and plan requirements

  • Plan: API access and webhooks are on the Enterprise plan only. See pricing. On other plans the API returns 403.
  • Rate limit: 60 requests per minute. Past that the API returns 429 with a Retry-After header.
  • Token scope: a token has read and write access to your organization's data. There are no per-resource scopes, so store tokens like passwords.
  • Retries: a delivery that cannot reach your server, or times out, is attempted up to 3 times, on a backoff schedule of 10, 30 and 60 seconds. Your endpoint should answer with a 2xx status within 10 seconds. Any other response is recorded as a failure.
  • Automatic disabling: after 10 consecutive failures an endpoint is disabled automatically. A successful delivery resets the count. Fix the receiver, then re-enable the endpoint in settings.
  • Writes: the only write operations are creating a contact and updating a deal.

Prefer a ready-made connection? See the HubSpot integration or the full integrations list.

Frequently asked questions

Which plan includes API access?

API access and webhooks are included on the Enterprise plan only.

How do I verify a forquotez webhook?

Compute an HMAC-SHA256 of the raw request body with your endpoint signing secret and compare it to the X-Forquotez-Signature header. The API documentation has sample code for PHP, Node.js and Python.

Can I create quotes through the API?

No. Quotes can be listed and read through the API, and they are created in the quote runner. The write operations available are creating a contact and updating a deal.

Build your first quote and present it on your next call.

Start a free 30-day trial