For Agents
Look up, create, and bulk-import retail customer records in Endear via REST endpoints, or run arbitrary queries against the GraphQL endpoint.
Use for: I need to import a CSV of new customers into Endear, Find a retail customer by ID in Endear, Create a customer record for a new in-store shopper, Update the email address on an existing customer profile
Not supported: Does not handle order processing, inventory, or marketing campaign sending - use for retail customer record management and clienteling lookups only.
Jentic publishes the only available OpenAPI specification for Endear API, keeping it validated and agent-ready. Endear is a retail-focused CRM and clienteling platform; the API exposes both a GraphQL endpoint for full schema access and a small REST surface for customer create, read, and bulk import operations. Retail teams use it to sync customer records from POS and e-commerce systems and to keep clientele data current. The API is ideal for agents that need to look up or update customer profiles tied to retail transactions.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Endear 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%2Fendearhq.com%2Fendear" | 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%2Fendearhq.com%2Fendear" | 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 Endear API.
Query customer records via the GraphQL endpoint for arbitrary field selection
List customers using the REST customers endpoint for simple integrations
Create or update a customer profile from a POS or e-commerce sync
Update an existing customer's attributes by ID
Bulk-import customer data from a CSV or external system
GET STARTED
Patterns agents use Endear API for, with concrete tasks.
★ POS-to-CRM Customer Sync
Push new customers captured at point-of-sale into Endear so the CRM stays current. POST /customers creates or updates a record idempotently, and POST /integration/import handles bulk batches at the end of a shift. Stores running on Shopify or Lightspeed can use this to mirror their customer database into Endear without manual export.
Import a JSON array of 250 new customer records from yesterday's POS export into Endear via the bulk import endpoint
Clienteling Lookup
When a sales associate asks 'what does this customer like?', an agent can call GET /customers/{id} to pull the customer profile and use the GraphQL endpoint to fetch related order history in a single round trip. This powers in-app recommendations during a store visit.
Look up customer with id 'cust_4821' and return their email, name, and the last five orders via a GraphQL query
Profile Maintenance
Use PUT /customers/{id} to update fields such as email, opt-in status, or store affiliation in response to a customer service event. This keeps the CRM accurate without requiring a full re-import.
Set the email_marketing_opt_in flag to false on customer id 'cust_889' and confirm the update
Agent-Driven Retail Workflow
An AI agent handling retail back-office tasks searches Jentic for 'create a retail customer', loads the Endear POST /customers schema, and executes the call. This lets the agent stitch together POS events, marketing platforms, and Endear without bespoke client code per integration.
On a new POS event, create the customer in Endear via POST /customers and store the returned id back on the order
6 endpoints — jentic publishes the only available openapi specification for endear api, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/graphql
GraphQL endpoint for queries and mutations
/customers
List customers
/customers
Create or update a customer
/customers/{id}
Get customer by ID
/customers/{id}
Update a customer
/integration/import
Bulk import customer data
/graphql
GraphQL endpoint for queries and mutations
/customers
List customers
/customers
Create or update a customer
/customers/{id}
Get customer by ID
/customers/{id}
Update a customer
/integration/import
Bulk import customer data
What agents get from Jentic-routed access to this vendor.
Setup
Wiring the Endear API by hand means choosing between its X-API-Key header and bearer auth, mixing REST customer routes with a /graphql endpoint, and building your own error handling against https://api.endearhq.com. Through Jentic you install once, import the Endear API from the API Directory, store the credential once, and your agent calls it.
Permission scoping
The Endear API puts the customer id in the URL path (/customers/{id}), so a rule can pin your agent to one customer record: it can read and update that customer and nothing else. You choose the operations it may call, so ones like creating customers or running an integration import are not included unless you add them.
Credential isolation
Your Endear credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'look up a retail customer record' or 'update a customer profile', and Jentic returns the matching Endear 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 Endear API through Jentic.
Why is there no official OpenAPI spec for Endear API?
Endear does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Endear API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.
What authentication does the Endear API use?
Endear supports both API key and bearer token authentication. Through Jentic, the credential is stored encrypted in the vault and supplied to the request only at execution time, so agents never see the raw token.
Can I bulk-import customers into Endear via the API?
Yes. POST /integration/import accepts batched customer data in a single call, suitable for nightly POS or e-commerce syncs. For one-off creates use POST /customers instead.
Does Endear expose a GraphQL API?
Yes. POST /graphql is a single endpoint that accepts both queries and mutations, giving the agent flexible field selection beyond what the REST customer endpoints expose.
What are the rate limits for the Endear API?
The OpenAPI spec does not declare rate limits. Treat as workspace-scoped and back off on HTTP 429 responses; check Endear's developer portal for the exact limit on your plan.
How do I sync POS customers into Endear through Jentic?
Run `pip install jentic`, then search 'import retail customers into endear'. Jentic returns POST /integration/import with its input schema; the agent supplies the customer batch and executes against base URL https://api.endearhq.com.
Can I limit what my agent is allowed to do with the Endear API?
Yes. Jentic One runs self-hosted, so your own rules decide which Endear operations the agent may call and which credential it uses. Because the Endear API carries the customer id in the URL path (/customers/{id}), you can pin the agent to reading and updating a single customer record with GET and PUT while excluding everything else. Operations like creating customers with POST /customers or running a bulk load through POST /integration/import are only available if you explicitly grant them.