Blog | GenFlows

Close CRM API & Webhooks for Outbound Automation (2026)

Written by GenFlows Team | Oct 26, 2026, 4:29:34 PM

TL;DR

  • Close has a full REST API and webhooks. Auth is an API key sent as the Basic-auth username with a blank password, or OAuth 2 for apps other organizations will use.
  • There is no “reply received” event. Subscribe to activity.email.created and filter for incoming direction (directional on the exact payload field).
  • Verify every webhook. Close signs payloads with HMAC-SHA256 in the close-sig-hash header.
  • Retries last up to 72 hours, and a subscription is paused after 3 days of failed deliveries, so queue payloads and process them asynchronously.
  • No code? Zapier lists 25 triggers and 45 actions for Close, including find-or-create actions that avoid duplicate leads.

Most outbound stacks end in the same place: replies and meetings land in the CRM, and someone has to move the lead to the right status. In Close you can do that without a person touching it, using the API, webhooks or Zapier. This guide covers what Close actually exposes, the limits that bite, and four automations we set up for cold email and LinkedIn outbound teams.

If you only need built-in automation, start with Close workflows and sequences. This post is for what workflows cannot do: reacting to events from other tools and pushing data in and out.

Sourcing note: details come from Close's developer documentation, pricing page and Zapier's Close listing, read in October 2026. Where a page did not state something (webhook create-body fields, OAuth scopes, duplicate handling on lead create, Make and n8n native modules, plan gating of webhooks) we say so or mark it (directional). Test in a sandbox before relying on it.

The Short Answer

Use Zapier (or another no-code tool) if your automation is one trigger to one action, such as a new meeting creating an opportunity. Use webhooks plus a small script or n8n/Make HTTP module when you need filtering, signature checks or to fan one Close event out to several tools. Use the REST API to push leads in from Clay, HeyReach or Smartlead, and always search before you create so you do not duplicate leads.

Authentication: API Keys vs OAuth

Create an API key under Settings, Developer, API Keys. You send it as the HTTP Basic-auth username with an empty password against https://api.close.com/api/v1. Each key belongs to one user in one organization and inherits that user's permissions; the docs do not describe separate key scopes. Close positions keys for scripts and internal integrations. For a product used by other Close customers, use OAuth 2.

Practical tip: create a dedicated integration user and key rather than using a rep's key. Activity created through the API is then attributed to that user, and nothing breaks when a rep leaves.

Rate Limits

Close limits requests per endpoint group (a URL path plus HTTP method), per API key and per organization, and the organization limit is currently three times the key limit. Every response carries a RateLimit header with limit, remaining and reset values. A 429 includes retry-after and rate_reset; Close recommends using rate_reset. Some endpoints have stricter limits. Close does not publish fixed per-endpoint numbers, so build your push jobs to read the header and back off rather than hard-coding a rate.

The Close Data Model for Outbound

A Lead is the company or account. Contacts, opportunities, tasks and activities (emails, calls, notes, meetings, status changes) hang off a Lead. That matters for outbound: a prospect from Clay becomes a Lead with one or more Contacts, not a standalone person. Custom fields are returned as custom.FIELD_ID, and the older custom dictionary is deprecated. Every plan lists 250 custom fields. Good fields to create for outbound include source campaign, sequencer, LinkedIn URL and reply category. See pushing leads from Clay into Close for the field mapping.

Avoiding duplicate leads

We could not confirm from the docs whether creating a lead rejects or merges a duplicate (directional). Assume it does not. Search for an existing lead by email domain or URL first, then update or create. Zapier's find-or-create actions give you that pattern without code, and Close has a merge-leads endpoint for cleaning up. See CRM data hygiene for outbound teams.

Webhooks: What You Can Subscribe To

A webhook subscription is a URL plus the object types and actions you care about. Close POSTs JSON with a subscription_id and an event object containing the action, object type and ID, the new data, previous_data, changed_fields, lead_id and user_id. The events that matter for outbound:

EventUse it for
lead.created / lead.updatedSyncing new or changed leads to other tools; status changes also fire lead.updated
activity.email.createdCatching replies (filter for incoming direction)
activity.email.sentLogging outbound touches from synced mailboxes
activity.meeting.scheduled / .completed / .canceledCreating opportunities, prep tasks and no-show follow-up
activity.lead_status_change.createdReacting when a lead moves to Interested or Not Interested
activity.opportunity_status_change.createdWon/lost handoffs, Slack alerts, onboarding
unsubscribed_email.createdPushing suppressions to your sequencer
task.completedClosing the loop on follow-up tasks

The docs list events for leads, contacts, opportunities, calls, SMS, notes, form submissions, custom activities and tasks as well. Note that opportunity.status_change is not a valid event name; use activity.opportunity_status_change.created or opportunity.updated.

Security and delivery rules

  • Verify signatures. Compute HMAC-SHA256 over the close-sig-timestamp value concatenated with the raw request body, keyed with the signature_key returned when you create the subscription, and compare it to close-sig-hash.
  • Expect retries and disorder. Failed deliveries retry with exponential backoff (up to every 20 minutes) for up to 72 hours, and ordering is not guaranteed. Make handlers idempotent using the event id.
  • Do not block. Close recommends queueing payloads and processing them asynchronously.
  • A subscription can be paused. That happens if the backlog reaches 100,000 events or every delivery fails for 3 days. Reactivate it through the API.
  • Limits. 40 subscriptions per organization. The event log API keeps 30 days of history, which you can use to backfill missed events.

Zapier, Make and n8n

Zapier's Close listing shows 25 triggers, 45 actions, 14 searches and 8 find-or-create actions. Triggers include New Lead, New Lead in Status, New Lead in Smart View, New Opportunity in Status, New Email, New Meeting and New Form Submission. Actions include create, update and merge lead, create contact, opportunity, note and task, send email or SMS, and subscribe contacts to a workflow. Zapier is listed on every Close plan.

We did not verify native Make or n8n modules for Close. Any tool with an HTTP request module and a webhook trigger can still call the REST API and receive Close webhooks (directional). For how the three tools compare, see n8n vs Make vs Zapier for GTM.

Four Outbound Automations Worth Building

AutomationTriggerWhat it does
Reply to statusactivity.email.created (incoming)Looks up the lead, sets status to Replied, writes the reply category to a custom field, creates a follow-up task
Meeting to opportunityactivity.meeting.scheduledFinds or creates an opportunity at Meeting Booked and creates a prep task
Won/lost handoffactivity.opportunity_status_change.createdPosts to Slack, kicks off onboarding or writes the outcome back to Clay
Suppression syncunsubscribed_email.createdAdds the address to the suppression list in Smartlead, Instantly or HeyReach

These are our patterns built from the documented events, not Close-published recipes, so confirm payload fields in a test account first. Pair the reply automation with a clear reply taxonomy; our guide to handling cold email replies covers the categories. For the LinkedIn side, see HeyReach and Close, and for sender tools see Close CRM cold email integration.

Which Plan Do You Need?

Close's pricing page lists the API and event log, Zapier and 250 custom fields on every plan. Automated workflows, custom activities and bulk email start at Growth, and custom objects and customizable roles are on Scale. The pricing page does not say whether webhooks are gated, so check with Close if they matter to your plan choice. Full prices are in our Close CRM pricing guide.

Common Pitfalls

  • Hard-coded rate limits. Read the header and honor rate_reset.
  • Treating a rep's key as infrastructure. Use an integration user.
  • Processing in the request. Acknowledge fast, process from a queue.
  • Skipping signature checks. Anyone who finds the URL can post fake events.
  • Replying loops. Status changes you make through the API fire events too; filter on user ID so your own updates do not retrigger the automation.

Frequently Asked Questions

How do I authenticate with the Close API?

Use an API key as the HTTP Basic-auth username with a blank password, or OAuth 2 if you are building an integration for other organizations. Keys are created under Settings, Developer, API Keys.

What is the Close API rate limit?

Limits apply per endpoint group, per key and per organization, with the organization limit currently three times the key limit. Close does not publish fixed numbers. Read the RateLimit header and wait for rate_reset after a 429.

Is there a webhook for a cold email reply?

Not a dedicated one. Subscribe to activity.email.created and filter for incoming emails by checking the direction in the payload (confirm the exact field in a test).

How do I verify a Close webhook?

Compute an HMAC-SHA256 of the close-sig-timestamp value plus the raw body using your subscription's signature_key and compare it with the close-sig-hash header.

What happens if my webhook endpoint is down?

Close retries with exponential backoff for up to 72 hours. If every delivery fails for 3 days, or the backlog hits 100,000 events, the subscription is paused and must be reactivated through the API. You can backfill from the 30-day event log.

Do I need a paid plan to use Zapier with Close?

Zapier is listed on every Close plan, including the entry plan. Zapier itself has its own pricing. Automated workflows inside Close need Growth or above.

Want your outbound events wired into Close without the engineering? See our Close vs HubSpot comparison to confirm Close is the right CRM, then talk to our team.

By the GenFlows GTM engineering team. Close documentation and pricing checked October 2026. Last updated October 2026.