Build powerful customer experience workflows with Jeem's suite of AI-powered tools. This documentation will guide you through setup, integration, and getting the most out of every product.
Jeem is a suite of four integrated products built by Extensya, designed to work together seamlessly:
Unified agent workspace for managing conversations, knowledge, and tickets.
AI automation layer that handles repetitive support requests and escalates complex ones.
Workflow system that tracks, organizes and routes customer requests across teams.
Interaction analytics engine that measures sentiment, satisfaction and drives actionable insights.
The products form a closed loop that continuously improves your customer experience:
All API requests are made to the following base URL:
https://api.jeem.ai/v1
Get up and running with Jeem in under 10 minutes. This guide walks you through creating an account, getting your API key, and making your first API call.
Sign up at dashboard.jeem.ai to access the Jeem platform. You'll receive a confirmation email with your workspace URL.
Navigate to Settings → API Keys in your dashboard. Create a new key and copy it — you'll need it for all API requests.
Test your connection by listing your workspace tickets:
curl https://api.jeem.ai/v1/tickets \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
Or using JavaScript:
const response = await fetch('https://api.jeem.ai/v1/tickets', {
headers: {
'Authorization': `Bearer ${process.env.JEEM_API_KEY}`,
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
Now that you're connected, dive deeper into each product:
Configure your agent workspace and channels.
Train and deploy your AI assistant.
All Jeem API endpoints require authentication. Include your API key in the Authorization header of every request.
Pass your API key as a Bearer token in the Authorization header:
You can create, rotate, and revoke API keys from your dashboard under Settings → API Keys. Each key can be scoped to specific products:
| Scope | Access | Description |
|---|---|---|
| desk:* | Full | Full access to Jeem Desk APIs |
| bot:* | Full | Full access to Jeem Bot APIs |
| ticket:read | Read only | Read-only access to tickets |
| sentiment:read | Read only | Read-only access to sentiment data |
API requests are rate-limited per API key. Limits vary by plan:
| Plan | Rate Limit | Burst |
|---|---|---|
| Starter | 100 req/min | 200 req/min |
| Enterprise | 1,000 req/min | 2,000 req/min |
X-RateLimit-Remaining and X-RateLimit-Reset.Jeem Desk is a unified agent workspace where your support team manages conversations, accesses knowledge, and resolves tickets — all from a single interface.
All customer channels (email, chat, social, phone) in a single view.
AI-powered search across your documentation, articles, and FAQs.
Real-time metrics on queue depth, response times, and resolution rates.
Internal notes, @mentions, and ticket transfers between agents.
import { JeemDesk } from '@jeem/desk-sdk';
const desk = new JeemDesk({
apiKey: process.env.JEEM_API_KEY,
workspace: 'your-workspace-id'
});
// List all open conversations
const conversations = await desk.conversations.list({
status: 'open',
limit: 25
});
// Assign a conversation to an agent
await desk.conversations.assign('conv_abc123', {
agentId: 'agent_xyz',
priority: 'high'
});
Jeem Bot is the AI automation layer that handles customer conversations autonomously. It resolves simple requests, escalates complex ones to Jeem Desk, and creates tickets in Jeem Ticket when needed.
| Parameter | Type | Description |
|---|---|---|
| message required | string | The customer's message text |
| context optional | object | Additional context about the customer (metadata, history) |
| language optional | string | Force response language (auto-detected if not set) |
curl -X POST https://api.jeem.ai/v1/bot/conversations/conv_123/messages \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"message": "I need help with my order",
"context": {
"customer_id": "cust_456",
"channel": "web_chat"
}
}'
Jeem Ticket is the workflow engine that tracks, organizes, and routes customer requests across teams and channels. It ensures no request falls through the cracks.
const ticket = await jeem.tickets.create({
subject: 'Order delivery delayed',
description: 'Customer reports 5-day delay on order #8821',
priority: 'high',
assignee_group: 'logistics',
customer_id: 'cust_456',
tags: ['delivery', 'escalation'],
sla: '4h'
});
console.log(ticket.id); // tkt_abc123
Jeem Ticket automatically routes tickets based on configurable rules: content analysis, customer tier, team availability, and SLA requirements. Configure routing rules in your dashboard or via the API.
Jeem Sentiment is the analytics layer that analyzes customer interactions across all channels to understand sentiment, satisfaction levels, and turn them into actionable steps.
const analysis = await jeem.sentiment.analyze({
conversation_id: 'conv_123',
include: ['sentiment', 'satisfaction', 'topics', 'agent_score']
});
// Response
{
sentiment: 'negative', // positive | neutral | negative
confidence: 0.92,
satisfaction: 2.1, // 1-5 scale
topics: ['billing', 'refund'],
agent_score: 4.3, // 1-5 scale
recommendations: [
'Offer proactive refund to prevent churn',
'Escalate to retention team'
]
}
Complete reference for all Jeem API endpoints. All endpoints use JSON request/response bodies and require Bearer token authentication.
Setup guide content coming soon.
Full API reference coming soon.
Setup guide content coming soon.
Full API reference coming soon.
Setup guide content coming soon.
Full API reference coming soon.
Setup guide content coming soon.
Full API reference coming soon.
Webhooks documentation coming soon.
Error codes reference coming soon.
SDK documentation coming soon.
Changelog coming soon.
Support page coming soon.