Settings & Account · updated 2026-08-22

    Connect other software with the Dumpster Controls API

    The Dumpster Controls API lets other software read your company data and send you leads, scoped to your company only. Use it to connect a CRM like GoHighLevel, receive webhooks when orders and payments happen, push leads from your website, or build reports. Access is approval-based and included free (with a daily limit on the free plan).

    Before you start

    • Admin access to your company account.
    1. 1

      Request API access

      Go to Settings then API. Read the "What is the Dumpster Controls API?" section, then write what you plan to connect and why, and submit the request. Our team reviews it quickly and approves or declines it. Keys never work until a request is approved.

    2. 2

      Create an API key

      Once approved, name a key and create it. The full key (dc_live_...) is shown ONE time only: copy it and store it somewhere safe. You can have up to 5 active keys, revoke any of them instantly, or schedule a key to auto-revoke on a date.

    3. 3

      Call the API from your server

      Send the key in the Authorization header: "Authorization: Bearer dc_live_...". Responses are JSON and money values are in dollars. Available now: GET /v1/orders, /v1/orders/{order_number}, /v1/customers, /v1/estimates, /v1/sizes, /v1/junk-jobs, /v1/leads, and POST /v1/leads. Full spec at dumpstercontrols.io/developers.

    4. 4

      Push leads in (GoHighLevel, website forms)

      POST /v1/leads with at least a name (and optionally phone, email, address, size, note). The lead appears in your Customers screen under Leads, where you can mark it contacted or convert it into a customer. Leads do not consume your daily API window; the free plan allows 200 leads/day.
    5. 5

      Receive real-time webhooks

      In Settings then API, add a webhook endpoint (an HTTPS URL on your server) and choose events: order.created, order.status_changed, payment.received, lead.created, junk_job.created, junk_job.status_changed. We POST each event signed with HMAC SHA-256 in the X-DC-Signature header; verify it with the endpoint secret (shown once). Failed deliveries retry with backoff.

    6. 6

      Protect your key

      Treat the key like a password. Send it only from your server, never from a website front-end or a public repository. If a key leaks, revoke it and create a new one. Access can be revoked by our team at any time, and fraud or abuse leads to immediate suspension under our Terms of Service.

    What happens next

    • The full developer documentation lives in the manual's "Developer API" module: authentication, every endpoint, webhook signature verification with code samples, and integration recipes for GoHighLevel, Zapier, Make and Sheets.

    Troubleshooting

    My key returns 401 Unauthorized.

    The key is wrong, revoked, or your company API access was turned off. Check the key in Settings then API and confirm access is still approved.

    I got 429 "daily_window_ended".

    On the free plan you have 10 minutes of API time per day. It resets tomorrow, or upgrade for unlimited API access.

    Can the API refund or charge customers?

    No. Money actions (refunds, charges, price changes) and order creation are excluded from the API by design.

    Related guides

    Still stuck? Talk to our team

    Open a support ticket inside the app and our team will answer there.

    Log in and open a support ticket

    Try it yourself, free

    The software is 100% free with unlimited orders. No credit card, no demo, no contract.

    Create your free account