Close CRM
Manage your Close CRM data — leads, contacts,
opportunities, and call logs — directly from InTouch jobs and the AI
assistant. The tool talks to the Close REST API
at https://api.close.com/api/v1 using nothing but the Python standard library.
What it does
A single tool that branches on an operation input to cover the core CRM
read and write paths:
| Operation | Method + endpoint | Purpose |
|---|---|---|
list_leads |
GET /lead/ |
List or search leads |
create_lead |
POST /lead/ |
Create a lead (company/organization) |
list_contacts |
GET /contact/ |
List or search contacts |
create_contact |
POST /contact/ |
Create a contact on a lead |
list_opportunities |
GET /opportunity/ |
List or filter opportunities |
create_opportunity |
POST /opportunity/ |
Create an opportunity on a lead |
log_call |
POST /activity/call/ |
Log an external call activity on a lead |
Every call returns:
status— the HTTP status code as a string (e.g.200,201,400)result— the raw Close response body as a JSON string
Inputs
| Input | Required | Used by | Notes |
|---|---|---|---|
apiKey |
yes | all | Your Close API key |
operation |
yes | all | One of the operations above |
query |
no | list_* |
Search/filter string (maps to Close query) |
limit |
no | list_* |
Max results (maps to _limit, default 100) |
leadId |
no | create_contact, create_opportunity, log_call |
Lead id (lead_xxx) |
name |
no | create_lead, create_contact |
Company name / person name |
direction |
no | log_call |
inbound or outbound (default outbound) |
value |
no | create_opportunity |
Monetary value in cents (integer) |
note |
no | create_opportunity, log_call |
Note text (HTML for calls) |
API key setup
- In Close, go to Settings → Developer → API Keys.
- Create an API key and copy it.
- Pass it to the tool as the
apiKeyinput.
Close authenticates with HTTP Basic Auth using the API key as the username and an empty password. A single API key fully authenticates every request — no OAuth flow or token exchange is required.
Treat the API key like a password. Prefer storing it in an InTouch runtime environment variable or credential and referencing it, rather than pasting it inline.
Examples
List the 10 most recent leads matching a search
operation = list_leads
query = company:Acme
limit = 10
Create a lead
operation = create_lead
name = Acme Corporation
Add a contact to a lead
operation = create_contact
leadId = lead_abc123
name = Jane Doe
Create an opportunity (value in cents — $5,000.00)
operation = create_opportunity
leadId = lead_abc123
value = 500000
note = Annual renewal
Log an outbound call
operation = log_call
leadId = lead_abc123
direction = outbound
note = <p>Left voicemail about renewal.</p>
Notes
- Non-2xx responses are not treated as failures — the tool returns
Close's
statusand error body so a job can inspect them. Only transport-level errors (DNS, connection refused, timeout) and missing required inputs fail the step. - Response bodies are capped at ~5 MB.
- Opportunity
valueis in cents, per the Close API convention.