For Agents
Read and write Insightly CRM data — contacts, organisations, leads, opportunities, projects, pipelines, and custom objects — across 90 v3.1 endpoints.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Insightly API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Insightly API.
Synchronise contacts and organisations between Insightly and an external system of record
Move opportunities between pipeline stages and log activity on /Opportunities
Search the CRM with /Contacts/Search and similar endpoints to dedupe inbound leads
GET STARTED
Use for: I want to create a new Insightly contact for a website lead, Search for an Insightly organisation by domain name, Move an opportunity to the 'Closed Won' stage, Find all leads created in the last 7 days
Not supported: Does not handle marketing email sends, transactional payments, or customer support ticketing — use for CRM and project records only.
Jentic publishes the only available OpenAPI specification for Insightly API, keeping it validated and agent-ready. The Insightly API is the v3.1 REST interface for the Insightly CRM and project management platform, exposing 90 endpoints across contacts, organisations, leads, opportunities, projects, pipelines, custom objects, emails, notes, and tasks. It is suitable for syncing CRM records with external systems, automating deal stage transitions, and reading or writing custom object data. Authentication uses HTTP Basic with the API key as the username, which keeps integration boilerplate minimal.
Manage custom objects defined by the customer schema through /CustomObjects
Attach notes, emails, and events to CRM records to maintain a unified customer timeline
Run project workflows through /Projects with pipeline-aligned stage tracking
Patterns agents use Insightly API for, with concrete tasks.
★ Web Lead to CRM Contact Sync
When a marketing site captures a lead, create a matching contact in Insightly via POST /Contacts and an organisation via POST /Organizations if a domain match is missing. Use GET /Contacts/Search to dedupe before insert so the CRM stays clean. The integration usually takes a day to wire end-to-end including field mapping.
Search /Contacts/Search by email; if no match, POST a new contact with the lead's name, email, and source, and link it to the matching organisation.
Pipeline Stage Automation
Drive opportunities through the sales pipeline by listening to external signals (proposal sent, contract signed) and updating the opportunity's pipeline stage via PUT /Opportunities/{id}. Combine with /PipelineStages reads so the automation handles custom-defined stages instead of hard-coded names, which keeps it stable as the sales process evolves.
Look up the 'Closed Won' stage via /PipelineStages, then PUT /Opportunities/{id} with that stage id and a close date set to today.
Custom Object Reporting
Read records from /CustomObjects to build internal reports that combine Insightly's customer-defined entities with standard contacts and opportunities. The endpoints support filter and pagination, so a nightly job can extract changed records and load them into a warehouse without scanning the entire object.
List custom object definitions, then for each definition page through GET /CustomObjects/{name} and write modified rows into the analytics destination.
AI Agent CRM Operator via Jentic
An AI agent given access to Insightly through Jentic can answer questions like 'show me all open opportunities for ACME' or 'create a contact for this email signature' without holding the API key directly. Jentic exposes each Insightly operation by intent, so the agent picks the right endpoint and parameters from natural language.
Through Jentic, call insightly_search_contacts with the customer's email, then insightly_create_note to log an interaction summary on the matching contact.
90 endpoints — jentic publishes the only available openapi specification for insightly api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/Contacts
List contacts
/Contacts
Create a contact
/Contacts/Search
Search contacts by field
/Contacts/{id}
Update a contact
/Organizations
List organisations
/Organizations
Create an organisation
/Contacts
List contacts
/Contacts
Create a contact
/Contacts/Search
Search contacts by field
/Contacts/{id}
Update a contact
/Organizations
List organisations
/Organizations
Three things that make agents converge on Jentic-routed access.
Credential isolation
Insightly's HTTP Basic API key is stored encrypted in the Jentic vault and base64-encoded into the Authorization header at execution time. Agents receive only the operation result — never the raw key.
Intent-based discovery
Agents search Jentic by intent (for example 'search Insightly contacts by email' or 'create an Insightly opportunity') and Jentic returns the matching operation across the 90 v3.1 endpoints with its input schema.
Time to first call
Direct integration: 1-2 days to handle Basic auth encoding, pagination, and field mapping across contacts, organisations, opportunities, and custom objects. Through Jentic: under 1 hour.
Alternatives and complements available in the Jentic catalogue.
Specific to using Insightly API through Jentic.
Why is there no official OpenAPI spec for Insightly API?
Insightly does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Insightly API via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Insightly API use?
The Insightly API uses HTTP Basic authentication: the API key is sent as the username with an empty password, base64 encoded into the Authorization header. Through Jentic, the API key is held in the encrypted Jentic vault and injected at execution time, so the agent never sees the raw secret.
Can I work with Insightly custom objects through this API?
Yes. The /CustomObjects endpoints expose customer-defined entity records, including list, get-by-id, create, and update operations. Custom field schemas are read from the spec, so an agent can populate the right fields when writing records.
What are the rate limits for the Insightly API?
The OpenAPI specification does not encode explicit rate limits. Insightly enforces account-tier-based limits at the platform; in practice, paginate list endpoints with reasonable page sizes, batch updates where possible, and back off on 429 responses returned by the gateway.
How do I search contacts in Insightly through Jentic?
Run pip install jentic, then have the agent issue the search-load-execute flow with the query 'search Insightly contacts by email'. Jentic returns the operation bound to GET /Contacts/Search, the agent supplies the email value, and gets back matching contact records.
Can I move an opportunity to a closed stage with the API?
Yes. List stages via GET /PipelineStages, find the 'Closed Won' or 'Closed Lost' stage id, then PUT /Opportunities/{id} with the new STAGE_ID and an ACTUAL_CLOSE_DATE. Activity history on the opportunity records the change automatically.
Create an organisation