.png)
Close CRM Integration Guide
Connect Close CRM with enterprise applications through its REST API, selected-event webhooks, OAuth 2.0, and Martini workflows.
Close CRM integration options at a glance
Close CRM provides a REST API for reading and modifying Leads, Contacts, Opportunities, Activities, Users, and related CRM data. It supports API key authentication and OAuth 2.0 for delegated application access. Close also provides webhook-style notifications for selected resources and events, although coverage should be confirmed for each integration. Martini can consume the REST API, expose endpoints for inbound Close notifications, paginate through list responses, map Close JSON into canonical models, and orchestrate scheduled or event-driven synchronization. For larger loads, workflows can use bounded batches, checkpoints, retries, and idempotent writes rather than assuming a universal bulk API.
Common Close CRM integration patterns
Common Close CRM data objects used in integrations
Authentication and security considerations
Authentication options
Close supports API key authentication through HTTP Basic Authentication and OAuth 2.0 for delegated application access. Select the model appropriate to the organization and authorization boundary.
Credential protection
- Store API keys, OAuth client credentials, access tokens, and refresh tokens in Martini secrets or secured environment configuration.
- Use least-privilege permissions and separate credentials for development, testing, and production.
- Account for OAuth token expiration and refresh behavior.
- Do not expose Close credentials through public Martini APIs, mappings, logs, or error payloads.
Data protection
Email content, phone numbers, call notes, and sales information may be sensitive. Restrict exposed endpoints and avoid logging message content or credentials.
Operational considerations for Close CRM integrations
Rate limits and retries
Confirm current Close limits for the account and endpoints. Use bounded concurrency, exponential backoff for HTTP 429 and transient 5xx responses, and separate historical loads from real-time processing.
Pagination and checkpoints
Process list results in bounded pages and persist page, cursor, or object checkpoints. Do not assume that a long-running result set remains static.
Idempotency and relationships
Store Close IDs and external IDs, use deterministic matching rules, and treat Activities carefully because replaying a write can create duplicate sales history. Confirm whether related objects are embedded or require additional retrieval.
Webhooks and reconciliation
Close webhook coverage is selected-event coverage. Validate notifications, acknowledge promptly, persist event identifiers where available, and use periodic reconciliation because notifications may not provide complete records or replace polling.
Schema and testing
Custom fields can vary between Close organizations. Maintain configurable mappings, tolerate optional fields, version transformations, and test authentication, pagination, rate limits, duplicate handling, relationship resolution, and schema changes before production deployment.
Observability
Capture object type, object ID, workflow correlation ID, retry count, and available request metadata without recording credentials or sensitive message content. Route permanent data errors to operational review.
Why use Martini instead of scripts or point-to-point integrations?
Beyond point-to-point scripts
Martini provides a maintainable workflow layer for Close CRM integrations instead of scattering API calls, credentials, mappings, and retry logic across scripts or individual application links.
- Consume Close REST APIs and receive selected webhook notifications through controlled workflows.
- Expose normalized APIs that shield other systems from Close-specific JSON schemas.
- Reuse mappings, validation, ownership rules, deduplication, checkpoints, and error handling across synchronization processes.
- Combine scheduled reconciliation with event-driven processing when webhook coverage is incomplete.
- Keep authentication and environment-specific configuration separate from integration logic.
- Support operational monitoring, controlled retries, and restartable data migrations.