Dumpster Controls · agent page

This is the agent-optimized version of https://dumpstercontrols.io/help/api/receive-real-time-webhooks: the same content as the human page, without scripts, styles, animations or navigation. People should open the full page.

Canonical page
https://dumpstercontrols.io/help/api/receive-real-time-webhooks
Last updated
2026-08-22
Tokens
1,321 tokens (cl100k_base), within the 2,000-token budget for a help page
Size
9.7 KB for this page, against 22 KB for the human page (55% smaller)
Markdown
https://dumpstercontrols.io/help/api/receive-real-time-webhooks.md, or send Accept: text/markdown to the canonical URL
Cite as
Receive real-time webhooks. Dumpster Controls. https://dumpstercontrols.io/help/api/receive-real-time-webhooks (accessed 2026-10-05).
More for agents
Facts sheet · llms.txt · llms-full.txt · All agent pages · Product manual

Developer API · updated 2026-08-22

Receive real-time webhooks

Instead of polling, let Dumpster Controls push events to your server the moment they happen. Webhooks are signed, retried with backoff, and configured entirely from Settings, API.

  1. ## Add an endpoint
    Settings, API, Webhooks: enter a public HTTPS URL on your server and pick the events you want. Up to 5 endpoints per company. On creation you receive the endpoint's signing secret (dcwh_...), shown once: store it like a password.
  2. ## The six events
    order.created (a new order exists), order.status_changed (includes previous_status), payment.received (an order's payment completed, including orders born already paid from online booking), lead.created, junk_job.created and junk_job.status_changed.
  3. ## What a delivery looks like
    We POST JSON to your URL:
    ```
    { "event": "order.created", "created_at": "...", "data": { "order_number": "1042", "status": "scheduled", "payment_status": "paid", "delivery_date": "...", "pickup_date": "...", "total_price": 495, "customer_ref": "...", "created_at": "..." } }
    ```
    Headers: X-DC-Event (the event type) and X-DC-Signature (see the verification guide). Respond with any 2xx within 10 seconds to acknowledge.
    payment_status in the payload is one of: unpaid, paid, refunded, no_charge. no_charge means the order has no billing phase: no invoice, nothing owed, and no payment.received event ever fires for it.
  4. ## Retries and failure handling
    Failed deliveries retry with backoff at roughly 1, 5, 30 and 120 minutes; the fifth consecutive failure drops the event and your admins are emailed. An endpoint that fails 20 times in a row is automatically disabled (also with an email); fix it and press Re-enable in Settings, API. Deliveries are at-least-once: very rarely you may receive an event twice, so make handlers idempotent (key on order_number plus event plus timestamp).
  5. ## Rotate the secret
    The Rotate secret button issues a new signing secret (shown once) and invalidates the old one. Rotate first (the new secret only exists after rotation and the old one stops immediately), then update your server right away: any delivery that fails in the gap is retried with backoff and succeeds once your server has the new secret.

Troubleshooting

My endpoint gets nothing.

Check it is active in Settings, API (auto-disable kicks in after 20 straight failures), that the URL is public HTTPS (no localhost, no private hosts), and that the event you expect is checked on the endpoint.

Do webhook deliveries use my API window?

No. Webhooks are free of the window and rate limits on every plan.

Related guides

© 2026 Dumpster Controls. All rights reserved. Made in the USA.

Frequently asked questions

Is Dumpster Controls really free?

Yes. The software is free: dispatch, online booking, the driver app, invoicing, the Tresha AI assistant and every other feature, with no monthly fee, no trial period and no credit card to sign up. The only cost on the free plan is optional card processing when a customer pays by card through the platform: 2.99% plus $3.99 per transaction on the free plan. An optional Unlimited plan at $169 per month lowers that to 2.99% plus $0.30. Prices as published on dumpstercontrols.io/pricing on 2026-09-23.

Do you charge per driver, per truck or per order?

No. There is no per-driver, per-truck, per-user or per-order fee, and no order limit. A company with one truck and a company with twenty pay the same for the software: nothing.

Is there a contract?

No. There is no contract, no minimum term and no setup fee. You create the account yourself, and on the free plan there is nothing to cancel because nothing is billed. The optional Unlimited plan is billed month to month.

Which countries and languages are supported?

Dumpster Controls serves hauling companies in the United States and Canada. The app interface and the Tresha AI assistant are available in English, Spanish and Portuguese. The public pages, such as the blog, the help center and the landfill finder, are in English.

How do I switch from another dumpster software?

Create a free account at dumpstercontrols.io/login, with no sales call and no credit card. Then import your customers from a CSV file using the template provided in the app; past orders can also be imported from a CSV. Container sizes and pricing are set up in Settings. The landfill database, with 1,750 active US and Canadian landfills as counted on 2026-10-01, is already loaded, so disposal sites do not need to be typed in. Step-by-step guides are at dumpstercontrols.io/help.