Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the CRM Accounts 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://jentic.com/install.sh?src=apis&api=%2Fapis%2Fctt.pt%2Fctt" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fctt.pt%2Fctt" | 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 CRM Accounts API.
List all accounts in the CTT CRM
Read a single account by its party number
Create a new account record
Apply a partial update to an account
List and upload attachments on an account
GET STARTED
Read or remove a specific attachment on an account
Patterns agents use CRM Accounts API for, with concrete tasks.
★ Agent account maintenance
An AI agent connected through Jentic reads an account by its party number, applies a partial update such as a changed contact detail, and confirms the change, without a human opening the CRM. It can also create a new account record when one does not yet exist.
Read an account by its party number, apply a partial update to a contact field, and read it back to confirm
Document attachment management
A back-office workflow attaches supporting documents to an account, lists the existing attachments, and removes an outdated one. The CRM Accounts API exposes attachment operations under each account so an agent can keep an account's documents current.
Upload a document attachment to an account and then list its attachments to confirm it was stored
Account directory sync
A sync job lists all accounts to mirror the CRM directory into another system, then creates missing accounts as they appear. Listing accounts and creating new ones from the same API keeps the external copy aligned with the CTT CRM.
List all accounts and create any that are missing in the downstream system
8 endpoints — the ctt crm accounts api views, creates, and updates account records in the ctt crm, with each account identified by its party number.
METHOD
PATH
DESCRIPTION
/accounts
List all accounts
/accounts
Create an account
/accounts/{PartyNumber}
Get an account by party number
/accounts/{PartyNumber}
Apply a partial update to an account
/accounts/{PartyNumber}/child/Attachment
List attachments on an account
/accounts/{PartyNumber}/child/Attachment
Upload an attachment to an account
/accounts
List all accounts
/accounts
Create an account
/accounts/{PartyNumber}
Get an account by party number
/accounts/{PartyNumber}
Apply a partial update to an account
/accounts/{PartyNumber}/child/Attachment
List attachments on an account
/accounts/{PartyNumber}/child/Attachment
Upload an attachment to an account
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the CTT CRM Accounts API by hand means configuring client-id and client-secret credentials against the CRM REST host and learning the party-number account model with its attachment child resource. Through Jentic you install once, import the CTT CRM Accounts API from the API Directory, store the credentials once, and your agent calls it.
Permission scoping
The CTT CRM Accounts API carries the party number in the URL path for single-account operations, and rules bound which operations your agent may call. You choose the operations it may call, so it can read and list accounts without being able to create accounts or remove attachments unless you add those.
Credential isolation
Your CTT CRM client credentials are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'update a CRM account' or 'upload an attachment', and Jentic returns the matching CTT CRM operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using CRM Accounts API through Jentic.
What authentication does the CTT CRM Accounts API use?
The CTT CRM Accounts API is secured with client credentials, a client-id and client-secret pair sent with each request, per its OpenAPI spec. Through Jentic those credentials are stored once by your own self-hosted instance and injected when a call runs, so they never appear in the agent's prompt or logs.
Can I update an account with the CTT CRM Accounts API?
Yes. Read an account by its party number, then apply a partial update with the PATCH operation to change the fields you need. You can also create a new account or list all accounts from the same API.
Can I limit what my agent is allowed to do with the CTT CRM Accounts API?
Yes. Write a rule that allows only the operations the agent needs, for example reading and listing accounts, so it cannot create accounts or remove attachments, and every call it makes is logged. Add write operations only when the task requires them.
What are the rate limits for the CTT CRM Accounts API?
The OpenAPI spec does not specify rate limits. Check the CTT CRM integration documentation for current limits before running bulk account listing or sync jobs.
Is there a CTT CRM Accounts MCP server?
You don't need an MCP server to give your agent the CTT CRM Accounts API. Jentic connects it directly from the API Directory: import it, store the credentials once, and your agent calls the account and attachment operations on demand without loading another server's tool definitions into its context.
How do I update an account with the CTT CRM Accounts API through Jentic?
Search Jentic by intent such as 'update a CRM account', and Jentic returns the account update operation with its input schema so your agent passes the party number and changed fields. To run it on your own infrastructure, install Jentic One from its GitHub repo.
Know of an official OpenAPI document? Contribute it →
For Agents
View, create, and update CRM account records in the CTT CRM by party number, and list, upload, read, and remove attachments on an account.
Use for: List all accounts in the CRM, Get the account for this party number, Create a new account record, Update the details on this account
Not supported: Does not handle deals, pipelines, or email campaigns. Use for managing CTT CRM account records and their attachments only.
The CTT CRM Accounts API views, creates, and updates account records in the CTT CRM, with each account identified by its party number. It lists all accounts, reads a single account, creates a new one, and applies partial updates. Each account can also carry attachments: an agent can list, upload, read, and remove documents tied to an account. The API is served from the CTT CRM REST host and secured with client credentials.
This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.
Base layer of spec validity and structural soundness.
Aggregated quality score from linter diagnostics, weighted by severity.
Percentage of `$ref` references that resolve successfully.
Checks whether the API description parses successfully and conforms to its declared specification (e.g., OpenAPI).
Structural correctness score based on schema issues using logarithmic dampening.
Clarity, completeness, and ingestion readiness for developers and tooling.
How richly the API is illustrated with examples.
Percentage of examples that conform to their schemas.
Percentage of operations with complete response definitions (success, client error, server error).
Health of API ingestion, bundling, and resolution within Jentic pipelines.
Semantic breadth, depth, and agent comprehension for AI systems.
Coverage of descriptions across API elements.
Coverage of RFC 9457 Problem Details for error responses.
Coverage, uniqueness, and casing consistency of operationIds for AI inference.
Coverage of summaries across operations/tags/info.
Functional utility, complexity comfort, and AI orchestration readiness.
Agent comfort level based on API operational and structural complexity.
Trust, risk posture, and security compliance.
Average quality of security schemes based on authentication method strength (weakest link for OAuth2).
Findability, semantic richness, and reasoning readiness.
Clarity and depth of descriptions across API elements.
Score it yourself
Every API in the directory is allowlisted, so you can re-score it with no key required.
npx @jentic/api-scorecard-cli score <openapi-url>